Function at 0x4fbb00
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x3c
mov eax, dword [0x704034]
xor eax, esp
mov dword [esp + 0x38], eax
cmp byte [edx + 0x6c5fa8], 0
mov eax, dword [ebp + 0x10]
push ebx
mov ebx, dword [ecx]
push esi
mov esi, dword [ebp + 0x14]
push edi
mov edi, dword [ebp + 0xc]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], ecx
mov dword [esp + 0xc], edi
jne 0x4fbb58
cmp ebx, dword [ecx + 0x4b8]
jb 0x4fbb58
call fcn.004fba50
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x38]
xor ecx, esp
call fcn.0062063b
mov esp, ebp
pop ebp
ret
cmp edx, 0x142
ja case.0x4fbb64.216
jmp dword [edx*4 + 0x4fdcfc]
mov byte [edi + 0xc7], 1
jmp case.0x4fbb64.216
mov byte [edi + 0xc7], 2
jmp case.0x4fbb64.216
mov ecx, edi
call fcn.004bce80
jmp case.0x4fbb64.216
mov edx, dword [ebx - 8]
mov ecx, edi
call fcn.004c3380
jmp case.0x4fbb64.216
mov dword [ebx + 0x10], 7
jmp case.0x4fbb64.216
movzx eax, word [ebx + 2]
mov dword [ebx + 4], eax
jmp case.0x4fbb64.216
movzx edx, word [ebx - 0xa]
mov ecx, edi
call fcn.004c3500
jmp case.0x4fbb64.216
lea eax, [ebx + 4]
xor edx, edx
push eax
mov ecx, edi
call fcn.004c3570
add esp, 4
jmp case.0x4fbb64.216
lea eax, [ebx + 4]
mov edx, 1
push eax
mov ecx, edi
call fcn.004c3570
add esp, 4
jmp case.0x4fbb64.216
lea eax, [ebx + 4]
mov edx, 2
push eax
mov ecx, edi
call fcn.004c3570
add esp, 4
jmp case.0x4fbb64.216
push dword [ebx - 0x14]
lea eax, [ebx + 4]
mov ecx, edi
push 0
push 0
push dword [ebx - 0x2c]
lea edx, [ebx - 8]
push eax
call fcn.004be440
add esp, 0x14
jmp case.0x4fbb64.216
mov eax, dword [edi]
inc byte [edi + 0x18]
inc dword [eax + 0x118]
jmp case.0x4fbb64.216
mov dword [ebx - 0x14], 1
jmp case.0x4fbb64.216
mov dword [ebx + 4], 1
jmp case.0x4fbb64.216
movzx eax, byte [ebx + 4]
lea edx, [ebx - 0x14]
push 0
push eax
lea eax, [ebx - 8]
mov ecx, edi
push eax
call fcn.004bff30
add esp, 0xc
jmp case.0x4fbb64.216
push dword [ebx + 4]
xor edx, edx
mov ecx, edi
push 0
push 0
call fcn.004bff30
mov edx, dword [ebx + 4]
add esp, 0xc
test edx, edx
je case.0x4fbb64.216
mov ecx, dword [edi]
push 1
call fcn.004d5d70
add esp, 4
jmp case.0x4fbb64.216
mov esi, dword [ebx + 8]
cmp esi, 5
jne 0x4fbcc8
push esi
push 0x70a8d4
push dword [ebx + 4]
call fcn.0047b3d0
add esp, 0xc
test eax, eax
jne 0x4fbcc8
mov dword [ebx - 8], 0x60
jmp case.0x4fbb64.216
push dword [ebx + 4]
mov dword [ebx - 8], 0
push esi
push 0x70a900
push edi
call fcn.0047b1c0
add esp, 0x10
jmp case.0x4fbb64.216
lea eax, [ebx + 4]
mov ecx, edi
push eax
lea edx, [ebx - 8]
call fcn.004be8a0
add esp, 4
jmp case.0x4fbb64.216
mov dword [ebx + 0x14], 0
mov dword [ebx + 0x10], 0
jmp case.0x4fbb64.216
mov eax, dword [ebx + 8]
sub eax, dword [ebx - 0x20]
add eax, dword [ebx + 4]
mov dword [ebx - 0x1c], eax
jmp case.0x4fbb64.216
mov eax, dword [ebx + 8]
sub eax, dword [ebx - 0x38]
add eax, dword [ebx + 4]
mov dword [ebx - 0x34], eax
jmp case.0x4fbb64.216
mov eax, dword [ebx + 8]
sub eax, dword [ebx - 8]
add eax, dword [ebx + 4]
mov dword [ebx - 4], eax
jmp case.0x4fbb64.216
mov dword [ebx + 0x10], eax
mov dword [ebx + 0x14], esi
jmp case.0x4fbb64.216
mov eax, dword [ebx + 4]
mov dword [edi + 0x48], eax
mov eax, dword [ebx + 8]
mov dword [edi + 0x4c], eax
jmp case.0x4fbb64.216
mov ecx, dword [ebx - 8]
mov eax, dword [ebx - 4]
mov edx, dword [ebx + 4]
add eax, ecx
push eax
push ecx
mov ecx, edi
call fcn.004bec40
add esp, 8
jmp case.0x4fbb64.216
mov eax, dword [ebx - 0x14]
mov ecx, edi
push dword [ebx + 4]
mov edx, dword [ebx - 8]
inc eax
push eax
call fcn.004bec40
add esp, 8
jmp case.0x4fbb64.216
mov eax, dword [ebx - 8]
mov ecx, edi
add eax, dword [ebx - 4]
mov edx, dword [ebx + 4]
push eax
push dword [ebx - 0x14]
call fcn.004bec40
add esp, 8
jmp case.0x4fbb64.216
push 0
push dword [ebx + 4]
mov edx, 0xa8
mov ecx, edi
call fcn.004affe0
mov ecx, dword [ebx - 8]
mov edx, eax
add ecx, dword [ebx - 4]
push ecx
push dword [ebx - 0x14]
mov ecx, edi
call fcn.004bec40
add esp, 0x10
jmp case.0x4fbb64.216
push dword [ebx + 8]
mov edx, 0x71
mov ecx, edi
push dword [ebx + 4]
call fcn.004fb660
mov esi, eax
add esp, 8
test esi, esi
je 0x4fbdfe
mov ecx, esi
call fcn.004b17e0
mov edx, dword [ebx + 4]
mov ecx, dword [ebx + 8]
add ecx, edx
push ecx
push edx
mov edx, esi
mov ecx, edi
call fcn.004bec40
add esp, 8
jmp case.0x4fbb64.216
mov edx, dword [ebx + 4]
mov ecx, edi
call fcn.004beab0
jmp case.0x4fbb64.216
push dword [ebx - 0x14]
xor edx, edx
mov ecx, edi
push dword [ebx + 4]
push dword [ebx - 8]
call fcn.004bee10
add esp, 0xc
jmp case.0x4fbb64.216
push 1
push 0
push 0
push 0
push 0
push dword [ebx + 4]
push 0
push 0
push 0
xor edx, edx
mov ecx, edi
call fcn.004c1b70
add esp, 0x24
jmp case.0x4fbb64.216
mov edx, dword [ebx - 8]
mov ecx, edi
call fcn.004bf060
jmp case.0x4fbb64.216
push dword [ebx + 4]
lea eax, [ebx - 0x14]
xor edx, edx
push dword [ebx - 8]
mov ecx, edi
push eax
call fcn.004c1250
add esp, 0xc
jmp case.0x4fbb64.216
mov eax, dword [edi + 0xe4]
test eax, eax
je case.0x4fbb64.216
mov ecx, dword [eax + 0x10]
test ecx, ecx
je case.0x4fbb64.216
mov al, byte [ebx + 4]
mov byte [ecx + 0x18], al
jmp case.0x4fbb64.216
lea edx, [ebx + 4]
mov ecx, edi
call fcn.004bf0e0
jmp case.0x4fbb64.216
mov eax, dword [ebx + 8]
not eax
and eax, dword [ebx - 8]
or eax, dword [ebx + 4]
mov dword [ebx - 8], eax
jmp case.0x4fbb64.216
mov dword [ebx - 8], 0
mov dword [ebx - 4], 0
jmp case.0x4fbb64.216
mov dword [ebx - 0x14], 0
mov dword [ebx - 0x10], 0
jmp case.0x4fbb64.216
mov eax, dword [ebx + 4]
mov dword [ebx - 0x14], eax
mov dword [ebx - 0x10], 0xff
jmp case.0x4fbb64.216
mov eax, dword [ebx + 4]
shl eax, 8
mov dword [ebx - 0x14], eax
mov dword [ebx - 0x10], 0xff00
jmp case.0x4fbb64.216
mov dword [ebx - 8], 8
jmp case.0x4fbb64.216
mov dword [ebx - 8], 9
jmp case.0x4fbb64.216
mov dword [ebx + 4], 0xa
jmp case.0x4fbb64.216
mov dword [ebx + 4], 7
jmp case.0x4fbb64.216
mov dword [ebx - 8], 0
jmp case.0x4fbb64.216
mov dword [ebx - 0x14], 0
jmp case.0x4fbb64.216
mov dword [ebx - 8], 1
jmp case.0x4fbb64.216
mov dword [edi + 0x4c], 0
jmp case.0x4fbb64.216
mov edx, dword [ebx - 0x20]
mov ecx, edi
push 0
push dword [ebx - 0x14]
push dword [ebx + 4]
call fcn.004bee10
add esp, 0xc
jmp case.0x4fbb64.216
push 1
push 0
push 0
push 0
push 0
push dword [ebx + 4]
push dword [ebx - 0x14]
jmp 0x4fbe51
mov edx, dword [ebx - 0x14]
mov ecx, edi
call fcn.004bf060
jmp case.0x4fbb64.216
push dword [ebx - 8]
mov edx, dword [ebx - 0x44]
lea eax, [ebx - 0x20]
push dword [ebx - 0x14]
mov ecx, edi
push eax
call fcn.004c1250
mov ecx, dword [edi + 0xe4]
add esp, 0xc
test ecx, ecx
je case.0x4fbb64.216
mov ecx, dword [ecx + 0x10]
test ecx, ecx
je case.0x4fbb64.216
mov al, byte [ebx + 4]
mov byte [ecx + 0x18], al
jmp case.0x4fbb64.216
mov dword [ebx + 0x10], 0xb
jmp case.0x4fbb64.216
mov dword [ebx + 4], 4
jmp case.0x4fbb64.216
mov dword [ebx + 4], 5
jmp case.0x4fbb64.216
push dword [ebx - 8]
mov edx, dword [ebx + 4]
mov ecx, edi
push 0
call fcn.004c0fa0
add esp, 8
jmp case.0x4fbb64.216
push dword [ebx - 0x38]
lea eax, [ebx - 0x20]
mov ecx, edi
push dword [ebx - 0x50]
lea edx, [ebx - 0x5c]
push dword [ebx + 4]
push dword [ebx - 0x14]
push eax
lea eax, [ebx - 0x2c]
push eax
call fcn.004c03b0
add esp, 0x18
jmp case.0x4fbb64.216
push dword [ebx - 8]
mov edx, dword [ebx + 4]
mov ecx, edi
push 1
call fcn.004c0fa0
add esp, 8
jmp case.0x4fbb64.216
mov edx, dword [ebx + 4]
lea eax, [esp + 0x24]
xorps xmm0, xmm0
mov byte [esp + 0x24], 9
push eax
mov ecx, edi
mov dword [esp + 0x3c], 0
movups xmmword [esp + 0x2c], xmm0
call fcn.004de5b0
mov edx, dword [ebx + 4]
add esp, 4
test edx, edx
je case.0x4fbb64.216
mov ecx, dword [edi]
push 1
call fcn.004d5d70
add esp, 4
jmp case.0x4fbb64.216
mov esi, dword [ebx + 4]
test esi, esi
je 0x4fc0d5
mov eax, dword [ebx - 8]
mov edx, esi
mov ecx, edi
mov dword [esi + 0x40], eax
call fcn.004fb610
mov dword [ebx - 0x14], esi
jmp case.0x4fbb64.216
mov edx, dword [ebx - 8]
mov ecx, dword [edi]
call fcn.004c4370
mov dword [ebx - 0x14], esi
jmp case.0x4fbb64.216
mov esi, dword [ebx + 4]
test esi, esi
je 0x4fc105
mov eax, dword [ebx - 8]
mov edx, esi
mov ecx, edi
mov dword [esi + 0x40], eax
call fcn.004fb610
mov dword [ebx - 0x20], esi
jmp case.0x4fbb64.216
mov edx, dword [ebx - 8]
mov ecx, dword [edi]
call fcn.004c4370
mov dword [ebx - 0x20], esi
jmp case.0x4fbb64.216
mov esi, dword [ebx + 4]
test esi, esi
je 0x4fc127
mov edx, esi
mov ecx, edi
call fcn.004fb610
mov dword [ebx + 4], esi
jmp case.0x4fbb64.216
mov esi, dword [ebx + 4]
mov ecx, dword [ebx - 0x14]
mov dword [esp + 0x10], ecx
test esi, esi
je 0x4fc22a
cmp dword [esi + 0x34], 0
je 0x4fc1f6
mov edx, esi
mov ecx, edi
call fcn.004fb610
mov eax, dword [edi]
xor edx, edx
push 0
push 0
mov ecx, edi
mov dword [esp + 0x14], eax
call fcn.004c2eb0
mov ecx, eax
add esp, 8
mov dword [esp + 0x18], ecx
test ecx, ecx
jne 0x4fc193
mov ecx, dword [esp + 0xc]
xor edx, edx
call fcn.004c2bc0
mov ecx, dword [esp + 0xc]
mov edx, esi
push 1
call fcn.004d5d70
add esp, 4
xor ecx, ecx
jmp 0x4fc1d7
cmp byte [edi + 0xc8], 2
mov eax, dword [ecx]
lea eax, [eax + eax*8]
lea eax, [eax - 8]
lea eax, [ecx + eax*8]
mov dword [esp + 0xc], eax
jb 0x4fc1c6
mov edx, dword [eax + 8]
test edx, edx
je 0x4fc1c6
push 0
mov ecx, edi
call fcn.004b87a0
mov ecx, dword [esp + 0x1c]
add esp, 4
mov eax, dword [esp + 0xc]
mov dword [eax + 0x14], esi
mov dword [eax + 0x30], 0
mov dword [eax + 0x34], 0
push 0
push 0
push 0
push 0
push 0
push 0
push ecx
xor edx, edx
mov ecx, edi
call fcn.004d5ed0
mov ecx, dword [esp + 0x2c]
add esp, 0x1c
mov esi, eax
test esi, esi
je 0x4fc22a
mov al, byte [ebx - 8]
mov byte [esi + 4], al
mov dword [esi + 0x34], ecx
test ecx, ecx
je 0x4fc20e
and dword [ecx + 8], 0xfffffbff
and dword [esi + 8], 0xfffffbff
cmp dword [ebx - 8], 0x83
je 0x4fc23c
mov byte [edi + 0x16], 1
mov dword [ebx - 0x14], esi
jmp case.0x4fbb64.216
test ecx, ecx
je 0x4fc23c
mov edx, ecx
mov ecx, dword [edi]
push 1
call fcn.004d5d70
add esp, 4
mov dword [ebx - 0x14], esi
jmp case.0x4fbb64.216
mov dword [ebx - 8], 0x83
jmp case.0x4fbb64.216
push dword [ebx + 4]
mov edx, dword [ebx - 0x44]
mov ecx, edi
push dword [ebx - 0x50]
push dword [ebx - 8]
push dword [ebx - 0x14]
push dword [ebx - 0x20]
push dword [ebx - 0x2c]
push dword [ebx - 0x38]
call fcn.004d5ed0
add esp, 0x1c
mov dword [ebx - 0x5c], eax
jmp case.0x4fbb64.216
push dword [ebx + 4]
mov edx, dword [ebx - 0x50]
mov ecx, edi
push dword [ebx - 0x5c]
push dword [ebx - 8]
push dword [ebx - 0x20]
push dword [ebx - 0x2c]
push dword [ebx - 0x38]
push dword [ebx - 0x44]
call fcn.004d5ed0
add esp, 0x1c
mov dword [ebx - 0x68], eax
test eax, eax
je 0x4fc2ae
mov ecx, dword [ebx - 0x14]
mov dword [eax + 0x48], ecx
jmp case.0x4fbb64.216
mov edx, dword [ebx - 0x14]
mov ecx, dword [edi]
call fcn.004f6860
jmp case.0x4fbb64.216
mov edx, dword [ebx - 8]
mov ecx, edi
push 0
push 0x200
push 0
push 0
push 0
push 0
push 0
call fcn.004d5ed0
add esp, 0x1c
mov dword [ebx - 0x20], eax
jmp case.0x4fbb64.216
mov edx, dword [ebx - 8]
mov ecx, edi
mov esi, dword [ebx - 0x2c]
push 0
push 0x600
push 0
push 0
push 0
push 0
push 0
call fcn.004d5ed0
add esp, 0x1c
test esi, esi
je 0x4fc30f
and dword [esi + 8], 0xfffffbff
test eax, eax
je 0x4fce7c
mov byte [eax + 4], 0x83
mov dword [eax + 0x34], esi
jmp 0x4fd9e0
mov dword [ebx + 4], 2
jmp case.0x4fbb64.216
push dword [ebx - 0x14]
mov edx, dword [ebx - 0x2c]
mov ecx, edi
call fcn.004b1210
add esp, 4
mov dword [ebx - 0x2c], eax
cmp dword [ebx + 8], 0
jbe 0x4fc35a
lea ecx, [ebx + 4]
mov edx, eax
push 1
push ecx
mov ecx, edi
call fcn.004b14a0
add esp, 8
push dword [ebx - 8]
mov edx, dword [ebx - 0x2c]
mov ecx, edi
push dword [ebx - 0x20]
call fcn.004b1540
add esp, 8
jmp case.0x4fbb64.216
mov ecx, dword [edi]
lea eax, [esp + 0x3c]
push 0
push eax
mov edx, 0xaf
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
call fcn.004afe20
mov edx, dword [ebx - 0x14]
mov ecx, edi
push eax
call fcn.004b1210
add esp, 0xc
mov dword [ebx - 0x14], eax
jmp case.0x4fbb64.216
push 0
push 0
mov edx, 0xaf
mov ecx, edi
call fcn.004affe0
lea ecx, [ebx - 0x14]
mov edx, 0x3b
push 1
push ecx
mov ecx, dword [edi]
mov esi, eax
call fcn.004afe20
push esi
push eax
mov edx, 0x89
mov ecx, edi
call fcn.004affe0
mov edx, dword [ebx - 0x2c]
mov ecx, edi
push eax
call fcn.004b1210
add esp, 0x1c
jmp 0x4fd9e0
mov eax, dword [ebx + 4]
mov dword [ebx - 8], eax
mov eax, dword [ebx + 8]
mov dword [ebx - 4], eax
jmp case.0x4fbb64.216
mov ecx, dword [edi]
push 0
push 0x50
call fcn.00477f70
add esp, 8
mov dword [ebx + 0x10], eax
jmp case.0x4fbb64.216
mov ecx, dword [ebx + 4]
mov dword [ebx - 8], ecx
call fcn.004c3350
jmp case.0x4fbb64.216
mov edx, dword [ebx - 8]
test edx, edx
je case.0x4fbb64.216
mov eax, dword [edx]
test eax, eax
jle case.0x4fbb64.216
lea ecx, [eax + eax*8]
mov al, byte [ebx + 4]
mov byte [edx + ecx*8 - 0x1c], al
jmp case.0x4fbb64.216
push dword [ebx + 4]
mov edx, dword [ebx - 0x44]
lea eax, [ebx - 0x20]
push dword [ebx - 8]
mov ecx, edi
push 0
push eax
lea eax, [ebx - 0x2c]
push eax
lea eax, [ebx - 0x38]
push eax
call fcn.004c31f0
lea ecx, [ebx - 0x14]
mov dword [ebx - 0x44], eax
push ecx
mov edx, eax
mov ecx, edi
call fcn.004c32e0
add esp, 0x1c
jmp case.0x4fbb64.216
push dword [ebx + 4]
mov edx, dword [ebx - 0x5c]
lea eax, [ebx - 0x14]
push dword [ebx - 8]
mov ecx, edi
push 0
push eax
lea eax, [ebx - 0x44]
push eax
lea eax, [ebx - 0x50]
push eax
call fcn.004c31f0
push dword [ebx - 0x2c]
mov edx, eax
mov dword [ebx - 0x5c], eax
mov ecx, edi
call fcn.004c3320
add esp, 0x1c
jmp case.0x4fbb64.216
push dword [ebx + 4]
push dword [ebx - 8]
push dword [ebx - 0x2c]
mov edx, dword [ebx - 0x44]
lea eax, [ebx - 0x14]
push eax
push 0
push 0
mov ecx, edi
call fcn.004c31f0
add esp, 0x18
mov dword [ebx - 0x44], eax
jmp case.0x4fbb64.216
mov edx, dword [ebx - 0x44]
test edx, edx
jne 0x4fc4fd
cmp dword [ebx - 0x10], edx
jne 0x4fc4fd
cmp dword [ebx - 8], edx
jne 0x4fc4fd
cmp dword [ebx + 4], edx
jne 0x4fc4fd
mov eax, dword [ebx - 0x2c]
mov dword [ebx - 0x44], eax
jmp case.0x4fbb64.216
mov ecx, dword [ebx - 0x2c]
cmp dword [ecx], 1
jne 0x4fc581
push dword [ebx + 4]
lea eax, [ebx - 0x14]
mov ecx, edi
push dword [ebx - 8]
push 0
push eax
push 0
push 0
call fcn.004c31f0
add esp, 0x18
mov dword [ebx - 0x44], eax
test eax, eax
je 0x4fc572
mov ecx, dword [eax]
lea ecx, [ecx + ecx*8]
lea edx, [eax + ecx*8]
mov ecx, dword [ebx - 0x2c]
mov eax, dword [ecx + 0x10]
mov dword [edx - 0x38], eax
mov eax, dword [ecx + 0xc]
mov dword [edx - 0x3c], eax
mov eax, dword [ecx + 0x1c]
mov dword [edx - 0x2c], eax
test byte [ecx + 0x30], 4
je 0x4fc55d
mov eax, dword [ecx + 0x48]
mov dword [edx], eax
and dword [ecx + 0x30], 0xfffffffb
mov dword [ecx + 0x48], 0
or dword [edx - 0x18], 4
mov dword [ecx + 0xc], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x1c], 0
mov edx, dword [ebx - 0x2c]
mov ecx, dword [edi]
call fcn.004c2fd0
jmp case.0x4fbb64.216
call fcn.004c3350
push 0
push 0x800
push 0
push 0
push 0
push 0
push dword [ebx - 0x2c]
xor edx, edx
mov ecx, edi
call fcn.004d5ed0
add esp, 0x1c
push dword [ebx + 4]
push dword [ebx - 8]
push eax
jmp 0x4fc4bf
mov dword [ebx + 0x10], 0
mov dword [ebx + 0x14], 0
jmp case.0x4fbb64.216
mov eax, dword [edi]
mov ecx, eax
push 0
push 0x50
mov dword [esp + 0x18], eax
call fcn.00478070
mov esi, eax
add esp, 8
mov dword [esp + 0x18], esi
test esi, esi
je 0x4fc627
push 0x48
lea eax, [esi + 8]
mov dword [esi + 4], 1
push 0
push eax
mov dword [esi], 1
call fcn.00639370
mov ecx, dword [esp + 0x1c]
lea edx, [ebx + 4]
mov dword [esi + 0x34], 0xffffffff
add esp, 0xc
mov eax, dword [esi]
lea eax, [eax + eax*8]
lea esi, [esi + eax*8]
call fcn.004be070
mov dword [esi - 0x38], eax
mov dword [esi - 0x3c], 0
mov esi, dword [esp + 0x18]
cmp byte [edi + 0xc8], 2
jb 0x4fc645
test esi, esi
je 0x4fc645
mov edx, dword [esi + 0x10]
lea eax, [ebx + 4]
push eax
mov ecx, edi
call fcn.004b87a0
add esp, 4
mov dword [ebx + 4], esi
jmp case.0x4fbb64.216
lea ecx, [ebx + 4]
xor edx, edx
push ecx
lea eax, [ebx - 0x14]
mov ecx, edi
push eax
call fcn.004c2eb0
add esp, 8
mov esi, eax
cmp byte [edi + 0xc8], 2
jb 0x4fc23c
test esi, esi
je 0x4fc23c
mov edx, dword [esi + 0x10]
lea eax, [ebx + 4]
push eax
mov ecx, edi
call fcn.004b87a0
add esp, 4
mov dword [ebx - 0x14], esi
jmp case.0x4fbb64.216
mov eax, dword [edi]
mov ecx, eax
push 0
push 0x50
mov dword [esp + 0x18], eax
call fcn.00478070
mov edi, eax
add esp, 8
test edi, edi
jne 0x4fc6b3
mov dword [ebx + 4], edi
jmp case.0x4fbb64.216
push 0x48
lea eax, [edi + 8]
mov dword [edi + 4], 1
push 0
push eax
mov dword [edi], 1
call fcn.00639370
mov ecx, dword [esp + 0x1c]
lea edx, [ebx + 4]
mov dword [edi + 0x34], 0xffffffff
add esp, 0xc
mov eax, dword [edi]
lea eax, [eax + eax*8]
lea esi, [edi + eax*8]
call fcn.004be070
mov dword [esi - 0x38], eax
mov dword [esi - 0x3c], 0
mov dword [ebx + 4], edi
jmp case.0x4fbb64.216
lea eax, [ebx + 4]
xor edx, edx
push eax
lea esi, [ebx - 0x14]
mov ecx, edi
push esi
call fcn.004c2eb0
add esp, 8
mov dword [esi], eax
jmp case.0x4fbb64.216
lea eax, [ebx - 0x14]
xor edx, edx
push eax
lea esi, [ebx - 0x2c]
mov ecx, edi
push esi
call fcn.004c2eb0
add esp, 8
mov dword [esi], eax
test eax, eax
je case.0x4fbb64.216
mov ecx, dword [edi]
lea edx, [ebx + 4]
call fcn.004be070
mov ecx, dword [esi]
mov dword [ecx + 0x14], eax
jmp case.0x4fbb64.216
mov eax, dword [edi]
mov ecx, eax
push 0
push 0x50
mov dword [esp + 0x18], eax
call fcn.00478070
mov esi, eax
add esp, 8
mov dword [esp + 0x18], esi
test esi, esi
je 0x4fc7ae
push 0x48
lea eax, [esi + 8]
mov dword [esi + 4], 1
push 0
push eax
mov dword [esi], 1
call fcn.00639370
mov ecx, dword [esp + 0x1c]
lea edx, [ebx - 0x14]
mov dword [esi + 0x34], 0xffffffff
add esp, 0xc
mov eax, dword [esi]
lea eax, [eax + eax*8]
lea esi, [esi + eax*8]
call fcn.004be070
mov dword [esi - 0x38], eax
mov eax, dword [esp + 0x18]
mov dword [esi - 0x3c], 0
mov dword [ebx - 0x14], eax
test eax, eax
je case.0x4fbb64.216
mov ecx, dword [edi]
lea edx, [ebx + 4]
call fcn.004be070
mov ecx, dword [ebx - 0x14]
mov dword [ecx + 0x14], eax
jmp case.0x4fbb64.216
push 0
push 0
lea edx, [ebx - 8]
mov ecx, edi
call fcn.004d60b0
add esp, 8
mov dword [ebx - 8], eax
jmp case.0x4fbb64.216
lea eax, [ebx - 8]
mov ecx, edi
push 0
push eax
lea edx, [ebx - 0x14]
call fcn.004d60b0
add esp, 8
mov dword [ebx - 0x14], eax
jmp case.0x4fbb64.216
lea eax, [ebx - 8]
mov ecx, edi
push eax
lea eax, [ebx - 0x14]
push eax
lea edx, [ebx - 0x20]
call fcn.004d60b0
add esp, 8
mov dword [ebx - 0x20], eax
jmp case.0x4fbb64.216
mov eax, dword [ebx + 4]
mov dword [ebx - 0x14], eax
mov eax, dword [ebx + 8]
mov dword [ebx - 0x10], eax
jmp case.0x4fbb64.216
mov dword [ebx - 8], 0
mov dword [ebx - 4], 1
jmp case.0x4fbb64.216
mov eax, dword [ebx - 8]
mov dword [ebx - 0x20], eax
jmp case.0x4fbb64.216
push dword [ebx - 0x14]
mov edx, dword [ebx - 0x2c]
mov ecx, edi
call fcn.004b1210
mov dword [ebx - 0x2c], eax
mov edx, dword [ebx - 8]
add esp, 4
mov ecx, eax
push dword [ebx + 4]
call fcn.004b1460
add esp, 4
jmp case.0x4fbb64.216
push dword [ebx - 0x14]
xor edx, edx
mov ecx, edi
call fcn.004b1210
mov dword [ebx - 0x14], eax
jmp 0x4fc85e
mov dword [ebx + 0x10], 0xffffffff
jmp case.0x4fbb64.216
push 0
push dword [ebx + 4]
mov edx, 0x90
mov ecx, edi
call fcn.004affe0
add esp, 8
mov dword [ebx - 8], eax
jmp case.0x4fbb64.216
push dword [ebx + 4]
push dword [ebx - 0x14]
mov edx, 0x90
mov ecx, edi
call fcn.004affe0
add esp, 8
mov dword [ebx - 0x20], eax
jmp case.0x4fbb64.216
push dword [ebx - 0x14]
push dword [ebx + 4]
jmp 0x4fc8b5
mov edx, dword [ebx - 0x14]
lea eax, [ebx - 8]
push eax
mov ecx, edi
call fcn.004c32e0
mov edx, dword [ebx - 0x14]
push ecx
push dword [ebx + 4]
mov ecx, edi
call fcn.004c5260
add esp, 0xc
jmp case.0x4fbb64.216
mov edx, dword [ebx - 0x2c]
lea eax, [ebx - 0x20]
push eax
mov ecx, edi
call fcn.004c32e0
mov edx, dword [ebx - 8]
add esp, 4
mov ecx, edi
push 0x70a8f4
call fcn.004b15c0
mov edx, dword [ebx - 0x2c]
add esp, 4
mov ecx, edi
push 0
sub esp, 8
push dword [ebx - 0x38]
push dword [ebx + 4]
push dword [ebx - 8]
call fcn.004e2e30
add esp, 0x18
jmp case.0x4fbb64.216
push dword [ebx + 4]
mov edx, dword [ebx - 0x2c]
mov ecx, edi
call fcn.004b1210
add esp, 4
mov dword [ebx - 0x2c], eax
lea ecx, [ebx - 0x14]
mov edx, eax
push 1
push ecx
mov ecx, edi
call fcn.004b14a0
add esp, 8
jmp case.0x4fbb64.216
push dword [ebx + 4]
mov edx, dword [ebx - 0x44]
mov ecx, edi
push dword [ebx - 0x20]
call fcn.004b12d0
add esp, 8
mov dword [ebx - 0x44], eax
jmp case.0x4fbb64.216
push dword [ebx + 4]
xor edx, edx
mov ecx, edi
call fcn.004b1210
mov ecx, dword [esp + 0x10]
lea esi, [ebx - 0x14]
add esp, 4
mov edi, eax
mov edx, edi
push 1
push esi
call fcn.004b14a0
add esp, 8
mov dword [esi], edi
jmp case.0x4fbb64.216
push dword [ebx + 4]
xor edx, edx
mov ecx, edi
push dword [ebx - 0x20]
call fcn.004b12d0
add esp, 8
jmp 0x4fd9e0
push dword [ebx + 4]
mov edx, dword [ebx - 0x20]
mov ecx, edi
push dword [ebx - 0x38]
push dword [ebx - 0x14]
push dword [ebx - 8]
call fcn.004cc680
add esp, 0x10
jmp case.0x4fbb64.216
mov edx, dword [ebx - 0x20]
mov ecx, edi
push 0
push dword [ebx - 0x38]
push dword [ebx - 0x14]
push 0
call fcn.004cc680
add esp, 0x10
jmp case.0x4fbb64.216
push dword [ebx + 4]
mov edx, dword [ebx - 0x50]
push dword [ebx - 8]
mov ecx, dword [edi]
push dword [ebx - 0x38]
call fcn.004e54c0
add esp, 0xc
mov dword [ebx - 0x74], eax
jmp case.0x4fbb64.216
mov edx, dword [ebx - 0x2c]
mov ecx, dword [edi]
push 0
push 0
push dword [ebx - 0x14]
call fcn.004e54c0
add esp, 0xc
mov dword [ebx - 0x50], eax
jmp case.0x4fbb64.216
mov ecx, dword [edi]
test ecx, ecx
je 0x4fca4b
push 0
push 0x24
call fcn.00478070
add esp, 8
jmp 0x4fca9c
cmp dword [0x70b848], 0
je 0x4fca91
mov eax, dword [0x716a80]
test eax, eax
je 0x4fca67
push eax
call dword [0x70b898]
add esp, 4
lea edx, [esp + 0xc]
mov ecx, 0x24
call fcn.00477a00
mov eax, dword [0x716a80]
test eax, eax
je 0x4fca8b
push eax
call dword [0x70b8a0]
mov eax, dword [esp + 0x10]
jmp 0x4fca99
mov eax, dword [esp + 0xc]
jmp 0x4fca9c
push 0x24
call dword [0x70b868]
add esp, 4
test eax, eax
jne 0x4fcaa8
mov dword [ebx - 0x20], eax
jmp case.0x4fbb64.216
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [ebx - 0x20], eax
jmp case.0x4fbb64.216
mov eax, dword [ebx - 8]
mov dword [ebx - 0x14], eax
jmp case.0x4fbb64.216
mov edx, dword [ebx - 0x14]
lea eax, [ebx + 4]
push eax
mov ecx, edi
call fcn.004c2ad0
add esp, 4
mov dword [ebx - 0x14], eax
jmp case.0x4fbb64.216
lea esi, [ebx + 4]
xor edx, edx
push esi
mov ecx, edi
call fcn.004c2ad0
add esp, 4
mov dword [esi], eax
jmp case.0x4fbb64.216
push dword [ebx + 8]
mov edx, 0x3b
mov ecx, edi
push dword [ebx + 4]
call fcn.004fb660
add esp, 8
mov dword [ebx + 4], eax
jmp case.0x4fbb64.216
mov ecx, dword [edi]
lea esi, [ebx - 0x14]
push 1
push esi
mov edx, 0x3b
call fcn.004afe20
mov ecx, dword [edi]
mov edx, 0x3b
mov dword [esp + 0x14], eax
lea eax, [ebx + 4]
push 1
push eax
call fcn.004afe20
add esp, 0x10
mov dword [esp + 0x10], eax
cmp byte [edi + 0xc8], 2
jb 0x4fcb85
lea ecx, [ebx + 4]
mov edx, eax
push ecx
mov ecx, edi
call fcn.004b87a0
mov edx, dword [esp + 0x10]
add esp, 4
mov ecx, edi
push esi
call fcn.004b87a0
mov eax, dword [esp + 0x14]
add esp, 4
push eax
push dword [esp + 0x10]
mov edx, 0x89
mov ecx, edi
call fcn.004affe0
add esp, 8
mov dword [esi], eax
jmp case.0x4fbb64.216
mov ecx, dword [edi]
lea esi, [ebx - 0x2c]
push 1
push esi
mov edx, 0x3b
call fcn.004afe20
mov ecx, dword [edi]
mov edx, 0x3b
mov dword [esp + 0x44], eax
lea eax, [ebx - 0x14]
push 1
push eax
call fcn.004afe20
mov ecx, dword [edi]
mov edx, 0x3b
mov dword [esp + 0x1c], eax
lea eax, [ebx + 4]
push 1
push eax
call fcn.004afe20
push eax
push dword [esp + 0x28]
mov edx, 0x89
mov dword [esp + 0x30], eax
mov ecx, edi
call fcn.004affe0
add esp, 0x20
mov dword [esp + 0x18], eax
cmp byte [edi + 0xc8], 2
jb 0x4fcc2b
mov edx, dword [esp + 0x10]
lea ecx, [ebx + 4]
push ecx
mov ecx, edi
call fcn.004b87a0
mov edx, dword [esp + 0x10]
lea ecx, [ebx - 0x14]
add esp, 4
push ecx
mov ecx, edi
call fcn.004b87a0
mov eax, dword [esp + 0x1c]
add esp, 4
push eax
push dword [esp + 0x40]
jmp 0x4fcb8a
push dword [ebx + 8]
movzx edx, word [ebx + 2]
mov ecx, edi
push dword [ebx + 4]
call fcn.004fb660
add esp, 8
mov dword [ebx + 4], eax
jmp case.0x4fbb64.216
mov ecx, dword [edi]
lea esi, [ebx + 4]
push 1
push esi
mov edx, 0x96
call fcn.004afe20
add esp, 8
mov dword [esi], eax
jmp case.0x4fbb64.216
mov eax, dword [ebx + 4]
cmp byte [eax], 0x23
jne 0x4fcce7
movzx eax, byte [eax + 1]
test byte [eax + 0x6c64c0], 4
je 0x4fcce7
cmp byte [edi + 0x12], 0
mov eax, dword [ebx + 4]
mov dword [esp + 0x3c], eax
mov eax, dword [ebx + 8]
mov dword [esp + 0x40], eax
jne 0x4fccb5
lea eax, [esp + 0x3c]
push eax
push 0x70a920
push edi
call fcn.0047b1c0
add esp, 0xc
mov dword [ebx + 4], 0
jmp case.0x4fbb64.216
push 0
push 0
mov edx, 0xab
mov ecx, edi
call fcn.004affe0
add esp, 8
mov dword [ebx + 4], eax
test eax, eax
je case.0x4fbb64.216
mov ecx, dword [esp + 0x3c]
lea edx, [eax + 0x1c]
lea ecx, [ecx + 1]
call fcn.0047bce0
jmp case.0x4fbb64.216
mov esi, dword [ebx + 8]
mov edx, 0x97
push esi
push dword [ebx + 4]
mov ecx, edi
call fcn.004fb660
push esi
mov edx, eax
mov dword [ebx + 4], eax
mov ecx, edi
call fcn.004b0250
add esp, 0xc
jmp case.0x4fbb64.216
mov edx, dword [ebx - 0x14]
lea eax, [ebx + 4]
push 1
push eax
mov ecx, edi
call fcn.004af310
add esp, 8
mov dword [ebx - 0x14], eax
jmp case.0x4fbb64.216
mov ecx, dword [edi]
lea eax, [ebx - 8]
push 1
push eax
mov edx, 0x24
call fcn.004afe20
mov ecx, eax
add esp, 8
mov eax, dword [ebx - 0x20]
mov dword [ebx - 0x38], ecx
test ecx, ecx
jne 0x4fcd61
test eax, eax
je case.0x4fbb64.216
mov ecx, dword [edi]
mov edx, eax
call fcn.004b03b0
jmp case.0x4fbb64.216
test eax, eax
je 0x4fcd73
mov dword [ecx + 0xc], eax
mov eax, dword [eax + 4]
and eax, 0x200104
or dword [ecx + 4], eax
call fcn.004afd10
jmp case.0x4fbb64.216
push dword [ebx - 0x14]
mov edx, dword [ebx - 8]
lea esi, [ebx - 0x2c]
push esi
mov ecx, edi
call fcn.004b01a0
add esp, 8
mov dword [esi], eax
jmp case.0x4fbb64.216
mov ecx, dword [edi]
lea eax, [ebx - 0x20]
push 1
push eax
mov edx, 0xa7
call fcn.004afe20
mov esi, eax
add esp, 8
test esi, esi
jne 0x4fcdbb
mov dword [ebx - 0x20], esi
jmp case.0x4fbb64.216
or dword [esi + 4], 4
mov dword [esi + 0x14], 0
cmp dword [edi + 0x24], 0
jne 0x4fcdec
mov ecx, esi
call fcn.004afd10
mov eax, dword [edi]
mov eax, dword [eax + 0x78]
cmp dword [esi + 0x18], eax
jle 0x4fcdec
push eax
push 0x706b1c
push edi
call fcn.0047b1c0
add esp, 0xc
mov dword [ebx - 0x20], esi
jmp case.0x4fbb64.216
push dword [ebx - 0x20]
mov edx, dword [ebx - 0x14]
lea edi, [ebx - 0x38]
mov ecx, dword [esp + 0x10]
push edi
call fcn.004b01a0
push dword [ebx + 4]
mov ecx, dword [esp + 0x18]
mov esi, eax
mov edx, esi
call fcn.004f6d50
add esp, 0xc
mov dword [edi], esi
jmp case.0x4fbb64.216
mov ecx, dword [edi]
lea eax, [ebx - 0x2c]
push 1
push eax
mov edx, 0xa7
call fcn.004afe20
mov esi, eax
add esp, 8
test esi, esi
je 0x4fce6d
or dword [esi + 4], 4
mov dword [esi + 0x14], 0
cmp dword [edi + 0x24], 0
jne 0x4fce6d
mov ecx, esi
call fcn.004afd10
mov eax, dword [edi]
mov eax, dword [eax + 0x78]
cmp dword [esi + 0x18], eax
jle 0x4fce6d
push eax
push 0x706b1c
push edi
call fcn.0047b1c0
add esp, 0xc
push dword [ebx + 4]
mov edx, esi
mov ecx, edi
call fcn.004f6d50
add esp, 4
mov dword [ebx - 0x2c], esi
jmp case.0x4fbb64.216
mov ecx, dword [edi]
lea eax, [ebx + 4]
push 1
push eax
mov edx, 0xa7
call fcn.004afe20
mov esi, eax
add esp, 8
test esi, esi
jne 0x4fcea7
mov dword [ebx + 4], esi
jmp case.0x4fbb64.216
or dword [esi + 4], 4
mov dword [esi + 0x14], 0
cmp dword [edi + 0x24], 0
jne 0x4fced8
mov ecx, esi
call fcn.004afd10
mov eax, dword [edi]
mov eax, dword [eax + 0x78]
cmp dword [esi + 0x18], eax
jle 0x4fced8
push eax
push 0x706b1c
push edi
call fcn.0047b1c0
add esp, 0xc
mov dword [ebx + 4], esi
jmp case.0x4fbb64.216
push dword [ebx - 8]
mov edx, dword [ebx - 0x20]
mov ecx, edi
call fcn.004b1210
add esp, 4
mov edx, 0xac
mov ecx, edi
mov esi, eax
push 0
push 0
call fcn.004affe0
add esp, 8
mov dword [ebx - 0x2c], eax
test eax, eax
je 0x4fcf14
mov dword [eax + 0x14], esi
jmp case.0x4fbb64.216
test esi, esi
je case.0x4fbb64.216
mov ecx, dword [edi]
mov edx, esi
call fcn.004b15f0
jmp case.0x4fbb64.216
push dword [ebx + 4]
mov edx, dword [ebx - 0x14]
mov ecx, edi
call fcn.004b00f0
add esp, 4
mov dword [ebx - 0x14], eax
jmp case.0x4fbb64.216
push dword [ebx + 4]
movzx edx, word [ebx - 0xa]
mov ecx, edi
push dword [ebx - 0x14]
call fcn.004affe0
add esp, 8
mov dword [ebx - 0x14], eax
jmp case.0x4fbb64.216
mov eax, dword [ebx + 4]
mov dword [ebx - 8], eax
mov eax, dword [ebx + 8]
mov dword [ebx - 4], eax
or dword [ebx - 4], 0x80000000
jmp case.0x4fbb64.216
mov esi, dword [ebx - 4]
xor edx, edx
push dword [ebx + 4]
mov eax, esi
mov ecx, edi
and eax, 0x7fffffff
mov dword [ebx - 4], eax
call fcn.004b1210
add esp, 4
mov edx, eax
mov ecx, edi
push dword [ebx - 0x14]
call fcn.004b1210
add esp, 4
lea ecx, [ebx - 8]
mov edx, eax
push 0
push ecx
mov ecx, edi
call fcn.004b01a0
add esp, 8
mov dword [ebx - 0x14], eax
test esi, esi
jns 0x4fcfcf
push 0
push eax
mov edx, 0x13
mov ecx, edi
call fcn.004affe0
add esp, 8
mov dword [ebx - 0x14], eax
mov eax, dword [ebx - 0x14]
test eax, eax
je case.0x4fbb64.216
or dword [eax + 4], 0x80
jmp case.0x4fbb64.216
mov esi, dword [ebx - 0x1c]
xor edx, edx
push dword [ebx - 0x14]
mov eax, esi
mov ecx, edi
and eax, 0x7fffffff
mov dword [ebx - 0x1c], eax
call fcn.004b1210
add esp, 4
mov edx, eax
mov ecx, edi
push dword [ebx - 0x2c]
call fcn.004b1210
add esp, 4
mov edx, eax
mov ecx, edi
push dword [ebx + 4]
call fcn.004b1210
add esp, 4
lea ecx, [ebx - 0x20]
mov edx, eax
push 0
push ecx
mov ecx, edi
call fcn.004b01a0
add esp, 8
mov dword [ebx - 0x2c], eax
test esi, esi
jns 0x4fd04e
push 0
push eax
mov edx, 0x13
mov ecx, edi
call fcn.004affe0
add esp, 8
mov dword [ebx - 0x2c], eax
mov eax, dword [ebx - 0x2c]
test eax, eax
je case.0x4fbb64.216
or dword [eax + 4], 0x80
jmp case.0x4fbb64.216
movzx edx, word [ebx + 2]
mov ecx, edi
push 0
push dword [ebx - 8]
call fcn.004affe0
add esp, 8
mov dword [ebx - 8], eax
jmp case.0x4fbb64.216
push 0
push dword [ebx - 0x14]
mov edx, 0x33
mov ecx, edi
call fcn.004affe0
add esp, 8
mov dword [ebx - 0x14], eax
jmp case.0x4fbb64.216
push dword [ebx + 4]
mov edx, 0x2d
mov ecx, edi
push dword [ebx - 0x14]
call fcn.004affe0
mov edx, dword [ebx + 4]
mov ecx, edi
push 0x32
push eax
mov dword [ebx - 0x14], eax
call fcn.004fb780
add esp, 0x10
jmp case.0x4fbb64.216
push dword [ebx + 4]
mov edx, 0xa6
mov ecx, edi
push dword [ebx - 0x20]
call fcn.004affe0
mov edx, dword [ebx + 4]
mov ecx, edi
push 0x33
push eax
mov dword [ebx - 0x20], eax
call fcn.004fb780
add esp, 0x10
jmp case.0x4fbb64.216
movzx edx, word [ebx - 0xa]
mov ecx, edi
push 0
push dword [ebx + 4]
call fcn.004affe0
add esp, 8
mov dword [ebx - 8], eax
jmp case.0x4fbb64.216
xor edx, edx
mov ecx, edi
cmp word [ebx - 0xa], 0x67
push 0
push dword [ebx + 4]
sete dl
add edx, 0xa8
call fcn.004affe0
add esp, 8
mov dword [ebx - 8], eax
jmp case.0x4fbb64.216
push dword [ebx - 0x14]
xor edx, edx
mov ecx, edi
call fcn.004b1210
add esp, 4
mov edx, eax
mov ecx, edi
push dword [ebx + 4]
call fcn.004b1210
add esp, 4
mov edx, 0x30
mov ecx, edi
mov esi, eax
push 0
push dword [ebx - 0x2c]
call fcn.004affe0
add esp, 8
mov dword [ebx - 0x2c], eax
test eax, eax
je 0x4fd172
mov dword [eax + 0x14], esi
jmp 0x4fd17f
test esi, esi
je 0x4fd17f
mov edx, esi
mov ecx, dword [edi]
call fcn.004b15f0
cmp dword [ebx - 0x20], 0
je case.0x4fbb64.216
push 0
push dword [ebx - 0x2c]
mov edx, 0x13
mov ecx, edi
call fcn.004affe0
add esp, 8
jmp 0x4fd9e0
cmp dword [ebx - 8], 0
mov ecx, edi
jne 0x4fd1d8
mov edx, dword [ebx - 0x2c]
call fcn.004b04d0
cmp dword [ebx - 0x20], 0
mov ecx, 0x70a998
mov eax, 0x70a91c
mov edx, 0x96
cmove eax, ecx
mov ecx, dword [edi]
push eax
call fcn.004aff20
add esp, 4
jmp 0x4fd9e0
push 0
push dword [ebx - 0x2c]
mov edx, 0x31
call fcn.004affe0
add esp, 8
mov dword [ebx - 0x2c], eax
test eax, eax
je 0x4fd206
mov ecx, dword [ebx - 8]
mov dword [eax + 0x14], ecx
mov ecx, edi
mov edx, dword [ebx - 0x2c]
call fcn.004afdc0
jmp 0x4fd17f
mov edx, dword [ebx - 8]
test edx, edx
je 0x4fd17f
jmp 0x4fd178
push 0
push 0
mov edx, 0x86
mov ecx, edi
call fcn.004affe0
push dword [ebx - 8]
mov edx, eax
mov dword [ebx - 0x14], eax
mov ecx, edi
call fcn.004b0080
add esp, 0xc
jmp case.0x4fbb64.216
push 0
push dword [ebx - 0x2c]
mov edx, 0x31
mov ecx, edi
call fcn.004affe0
push dword [ebx - 8]
mov edx, eax
mov dword [ebx - 0x2c], eax
mov ecx, edi
call fcn.004b0080
add esp, 0xc
jmp 0x4fd17f
lea eax, [ebx - 8]
xor edx, edx
push eax
lea eax, [ebx - 0x14]
mov ecx, edi
push eax
call fcn.004c2eb0
push 0
push 0
push 0
push 0
push 0
push 0
push eax
xor edx, edx
mov dword [esp + 0x60], eax
mov ecx, edi
call fcn.004d5ed0
mov esi, eax
add esp, 0x24
mov eax, dword [ebx + 4]
test eax, eax
je 0x4fd2b0
xor edx, edx
mov ecx, edi
test esi, esi
push eax
cmovne edx, dword [esp + 0x40]
call fcn.004c3320
add esp, 4
push 0
push dword [ebx - 0x2c]
mov edx, 0x31
mov ecx, edi
call fcn.004affe0
push esi
mov edx, eax
mov dword [ebx - 0x2c], eax
mov ecx, edi
call fcn.004b0080
add esp, 0xc
jmp 0x4fd17f
push 0
push 0
mov edx, 0x14
mov ecx, edi
call fcn.004affe0
push dword [ebx - 8]
mov edx, eax
mov dword [ebx - 0x20], eax
mov ecx, edi
call fcn.004b0080
add esp, 0xc
jmp case.0x4fbb64.216
push 0
push dword [ebx - 0x20]
mov edx, 0x98
mov ecx, edi
call fcn.004affe0
add esp, 8
mov dword [ebx - 0x2c], eax
test eax, eax
je 0x4fd349
mov eax, dword [ebx - 8]
test eax, eax
je 0x4fd331
mov edx, dword [ebx - 0x14]
mov ecx, edi
push eax
call fcn.004b1210
add esp, 4
mov ecx, eax
jmp 0x4fd334
mov ecx, dword [ebx - 0x14]
mov eax, dword [ebx - 0x2c]
mov dword [eax + 0x14], ecx
mov ecx, edi
mov edx, dword [ebx - 0x2c]
call fcn.004afdc0
jmp case.0x4fbb64.216
mov edx, dword [ebx - 0x14]
test edx, edx
je 0x4fd357
mov ecx, dword [edi]
call fcn.004b15f0
mov edx, dword [ebx - 8]
test edx, edx
je case.0x4fbb64.216
mov ecx, dword [edi]
call fcn.004b03b0
jmp case.0x4fbb64.216
push dword [ebx - 0x14]
mov edx, dword [ebx - 0x2c]
mov ecx, edi
call fcn.004b1210
add esp, 4
mov dword [ebx - 0x2c], eax
mov edx, eax
mov ecx, edi
push dword [ebx + 4]
call fcn.004b1210
add esp, 4
jmp 0x4fd9e0
push dword [ebx - 0x14]
xor edx, edx
mov ecx, edi
call fcn.004b1210
add esp, 4
mov dword [ebx - 0x20], eax
mov edx, eax
mov ecx, edi
push dword [ebx + 4]
call fcn.004b1210
add esp, 4
mov dword [ebx - 0x20], eax
jmp case.0x4fbb64.216
push dword [ebx + 4]
mov edx, dword [ebx - 0x14]
mov ecx, edi
call fcn.004b1210
add esp, 4
mov dword [ebx - 0x14], eax
jmp case.0x4fbb64.216
push dword [ebx + 4]
xor edx, edx
mov ecx, edi
call fcn.004b1210
add esp, 4
mov dword [ebx + 4], eax
jmp case.0x4fbb64.216
mov eax, dword [edi]
mov ecx, eax
push 0
push 0x50
mov dword [esp + 0x44], eax
call fcn.00478070
mov esi, eax
add esp, 8
mov dword [esp + 0x10], esi
test esi, esi
jne 0x4fd40f
xor ecx, ecx
jmp 0x4fd455
push 0x48
lea eax, [esi + 8]
mov dword [esi + 4], 1
push 0
push eax
mov dword [esi], 1
call fcn.00639370
mov ecx, dword [esp + 0x48]
lea edx, [ebx - 0x2c]
mov dword [esi + 0x34], 0xffffffff
add esp, 0xc
mov eax, dword [esi]
lea eax, [eax + eax*8]
lea esi, [esi + eax*8]
call fcn.004be070
mov ecx, dword [esp + 0x10]
mov dword [esi - 0x38], eax
mov dword [esi - 0x3c], 0
push 0
push dword [ebx - 0x5c]
lea eax, [ebx - 0x80]
push 0
push dword [ebx + 4]
lea edx, [ebx - 0x50]
push eax
push dword [ebx - 0x74]
lea eax, [ebx - 0x44]
push dword [ebx - 0x14]
push ecx
push eax
mov ecx, edi
call fcn.004c1b70
add esp, 0x24
cmp byte [edi + 0xc8], 2
jb case.0x4fbb64.216
mov edx, dword [edi + 0xe8]
test edx, edx
je case.0x4fbb64.216
mov edx, dword [edx]
lea eax, [ebx - 0x2c]
push eax
mov ecx, edi
call fcn.004b87a0
add esp, 4
jmp case.0x4fbb64.216
push dword [ebx + 4]
mov edx, dword [ebx - 0x2c]
lea eax, [ebx - 0x14]
push dword [ebx - 8]
mov ecx, edi
push eax
call fcn.004fb7d0
add esp, 0xc
jmp 0x4fd9e0
push dword [ebx + 4]
lea esi, [ebx - 0x14]
xor edx, edx
push dword [ebx - 8]
mov ecx, edi
push esi
call fcn.004fb7d0
add esp, 0xc
mov dword [esi], eax
jmp case.0x4fbb64.216
push dword [ebx - 8]
mov edx, dword [ebx + 4]
mov ecx, edi
call fcn.004c2850
add esp, 4
jmp case.0x4fbb64.216
push dword [ebx + 4]
xor edx, edx
mov ecx, edi
call fcn.004e5cf0
add esp, 4
jmp case.0x4fbb64.216
push dword [ebx + 4]
lea edx, [ebx - 8]
mov ecx, edi
call fcn.004e5cf0
add esp, 4
jmp case.0x4fbb64.216
push 0
lea eax, [ebx + 4]
mov ecx, edi
push 0
push eax
lea edx, [ebx - 8]
call fcn.004d1800
add esp, 0xc
jmp case.0x4fbb64.216
push 0
lea eax, [ebx + 4]
mov ecx, edi
push eax
lea eax, [ebx - 0x14]
lea edx, [ebx - 0x20]
push eax
call fcn.004d1800
add esp, 0xc
jmp case.0x4fbb64.216
push 0
lea eax, [ebx - 8]
mov ecx, edi
push eax
lea eax, [ebx - 0x20]
push eax
lea edx, [ebx - 0x2c]
call fcn.004d1800
add esp, 0xc
jmp case.0x4fbb64.216
push 1
jmp 0x4fd53e
push 1
lea eax, [ebx - 8]
mov ecx, edi
push eax
lea eax, [ebx - 0x20]
lea edx, [ebx - 0x2c]
push eax
call fcn.004d1800
add esp, 0xc
jmp case.0x4fbb64.216
mov eax, dword [ebx + 8]
mov ecx, dword [ebx - 0x20]
add eax, dword [ebx + 4]
mov edx, dword [ebx - 8]
sub eax, ecx
mov dword [esp + 0x40], eax
lea eax, [esp + 0x3c]
mov dword [esp + 0x3c], ecx
mov ecx, edi
push eax
call fcn.004e1690
add esp, 4
jmp case.0x4fbb64.216
push dword [ebx - 0x5c]
lea esi, [ebx - 0x44]
mov ecx, edi
push dword [ebx - 0x74]
lea edx, [ebx - 0x50]
push dword [ebx + 4]
push dword [ebx - 0x14]
push dword [ebx - 0x28]
push dword [ebx - 0x2c]
push dword [ebx - 0x38]
push esi
call fcn.004e11d0
add esp, 0x20
cmp dword [ebx - 0x40], 0
jne 0x4fd5fb
mov eax, dword [ebx - 0x50]
mov ecx, dword [ebx - 0x4c]
mov dword [ebx - 0x74], eax
mov dword [ebx - 0x70], ecx
jmp case.0x4fbb64.216
mov eax, dword [esi]
mov ecx, dword [esi + 4]
mov dword [ebx - 0x74], eax
mov dword [ebx - 0x70], ecx
jmp case.0x4fbb64.216
mov dword [ebx - 8], 0x41
jmp case.0x4fbb64.216
mov dword [ebx + 0x10], 0x21
jmp case.0x4fbb64.216
movzx eax, word [ebx + 2]
mov dword [ebx + 4], eax
mov dword [ebx + 8], 0
jmp case.0x4fbb64.216
mov eax, dword [ebx + 4]
mov dword [ebx - 0x14], 0x7d
mov dword [ebx - 0x10], eax
jmp case.0x4fbb64.216
mov eax, dword [ebx - 0x14]
mov ecx, dword [eax + 0x28]
mov eax, dword [ebx - 8]
mov dword [ecx + 0x24], eax
mov ecx, dword [ebx - 0x14]
mov eax, dword [ebx - 8]
mov dword [ecx + 0x28], eax
jmp case.0x4fbb64.216
mov eax, dword [ebx - 8]
mov dword [eax + 0x28], eax
jmp case.0x4fbb64.216
mov eax, dword [ebx + 4]
mov dword [ebx - 0x14], eax
mov eax, dword [ebx + 8]
push 0x70a938
push edi
mov dword [ebx - 0x10], eax
call fcn.0047b1c0
add esp, 8
jmp case.0x4fbb64.216
push 0x70aa08
push edi
call fcn.0047b1c0
add esp, 8
jmp case.0x4fbb64.216
push 0x70a9b0
push edi
call fcn.0047b1c0
add esp, 8
jmp case.0x4fbb64.216
push dword [ebx + 4]
movzx eax, byte [ebx - 0x44]
lea edx, [ebx - 0x38]
push dword [ebx - 0x50]
mov ecx, edi
push eax
push dword [ebx - 8]
push dword [ebx - 0x14]
call fcn.004e1b60
add esp, 0x14
mov dword [ebx - 0x50], eax
jmp case.0x4fbb64.216
push dword [ebx + 4]
movzx eax, byte [ebx - 0x44]
lea edx, [ebx - 0x2c]
push dword [ebx - 0x50]
mov ecx, edi
push dword [ebx - 8]
push eax
push dword [ebx - 0x14]
push dword [ebx - 0x20]
call fcn.004e1ab0
add esp, 0x18
mov dword [ebx - 0x50], eax
jmp case.0x4fbb64.216
push dword [ebx + 4]
lea edx, [ebx - 0x20]
mov ecx, edi
push dword [ebx - 0x38]
push dword [ebx - 8]
call fcn.004e1c30
add esp, 0xc
mov dword [ebx - 0x38], eax
jmp case.0x4fbb64.216
push dword [ebx + 4]
mov edx, dword [ebx - 8]
push dword [ebx - 0x14]
mov ecx, dword [edi]
call fcn.004e18e0
add esp, 8
mov dword [ebx - 0x14], eax
jmp case.0x4fbb64.216
push 0
push 0
mov edx, 0x47
mov ecx, edi
call fcn.004affe0
add esp, 8
mov dword [ebx - 0x20], eax
test eax, eax
je case.0x4fbb64.216
mov byte [eax + 1], 4
jmp case.0x4fbb64.216
mov ecx, dword [edi]
lea eax, [ebx - 8]
push 1
push eax
mov edx, 0x47
call fcn.004afe20
add esp, 8
mov dword [ebx - 0x38], eax
test eax, eax
je case.0x4fbb64.216
mov cl, byte [ebx - 0x20]
mov byte [eax + 1], cl
jmp case.0x4fbb64.216
mov dword [ebx + 4], 3
jmp case.0x4fbb64.216
push dword [ebx - 8]
mov edx, dword [ebx + 4]
mov ecx, edi
call fcn.004e1dd0
add esp, 4
jmp case.0x4fbb64.216
push dword [ebx + 4]
mov eax, dword [ebx - 0x20]
mov edx, 0x18
push dword [ebx - 8]
mov ecx, edi
push eax
push eax
push 0x6c63a8
call fcn.004bc2c0
add esp, 0x14
jmp case.0x4fbb64.216
mov eax, dword [ebx + 4]
mov edx, 0x19
push eax
push 0
push 0
push eax
push 0x6c5810
mov ecx, edi
call fcn.004bc2c0
add esp, 0x14
jmp case.0x4fbb64.216
mov ecx, edi
call fcn.004d5070
test eax, eax
jne case.0x4fbb64.216
xor edx, edx
mov ecx, edi
call fcn.004c3da0
jmp case.0x4fbb64.216
lea eax, [ebx + 4]
mov ecx, edi
push eax
lea edx, [ebx - 8]
call fcn.004c3ed0
add esp, 4
jmp case.0x4fbb64.216
push 0
xor edx, edx
mov ecx, edi
call fcn.004bb6a0
add esp, 4
jmp case.0x4fbb64.216
lea eax, [ebx + 4]
mov ecx, edi
push eax
lea edx, [ebx - 8]
call fcn.004bb6a0
add esp, 4
jmp case.0x4fbb64.216
mov edx, dword [ebx - 0x20]
lea eax, [ebx + 4]
push eax
mov ecx, edi
call fcn.004b7c80
add esp, 4
jmp case.0x4fbb64.216
mov eax, dword [edi + 0xc0]
lea edx, [ebx - 8]
add eax, dword [edi + 0xbc]
mov ecx, edi
sub eax, dword [edx]
mov dword [ebx - 4], eax
call fcn.004b8000
jmp case.0x4fbb64.216
mov eax, dword [edi]
mov ecx, edi
inc byte [edi + 0x18]
inc dword [eax + 0x118]
mov edx, dword [ebx + 4]
call fcn.004b82f0
jmp case.0x4fbb64.216
mov edx, dword [ebx - 0x38]
lea eax, [ebx + 4]
push eax
lea eax, [ebx - 0x14]
mov ecx, edi
push eax
call fcn.004b84d0
add esp, 8
jmp case.0x4fbb64.216
xor edx, edx
mov ecx, edi
call fcn.004e6c70
jmp case.0x4fbb64.216
lea edx, [ebx + 4]
mov ecx, edi
call fcn.004e6c70
jmp case.0x4fbb64.216
push dword [ebx - 0x2c]
lea eax, [ebx + 4]
mov ecx, edi
push eax
lea eax, [ebx - 0x14]
push eax
lea edx, [ebx - 0x20]
call fcn.004e6b30
add esp, 0xc
jmp case.0x4fbb64.216
mov ecx, edi
call fcn.004e6c00
mov dword [edi + 0xf4], 0
mov dword [edi + 0xf8], 0
jmp case.0x4fbb64.216
mov ecx, dword [edi + 0xf4]
test ecx, ecx
jne 0x4fd934
mov eax, dword [ebx + 4]
mov dword [edi + 0xf4], eax
mov eax, dword [ebx + 8]
mov dword [edi + 0xf8], eax
jmp case.0x4fbb64.216
mov eax, dword [ebx + 8]
sub eax, ecx
add eax, dword [ebx + 4]
mov dword [edi + 0xf8], eax
jmp case.0x4fbb64.216
mov ecx, dword [ebx + 4]
test ecx, ecx
je case.0x4fbb64.216
mov eax, dword [edi + 0x108]
mov dword [ecx + 4], eax
mov dword [edi + 0x108], ecx
mov dword [edi + 0x10c], ecx
jmp case.0x4fbb64.216
push dword [ebx - 8]
lea esi, [ebx - 0x38]
xor edx, edx
push dword [ebx - 0x2c]
mov ecx, edi
push esi
call fcn.004c40f0
add esp, 0xc
mov dword [esi], eax
jmp case.0x4fbb64.216
push dword [ebx - 8]
mov edx, dword [ebx - 0x50]
lea eax, [ebx - 0x38]
push dword [ebx - 0x2c]
mov ecx, edi
push eax
call fcn.004c40f0
add esp, 0xc
mov dword [ebx - 0x50], eax
jmp case.0x4fbb64.216
push dword [ebx - 0x14]
mov edx, dword [ebx + 4]
mov ecx, edi
call fcn.004f6c90
mov ecx, dword [ebx + 4]
add esp, 4
mov eax, dword [ebx - 0x14]
mov dword [ecx + 0x24], eax
mov eax, dword [ebx + 4]
mov dword [ebx - 0x14], eax
jmp case.0x4fbb64.216
cmp dword [ebx - 8], 0
je case.0x4fbb64.322
mov edx, dword [ebx - 0x2c]
mov ecx, dword [edi]
push 0
push dword [ebx - 0x28]
call fcn.00478350
mov ecx, dword [ebx - 8]
add esp, 8
mov dword [ecx], eax
mov eax, dword [ebx - 8]
mov dword [ebx - 0x2c], eax
mov eax, dword [esp + 0x1c]
pop edi
movzx esi, word [eax*2 + 0x6c7088]
movsx eax, byte [eax + 0x6c5fa8]
lea eax, [eax + eax*2]
lea edx, [ebx + eax*4]
movzx eax, word [edx]
movsx ecx, word [eax*2 + 0x6c6608]
add ecx, esi
movzx eax, word [ecx*2 + 0x6c77b8]
lea ecx, [edx + 0xc]
mov edx, dword [esp + 0x1c]
mov dword [edx], ecx
mov word [ecx + 2], si
mov word [ecx], ax
mov ecx, dword [esp + 0x40]
pop esi
pop ebx
xor ecx, esp
call fcn.0062063b
mov esp, ebp
pop ebp
ret
mov esi, dword [ebx + 4]
mov eax, dword [ebx - 8]
mov edx, dword [ebx - 0x14]
mov dword [esp + 0x3c], eax
test esi, esi
je 0x4fda4f
mov dword [esi + 8], edx
mov dword [esi + 0xc], eax
mov dword [ebx - 0x2c], esi
jmp case.0x4fbb64.216
test edx, edx
je 0x4fda5e
mov ecx, dword [edi]
call fcn.004b15f0
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x4fce7c
mov ecx, dword [edi]
mov edx, eax
call fcn.004b15f0
mov dword [ebx - 0x2c], esi
jmp case.0x4fbb64.216
mov edx, dword [ebx + 4]
lea esi, [ebx - 0x38]
push esi
push dword [ebx - 8]
mov ecx, edi
push dword [ebx - 0x14]
call fcn.004f6bf0
add esp, 0xc
mov dword [esi], eax
jmp case.0x4fbb64.216
mov esi, dword [ebx + 4]
mov edx, dword [ebx - 8]
test esi, esi
je 0x4fdab1
mov dword [esi + 8], 0
mov dword [esi + 0xc], edx
mov dword [ebx - 0x20], esi
jmp case.0x4fbb64.216
test edx, edx
je 0x4fc10f
mov ecx, dword [edi]
call fcn.004b15f0
mov dword [ebx - 0x20], esi
jmp case.0x4fbb64.216
mov edx, dword [ebx + 4]
lea esi, [ebx - 0x2c]
push esi
push dword [ebx - 8]
mov ecx, edi
push 0
call fcn.004f6bf0
add esp, 0xc
mov dword [esi], eax
jmp case.0x4fbb64.216
mov edx, dword [ebx + 4]
lea esi, [ebx - 8]
push esi
push 0
push 0
mov ecx, edi
call fcn.004f6bf0
add esp, 0xc
mov dword [esi], eax
jmp case.0x4fbb64.216
mov ecx, dword [edi]
mov byte [esp + 0x17], 0
test ecx, ecx
je 0x4fdb1a
push 0
push 0x64
call fcn.00478070
add esp, 8
jmp 0x4fdb68
cmp dword [0x70b848], 0
je 0x4fdb5d
mov eax, dword [0x716a80]
test eax, eax
je 0x4fdb36
push eax
call dword [0x70b898]
add esp, 4
lea edx, [esp + 0xc]
mov ecx, 0x64
call fcn.00477a00
mov eax, dword [0x716a80]
test eax, eax
je 0x4fdb57
push eax
call dword [0x70b8a0]
add esp, 4
mov esi, dword [esp + 0xc]
jmp 0x4fdb6a
push 0x64
call dword [0x70b868]
add esp, 4
mov esi, eax
test esi, esi
je 0x4fdbbf
push 0x64
push 0
push esi
call fcn.00639370
mov word [esi + 0x10], 0x5a59
add esp, 0xc
mov byte [esi + 0x12], 0x55
mov ecx, 0x42
mov eax, dword [edi]
test byte [eax + 0x4c], 2
movzx eax, byte [esp + 0x17]
cmovne eax, ecx
mov byte [esi + 0x13], 1
xor edx, edx
mov byte [esi + 0x14], al
mov ecx, edi
call fcn.004f69c0
xor edx, edx
mov dword [esi + 0x1c], eax
mov ecx, edi
call fcn.004f69c0
mov dword [esi + 0x18], eax
mov dword [ebx + 0x10], esi
jmp case.0x4fbb64.216
xor esi, esi
mov dword [ebx + 0x10], esi
jmp case.0x4fbb64.216
movzx eax, byte [ebx + 4]
mov ecx, edi
mov edx, dword [ebx - 0x14]
push eax
push 0
push 0x55
push dword [ebx - 4]
push dword [ebx - 8]
call fcn.004f6aa0
add esp, 0x14
mov dword [ebx - 0x14], eax
jmp case.0x4fbb64.216
movzx eax, byte [ebx + 4]
mov ecx, edi
mov edx, dword [ebx - 0x38]
push eax
push dword [ebx - 4]
push dword [ebx - 8]
push dword [ebx - 0x1c]
push dword [ebx - 0x20]
call fcn.004f6aa0
add esp, 0x14
mov dword [ebx - 0x38], eax
jmp case.0x4fbb64.216
mov eax, dword [ebx + 4]
mov ecx, dword [ebx + 8]
mov dword [ebx + 4], eax
mov dword [ebx + 8], ecx
jmp case.0x4fbb64.216
movzx eax, word [ebx - 0xa]
mov dword [ebx - 8], eax
mov dword [ebx - 4], 0
jmp case.0x4fbb64.216
movzx ecx, word [ebx + 2]
mov eax, dword [ebx - 8]
mov dword [ebx - 8], ecx
mov dword [ebx - 4], eax
jmp case.0x4fbb64.216
mov byte [ebx + 0x10], 0
jmp case.0x4fbb64.216
mov al, byte [ebx + 4]
mov byte [ebx - 8], al
jmp case.0x4fbb64.216
mov al, byte [ebx - 0xa]
mov byte [ebx - 8], al
jmp case.0x4fbb64.216
mov al, byte [ebx + 2]
mov byte [ebx + 4], al
jmp case.0x4fbb64.216
mov ecx, dword [ebx + 4]
mov eax, dword [ebx - 8]
mov dword [ecx + 0x28], eax
mov eax, dword [ebx + 4]
mov dword [ebx - 8], eax
jmp case.0x4fbb64.216
mov ecx, dword [edi]
push 0
push 0x64
call fcn.00477f70
mov esi, eax
add esp, 8
test esi, esi
je 0x4fdcad
mov byte [esi + 0x10], 0xa1
mov ecx, dword [ebx + 4]
mov dword [esi + 0x28], ecx
mov dword [ebx + 4], esi
jmp case.0x4fbb64.216
mov edx, dword [ebx + 4]
test edx, edx
je 0x4fc127
mov ecx, dword [edi]
call fcn.004b03b0
mov dword [ebx + 4], esi
jmp case.0x4fbb64.216
mov ecx, dword [edi]
push 0
push 0x64
call fcn.00477f70
add esp, 8
mov dword [ebx - 8], eax
test eax, eax
je case.0x4fbb64.216
mov edx, dword [ebx + 4]
mov ecx, dword [edi]
push 0
push dword [ebx + 8]
call fcn.00478350
mov ecx, dword [ebx - 8]
add esp, 8
mov dword [ecx], eax
jmp case.0x4fbb64.216