void FUN_00420c94(int param_1,int param_2,int param_3)
{
char cVar1;
int iVar2;
undefined4 uVar3;
undefined1 auStack_60 [2];
short local_5e;
char *local_5c;
char local_58;
undefined1 auStack_54 [2];
short local_52;
char *local_50;
char local_4c;
undefined1 auStack_48 [8];
undefined2 local_40;
undefined1 auStack_3c [8];
undefined2 local_34;
int local_30;
int local_2c;
int local_28;
undefined4 local_24;
int local_20;
undefined1 local_1c;
local_30 = param_2 + 4;
local_28 = param_3 + -4;
local_24 = 0;
local_1c = 0;
local_2c = local_30;
local_20 = local_28;
/* try { // try from 00420cec to 00420e6b has its CatchHandler @ 00420e78 */
FUN_00405430(auStack_60,0x104a,&local_30,1);
local_58 = *local_5c;
if ((local_5e == 4) || (local_5e == 2)) {
local_58 = '\0';
}
if (local_58 == '\x10') {
FUN_00405430(auStack_54,0x1041,&local_30,1);
local_4c = *local_50;
if ((local_52 == 4) || (local_52 == 2)) {
local_4c = local_4c != '\0';
}
cVar1 = local_4c;
FUN_004076e4(auStack_48,0x1012,&local_30);
FUN_004076e4(auStack_3c,0x1053,&local_30);
FUN_00480710("WPS: SSR: selRegistrar=0x%x, devPwdId=0x%x, selRegConfigMethods=0x%x\n",cVar1,
local_40,local_34);
*(undefined1 *)(param_1 + 0x50) = 0;
iVar2 = FUN_00420724(param_1,"upnp:ssr");
if (iVar2 == 0x1001) {
uVar3 = 4;
if (cVar1 == '\0') {
uVar3 = 2;
}
*(undefined4 *)(param_1 + 0xc) = uVar3;
FUN_00424b64(*(undefined4 *)(param_1 + 0x28),3);
FUN_0041ecc0(param_1,*(char *)(*(int *)(param_1 + 0x20) + 0x68) == '\x02',cVar1,local_40,
local_34,*(undefined1 *)(*(int *)(param_1 + 0x20) + 0x69));
FUN_0041e880(param_1,2,*(undefined1 *)(*(int *)(param_1 + 0x20) + 0x68),cVar1,local_40,
local_34,*(undefined1 *)(*(int *)(param_1 + 0x20) + 0x69));
}
}
FUN_00414eac(&local_30);
return;
}