undefined4 Set_RFWrite_Proc(int param_1,char *param_2)
{
char cVar1;
char *pcVar2;
char *pcVar3;
uint uVar4;
int iVar5;
int iVar6;
int iVar7;
int iVar8;
int iVar9;
char *pcVar10;
int iVar11;
char *pcVar12;
pcVar2 = param_2;
while( true ) {
cVar1 = *pcVar2;
pcVar10 = pcVar2 + 1;
pcVar3 = pcVar10;
if (cVar1 == ':') break;
pcVar2 = pcVar2 + 1;
if (cVar1 == '\0') {
return 0;
}
}
while( true ) {
cVar1 = *pcVar3;
pcVar12 = pcVar3 + 1;
pcVar2 = pcVar12;
if (cVar1 == ':') break;
pcVar3 = pcVar3 + 1;
if (cVar1 == '\0') {
return 0;
}
}
while( true ) {
iVar11 = 0;
if (*pcVar2 == ':') break;
if (*pcVar2 == '\0') {
return 0;
}
pcVar2 = pcVar2 + 1;
}
do {
cVar1 = *param_2;
iVar5 = (int)cVar1;
iVar9 = iVar11 * 0x10;
if ((byte)(cVar1 + 0x9fU) < 6) {
iVar11 = iVar5 + -0x57 + iVar9;
}
else if ((byte)(cVar1 + 0xbfU) < 6) {
iVar11 = iVar5 + -0x37 + iVar9;
}
else {
if (9 < (byte)(cVar1 - 0x30U)) break;
iVar11 = iVar5 + -0x30 + iVar9;
}
param_2 = param_2 + 1;
} while( true );
iVar5 = 0;
do {
cVar1 = *pcVar10;
iVar6 = (int)cVar1;
iVar9 = iVar5 * 0x10;
if ((byte)(cVar1 + 0x9fU) < 6) {
iVar5 = iVar6 + -0x57 + iVar9;
}
else if ((byte)(cVar1 + 0xbfU) < 6) {
iVar5 = iVar6 + -0x37 + iVar9;
}
else {
if (9 < (byte)(cVar1 - 0x30U)) break;
iVar5 = iVar6 + -0x30 + iVar9;
}
pcVar10 = pcVar10 + 1;
} while( true );
iVar9 = 0;
do {
cVar1 = *pcVar12;
iVar7 = (int)cVar1;
iVar6 = iVar9 * 0x10;
if ((byte)(cVar1 + 0x9fU) < 6) {
iVar9 = iVar7 + -0x57 + iVar6;
}
else if ((byte)(cVar1 + 0xbfU) < 6) {
iVar9 = iVar7 + -0x37 + iVar6;
}
else {
if (9 < (byte)(cVar1 - 0x30U)) break;
iVar9 = iVar7 + -0x30 + iVar6;
}
pcVar12 = pcVar12 + 1;
} while( true );
iVar6 = 0;
while( true ) {
while( true ) {
while( true ) {
pcVar2 = pcVar2 + 1;
cVar1 = *pcVar2;
iVar8 = (int)cVar1;
iVar7 = iVar6 * 0x10;
if (5 < (byte)(cVar1 + 0x9fU)) break;
iVar6 = iVar8 + -0x57 + iVar7;
}
if (5 < (byte)(cVar1 + 0xbfU)) break;
iVar6 = iVar8 + -0x37 + iVar7;
}
if (9 < (byte)(cVar1 - 0x30U)) break;
iVar6 = iVar8 + -0x30 + iVar7;
}
if (*(char *)(param_1 + 0xec) == '\0') {
uVar4 = 0;
do {
if (-1 < *(int *)(*(int *)(param_1 + 0xdc) + 0x1020)) {
if (uVar4 < 100) {
*(int *)(*(int *)(param_1 + 0xdc) + 0x1020) = iVar11;
cVar1 = *(char *)(param_1 + 0x4bdd) //possible issue identified - semgrep
}
else {
cVar1 = *(char *)(param_1 + 0x4bdd) //possible issue identified - semgrep
}
goto LAB_00096730;
}
uVar4 = uVar4 + 1;
} while (uVar4 != 100);
cVar1 = *(char *)(param_1 + 0x4bdd) //possible issue identified - semgrep
}
else {
cVar1 = *(char *)(param_1 + 0x4bdd) //possible issue identified - semgrep
}
LAB_00096730:
if (cVar1 == '\0') {
cVar1 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
else {
printk("RF:%x\n",iVar11);
cVar1 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
if (cVar1 == '\0') {
uVar4 = 0;
do {
if (-1 < *(int *)(*(int *)(param_1 + 0xdc) + 0x1020)) {
if (uVar4 < 100) {
*(int *)(*(int *)(param_1 + 0xdc) + 0x1020) = iVar5;
cVar1 = *(char *)(param_1 + 0x4bdd) //possible issue identified - semgrep
}
else {
cVar1 = *(char *)(param_1 + 0x4bdd) //possible issue identified - semgrep
}
goto LAB_000967a8;
}
uVar4 = uVar4 + 1;
} while (uVar4 != 100);
cVar1 = *(char *)(param_1 + 0x4bdd) //possible issue identified - semgrep
}
else {
cVar1 = *(char *)(param_1 + 0x4bdd) //possible issue identified - semgrep
}
LAB_000967a8:
if (cVar1 == '\0') {
cVar1 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
else {
printk("RF:%x\n",iVar5);
cVar1 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
if (cVar1 == '\0') {
uVar4 = 0;
do {
if (-1 < *(int *)(*(int *)(param_1 + 0xdc) + 0x1020)) {
if (uVar4 < 100) {
*(int *)(*(int *)(param_1 + 0xdc) + 0x1020) = iVar9;
cVar1 = *(char *)(param_1 + 0x4bdd) //possible issue identified - semgrep
}
else {
cVar1 = *(char *)(param_1 + 0x4bdd) //possible issue identified - semgrep
}
goto LAB_00096820;
}
uVar4 = uVar4 + 1;
} while (uVar4 != 100);
cVar1 = *(char *)(param_1 + 0x4bdd) //possible issue identified - semgrep
}
else {
cVar1 = *(char *)(param_1 + 0x4bdd) //possible issue identified - semgrep
}
LAB_00096820:
if (cVar1 == '\0') {
cVar1 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
else {
printk("RF:%x\n",iVar9);
cVar1 = *(char *)(param_1 + 0xec) //possible issue identified - semgrep
}
if (cVar1 == '\0') {
uVar4 = 0;
do {
if (-1 < *(int *)(*(int *)(param_1 + 0xdc) + 0x1020)) {
if (uVar4 < 100) {
*(int *)(*(int *)(param_1 + 0xdc) + 0x1020) = iVar6;
cVar1 = *(char *)(param_1 + 0x4bdd) //possible issue identified - semgrep
}
else {
cVar1 = *(char *)(param_1 + 0x4bdd) //possible issue identified - semgrep
}
goto LAB_00096898;
}
uVar4 = uVar4 + 1;
} while (uVar4 != 100);
cVar1 = *(char *)(param_1 + 0x4bdd) //possible issue identified - semgrep
}
else {
cVar1 = *(char *)(param_1 + 0x4bdd) //possible issue identified - semgrep
}
LAB_00096898:
if (cVar1 != '\0') {
printk("RF:%x\n",iVar6);
}
return 1;
}