void FUN_00419948(int *param_1,int *param_2)
{
int iVar1;
int iVar2;
code *UNRECOVERED_JUMPTABLE_00;
if (*param_1 == 3) {
FUN_00483c90(param_2 + 1,param_1 + 2,6);
}
iVar2 = *param_1;
if (0x20 < iVar2) {
if (iVar2 == 0x21) {
UNRECOVERED_JUMPTABLE_00 = *(code **)(*param_2 + 0x10);
LAB_00419abc:
/* WARNING: Could not recover jumptable at 0x00419ac8. Too many branches */
/* WARNING: Treating indirect jump as call */
(*UNRECOVERED_JUMPTABLE_00)(param_2);
return;
}
if (iVar2 != 0x23) {
return;
}
param_2[0xd] = 8;
UNRECOVERED_JUMPTABLE_00 = *(code **)(*param_2 + 4);
iVar2 = param_1[1] + -0x12;
param_1 = param_1 + 8;
goto LAB_00419ae8;
}
if ((iVar2 < 0x1f) && (iVar2 != 0x13)) {
if (iVar2 == 0x17) {
UNRECOVERED_JUMPTABLE_00 = *(code **)*param_2;
goto LAB_00419abc;
}
if (iVar2 != 3) {
return;
}
}
iVar1 = 6;
if (iVar2 == 0x13) {
LAB_00419a74:
param_2[0xd] = iVar1;
}
else if (iVar2 < 0x14) {
iVar1 = 4;
if (iVar2 == 2) goto LAB_00419a74;
if (iVar2 == 3) {
param_2[0xd] = 2;
}
else {
if (iVar2 != 1) {
return;
}
param_2[0xd] = 1;
}
}
else if (iVar2 < 0x22) {
iVar1 = 8;
if (0x1f < iVar2) goto LAB_00419a74;
if (iVar2 != 0x1f) {
return;
}
param_2[0xd] = 7;
}
else {
if (iVar2 != 0x23) {
return;
}
param_2[0xd] = 8;
}
UNRECOVERED_JUMPTABLE_00 = *(code **)(*param_2 + 4);
iVar2 = param_1[1];
param_1 = (int *)((int)param_1 + 0xe);
LAB_00419ae8:
/* WARNING: Could not recover jumptable at 0x00419af4. Too many branches */
/* WARNING: Treating indirect jump as call */
(*UNRECOVERED_JUMPTABLE_00)(param_2,iVar2,param_1);
return;
}