int FUN_00420724(int param_1,int param_2)
{
int iVar1;
undefined4 uVar2;
undefined4 uVar3;
char *pcVar4;
uint uVar5;
int iVar6;
char local_50 [4];
undefined4 local_4c;
undefined1 auStack_48 [24];
undefined1 auStack_30 [28];
FUN_004057a4(auStack_48);
/* try { // try from 0042076c to 00420773 has its CatchHandler @ 00420b98 */
FUN_004057a4(auStack_30);
local_50[0] = '\0';
iVar6 = 0x1004;
if ((*(char *)(param_1 + 8) == '\0') || (iVar6 = 0x1005, param_2 == 0)) goto LAB_00420b4c;
uVar5 = 0;
if (*(char *)(param_1 + 0x46) == '\0') {
iVar6 = FUN_00483d20(param_2,"eap:registrar");
uVar5 = 1;
if (iVar6 != 0) {
iVar6 = FUN_00483d20(param_2,"eap:enrollee");
uVar5 = 2;
if (iVar6 != 0) {
iVar6 = FUN_00483d20(param_2,"upnp:gdi");
if (iVar6 == 0) {
uVar5 = 1;
}
else {
iVar6 = FUN_00483d20(param_2,"upnp:ssr");
if (iVar6 == 0) {
uVar5 = 4;
}
else {
iVar6 = FUN_00483d20(param_2,"int:pin");
uVar5 = 4;
if (iVar6 != 0) {
iVar6 = FUN_00483d20(param_2,"int:pbc");
uVar5 = 0;
if (iVar6 == 0) {
uVar5 = 4;
}
}
}
}
}
}
iVar1 = FUN_0041cd50(param_1,uVar5,local_50);
iVar6 = 0x100d;
if (iVar1 != 0x1001) goto LAB_00420b4c;
}
if (local_50[0] != '\0') {
/* try { // try from 00420898 to 00420b0f has its CatchHandler @ 00420b24 */
FUN_0041f058(param_1);
}
iVar6 = FUN_00424150(*(undefined4 *)(param_1 + 0x20),*(undefined4 *)(param_1 + 4));
if (iVar6 != 0x1001) {
FUN_00480770(PTR_DAT_004b76b8,"%s: Config info not setup!\n","StartStack");
iVar6 = 0x4004;
goto LAB_00420b4c;
}
pcVar4 = (char *)(*(int *)(param_1 + 0x20) + 0x403);
if (*(char *)(*(int *)(param_1 + 0x20) + 0x403) == '\0') {
pcVar4 = "/var/run/wps_inbeap_usocket";
}
FUN_004248f4(*(undefined4 *)(param_1 + 0x28),pcVar4);
pcVar4 = (char *)(*(int *)(param_1 + 0x20) + 0x483);
if (*(char *)(*(int *)(param_1 + 0x20) + 0x483) == '\0') {
pcVar4 = "/var/run/wps_inbwlan_usocket";
}
FUN_00424860(*(undefined4 *)(param_1 + 0x28),pcVar4);
pcVar4 = (char *)(*(int *)(param_1 + 0x20) + 0x503);
if (*(char *)(*(int *)(param_1 + 0x20) + 0x503) == '\0') {
pcVar4 = "/var/run/wps_inbwlan_beaconie";
}
FUN_004247cc(*(undefined4 *)(param_1 + 0x28),pcVar4);
pcVar4 = (char *)(*(int *)(param_1 + 0x20) + 0x583);
if (*(char *)(*(int *)(param_1 + 0x20) + 0x583) == '\0') {
pcVar4 = "/var/run/wps_inbwlan_proberespie";
}
FUN_00424738(*(undefined4 *)(param_1 + 0x28),pcVar4);
iVar6 = FUN_00412f88(*(undefined4 *)(param_1 + 0x24),&local_4c,auStack_48,
*(char *)(param_1 + 0x46) != '\0');
if (iVar6 != 0x1001) goto LAB_00420b4c;
FUN_0040a7cc(*(undefined4 *)(param_1 + 0x24),auStack_48,auStack_30);
FUN_00421960(*(undefined4 *)(param_1 + 0x20),local_4c);
iVar1 = FUN_00424050(*(undefined4 *)(param_1 + 0x20),auStack_48);
if ((iVar1 != 0x1001) ||
(iVar1 = FUN_00423ff4(*(undefined4 *)(param_1 + 0x20),auStack_30), iVar1 != 0x1001)) {
iVar6 = 0x1003;
goto LAB_00420b4c;
}
if (*(char *)(param_1 + 0x46) != '\0') {
uVar2 = FUN_00401fb4(0,0,FUN_00421770,param_1);
*(undefined4 *)(param_1 + 0x10) = uVar2;
goto LAB_00420b4c;
}
if (uVar5 == 2) {
LAB_00420af8:
uVar2 = FUN_00401fb4(0,0,FUN_00421958,param_1);
uVar3 = 2;
}
else {
if (uVar5 < 3) {
if (uVar5 != 1) goto LAB_00420b4c;
}
else if (uVar5 != 3) {
if (uVar5 != 4) goto LAB_00420b4c;
goto LAB_00420af8;
}
uVar2 = FUN_00401fb4(0,0,FUN_00421950,param_1);
uVar3 = 1;
}
*(undefined4 *)(param_1 + 0xc) = uVar3;
*(undefined4 *)(param_1 + 0x10) = uVar2;
LAB_00420b4c:
FUN_00414eac(auStack_30);
FUN_00414eac(auStack_48);
return iVar6;
}