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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xec]
cmp eax, dword [ecx + 8]
jbe 0x4d83c1
sub esp, 0x16c
mov eax, dword [esp + 0x174]
mov dword [esp], eax
mov ecx, dword [esp + 0x178]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x17c]
mov dword [esp + 8], edx
mov byte [esp + 0xc], 0
call fcn.004d55f0
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
test ecx, ecx
jne 0x4d6af4
test ebx, ebx
je 0x4d65f4
mov eax, dword [esp + 0x174]
mov dword [esp], eax
mov eax, dword [esp + 0x178]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x17c]
mov dword [esp + 8], eax
call fcn.00482420
mov eax, dword [esp + 0x10]
mov dword [esp + 0x12c], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x128], ecx
lea edx, [0x502ec0]
mov dword [esp], edx
call fcn.0040b030
mov eax, dword [esp + 4]
mov dword [eax + 4], 6
lea ecx, [0x50d479]
mov dword [eax], ecx
mov ecx, dword [esp + 0x128]
mov dword [eax + 8], ecx
mov ecx, dword [0x609a90]
test ecx, ecx
jne 0x4d6561
mov ecx, dword [esp + 0x12c]
mov dword [eax + 0xc], ecx
jmp 0x4d6574
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0x12c]
call fcn.0045dbb0
mov eax, ecx
mov ecx, dword [esp + 0x170]
mov edx, dword [ecx + 0xc]
mov dword [eax + 0x10], edx
sar edx, 0x1f
mov dword [eax + 0x14], edx
mov edx, dword [ecx + 0x3c]
test edx, edx
jne 0x4d65cf
mov dword [esp], ecx
lea edx, [0x53a124]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.004d4f10
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x170]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x609a90]
test ecx, ecx
jne 0x4d65c5
mov dword [edx + 0x40], eax
jmp 0x4d65cd
lea edi, [edx + 0x40]
call fcn.0045dbb0
mov ecx, edx
mov dword [esp], ecx
call fcn.004d5020
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
add esp, 0x16c
ret
mov dword [esp + 0xa4], eax
mov dword [esp + 0x124], ebp
mov dword [esp + 0x120], esi
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
call fcn.00482420
mov eax, dword [esp + 0xc]
mov dword [esp + 0x12c], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xcc], ecx
mov edx, dword [esp + 0xc]
mov dword [esp + 0x34], edx
nop
mov ebx, dword [esp + 0xa4]
mov ebp, ebx
and ebx, 0x1f
mov dword [esp + 0xa0], ebx
cmp ebx, 0x14
je 0x4d6654
xor esi, esi
jmp 0x4d669d
mov eax, dword [esp + 0x120]
mov dword [esp], eax
mov ecx, dword [esp + 0x124]
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
call fcn.00481170
mov eax, dword [esp + 0xc]
test eax, eax
sete al
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0xa0]
mov ebp, dword [esp + 0xa4]
mov esi, eax
mov eax, dword [esp + 0x12c]
xchg esi, eax
test al, al
xchg esi, eax
jne 0x4d6a20
cmp ebx, 0x15
je 0x4d67ba
cmp ebx, 0x19
jne 0x4d66e6
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004e28a0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x14]
mov ebx, eax
mov ebp, edx
mov edx, dword [esp + 0x124]
mov eax, ecx
mov ecx, dword [esp + 0xa4]
jmp 0x4d68dc
lea eax, [0x502ec0]
mov dword [esp], eax
call fcn.0040b030
mov eax, dword [esp + 4]
mov dword [eax + 4], 6
lea ecx, [0x50d479]
mov dword [eax], ecx
mov ecx, dword [esp + 0x12c]
mov dword [eax + 8], ecx
mov ecx, dword [0x609a90]
test ecx, ecx
jne 0x4d6727
mov ecx, dword [esp + 0xcc]
mov dword [eax + 0xc], ecx
jmp 0x4d673a
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0xcc]
call fcn.0045dbb0
mov eax, ecx
mov ecx, dword [esp + 0x170]
mov edx, dword [ecx + 0xc]
mov dword [eax + 0x10], edx
sar edx, 0x1f
mov dword [eax + 0x14], edx
mov edx, dword [ecx + 0x3c]
test edx, edx
jne 0x4d6795
mov dword [esp], ecx
lea edx, [0x53a124]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.004d4f10
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x170]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x609a90]
test ecx, ecx
jne 0x4d678b
mov dword [edx + 0x40], eax
jmp 0x4d6793
lea edi, [edx + 0x40]
call fcn.0045dbb0
mov ecx, edx
mov dword [esp], ecx
call fcn.004d5020
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
add esp, 0x16c
ret
mov eax, dword [edx + 0x4c]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov eax, dword [eax + 0x50]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
lea ecx, [eax - 2]
cmp ecx, 0xa
jbe 0x4d6841
cmp eax, 0x18
je 0x4d6841
mov eax, dword [esp + 0x34]
mov ecx, dword [eax + 0x4c]
mov edx, dword [esp + 0xcc]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
lea edx, [0x53a8a0]
cmp eax, edx
jne 0x4d83a4
mov dword [esp], ecx
call fcn.0047ce90
mov eax, dword [0x5e37c8]
mov ecx, dword [0x5e37cc]
mov edx, dword [esp + 4]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0047d150
movzx eax, byte [esp + 0xc]
test al, al
je 0x4d694c
mov ecx, dword [esp + 0xa4]
test ecx, 0x200
je 0x4d6859
mov edx, dword [esp + 0x124]
jmp 0x4d68d6
test ecx, 0x80
je 0x4d686c
mov edx, dword [esp + 0x124]
mov ebp, dword [edx]
jmp 0x4d6875
mov edx, dword [esp + 0x124]
mov ebp, edx
test ebp, ebp
setne bl
xor ebx, 1
test bl, bl
je 0x4d68d6
mov eax, dword [esp + 0x12c]
mov dword [esp], eax
mov ecx, dword [esp + 0xcc]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
call fcn.00482b40
mov eax, dword [esp + 0x120]
mov dword [esp], eax
mov ecx, dword [esp + 0x124]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xa4]
mov dword [esp + 8], edx
call fcn.00481460
mov ecx, dword [esp + 0xa4]
mov edx, dword [esp + 0x124]
xor eax, eax
xor ebx, ebx
xor ebp, ebp
mov dword [esp + 0x74], eax
lea edi, [esp + 0x158]
mov esi, eax
xor eax, eax
call fcn.0045dd8b
mov ecx, dword [esp + 0x170]
mov eax, edx
mov edx, dword [ecx + 0x38]
test edx, edx
je 0x4d6919
lea edi, [esp + 0x158]
mov esi, edx
call fcn.0045e26e
mov ecx, dword [esp + 0x170]
mov esi, dword [esp + 0x74]
mov dword [esp + 0xfc], ebx
mov dword [esp + 0xf8], ebp
lea edx, [ecx + 0x38]
mov dword [esp + 0x11c], edx
xor edi, edi
xor edi, edi
mov dword [esp + 0xe4], edi
xor edi, edi
mov dword [esp + 0xe8], edi
xor edi, edi
jmp 0x4d6b9d
lea eax, [0x502ec0]
mov dword [esp], eax
call fcn.0040b030
mov eax, dword [esp + 4]
mov dword [eax + 4], 6
lea ecx, [0x50d479]
mov dword [eax], ecx
mov ecx, dword [esp + 0x12c]
mov dword [eax + 8], ecx
mov ecx, dword [0x609a90]
test ecx, ecx
jne 0x4d698d
mov ecx, dword [esp + 0xcc]
mov dword [eax + 0xc], ecx
jmp 0x4d69a0
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0xcc]
call fcn.0045dbb0
mov eax, ecx
mov ecx, dword [esp + 0x170]
mov edx, dword [ecx + 0xc]
mov dword [eax + 0x10], edx
sar edx, 0x1f
mov dword [eax + 0x14], edx
mov edx, dword [ecx + 0x3c]
test edx, edx
jne 0x4d69fb
mov dword [esp], ecx
lea edx, [0x53a124]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.004d4f10
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x170]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x609a90]
test ecx, ecx
jne 0x4d69f1
mov dword [edx + 0x40], eax
jmp 0x4d69f9
lea edi, [edx + 0x40]
call fcn.0045dbb0
mov ecx, edx
mov dword [esp], ecx
call fcn.004d5020
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
add esp, 0x16c
ret
mov eax, dword [esp + 0x170]
mov dword [esp], eax
call fcn.004dae60
mov eax, dword [esp + 4]
nop
movzx ecx, byte [0x5e3b10]
test cl, cl
je 0x4d6a6a
lea ecx, [0x4f7c20]
mov dword [0x5e3b14], ecx
mov edx, dword [0x609a90]
test edx, edx
jne 0x4d6a5d
mov dword [0x5e3b18], eax
jmp 0x4d6a70
lea edi, [0x5e3b18]
call fcn.0045dbb0
jmp 0x4d6a70
lea ecx, [0x4f7c20]
mov dword [esp + 0x148], ecx
mov dword [esp + 0x14c], eax
mov ecx, dword [esp + 0x148]
test ecx, ecx
je 0x4d6aa0
nop
movzx edx, byte [ecx + 0xf]
mov ebx, edx
and edx, 0x1f
test bl, 0x20
jne 0x4d6aa6
or edx, 0x80
jmp 0x4d6aa6
xor edx, edx
xor ecx, ecx
xor eax, eax
mov ebx, dword [esp + 0x120]
mov dword [esp], ebx
mov ebx, dword [esp + 0x124]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0xa4]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
call fcn.00481460
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
add esp, 0x16c
ret
mov dword [esp + 0x30], ecx
mov dword [esp + 0xc8], edx
nop
mov eax, dword [esp + 0x170]
mov ecx, dword [eax + 0xc]
mov dword [esp + 0x9c], ecx
mov dword [esp], eax
call fcn.004d5020
mov eax, dword [esp + 0x170]
mov edx, dword [eax + 8]
mov ecx, dword [eax]
mov eax, dword [eax + 0xc]
cmp edx, eax
jb 0x4d6b90
mov ebx, dword [esp + 0x9c]
lea ebp, [ebx - 1]
cmp eax, ebp
jb 0x4d6b87
mov esi, dword [esp + 0x30]
mov esi, dword [esi + 0x10]
mov edi, dword [esp + 0xc8]
mov dword [esp], edi
sub edx, ebx
inc edx
mov edi, edx
neg edx
sar edx, 0x1f
and ebp, edx
add ecx, ebp
mov dword [esp + 4], ecx
sub eax, ebx
inc eax
mov dword [esp + 8], eax
mov dword [esp + 0xc], edi
call esi
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
add esp, 0x16c
ret
mov ecx, eax
mov eax, ebp
call fcn.0045dc90
mov ecx, eax
call fcn.0045dc70
mov ecx, edx
mov edi, dword [esp + 0x54]
mov dword [esp + 0x54], edi
mov dword [esp], ecx
mov dword [esp + 4], 9
call fcn.004d5150
mov eax, dword [esp + 0x170]
mov ecx, dword [eax + 0x10]
cmp ecx, 5
je 0x4d7c99
cmp ecx, 1
jne 0x4d838c
nop
mov ecx, dword [eax + 0xc]
mov dword [esp + 0x9c], ecx
mov dword [esp], eax
call fcn.004d5210
mov eax, dword [esp + 0x170]
mov edx, dword [eax + 8]
mov ecx, dword [eax]
mov ebx, dword [eax + 0xc]
lea ebp, [ebx - 1]
cmp edx, ebp
jb 0x4d8385
mov esi, dword [esp + 0x9c]
lea edi, [esi - 1]
cmp ebp, edi
jb 0x4d837c
sub edx, esi
lea eax, [edx + 1]
mov dword [esp + 0x68], eax
mov edx, eax
neg eax
sar eax, 0x1f
and edi, eax
lea eax, [ecx + edi]
mov dword [esp + 0xf4], eax
mov dword [esp], eax
sub ebx, esi
mov dword [esp + 0x64], ebx
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
call fcn.004db3a0
mov eax, dword [esp + 0xc]
movzx ecx, byte [esp + 0x18]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
test cl, cl
je 0x4d8364
mov dword [esp + 0xf0], eax
mov dword [esp + 0x60], ebx
mov dword [esp + 0x5c], edx
mov ecx, dword [esp + 0xa0]
cmp ecx, 0x15
jne 0x4d6d34
mov eax, dword [esp + 0x34]
mov ecx, dword [eax + 0x28]
mov edx, dword [esp + 0xcc]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x54]
test edx, edx
je 0x4d6cf3
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00482bf0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xe4]
mov dword [esp], ebx
mov ebp, dword [esp + 0xe8]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x54]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
call fcn.00481460
mov edi, dword [esp + 0x54]
mov eax, dword [esp + 0xe4]
mov ecx, dword [esp + 0xe8]
jmp 0x4d6d27
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00482cd0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.00480610
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
xor edx, edx
mov ebx, edi
mov ebp, eax
mov esi, ecx
jmp 0x4d6f8e
lea ecx, [0x4f7be0]
mov dword [esp], ecx
mov ebx, dword [esp + 0xf8]
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
call fcn.0040ed20
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
movzx ecx, byte [esp + 0x14]
test cl, cl
je 0x4d6d90
mov ecx, dword [esp + 0x74]
cmp ecx, eax
jbe 0x4d835f
lea edx, [eax + eax*8]
mov ebx, dword [esp + 0xfc]
lea edx, [ebx + edx*8]
mov eax, ebx
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x5c]
mov esi, dword [esp + 0xf0]
jmp 0x4d6dd6
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x5c]
mov esi, dword [esp + 0xf0]
mov eax, dword [esp + 0xfc]
mov ecx, dword [esp + 0x74]
xor edx, edx
jmp 0x4d7cd7
mov eax, dword [esp + 0xfc]
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x5c]
mov esi, dword [esp + 0xf0]
mov edx, dword [esp + 0x100]
jmp 0x4d6dd6
xor edx, edx
test edx, edx
je 0x4d6e5f
mov dword [esp + 0x100], edx
mov edi, ebx
movzx ebx, byte [edx + 0x41]
mov byte [esp + 0x2f], bl
mov ecx, dword [edx + 0x2c]
mov dword [esp + 0x114], ecx
mov edx, dword [edx + 0x30]
mov dword [esp + 0x98], edx
mov dword [esp + 0xc0], eax
xor eax, eax
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x38], eax
mov dword [esp + 0xb8], ecx
mov ecx, dword [esp + 0x124]
mov dword [esp + 0xd4], ecx
mov dword [esp + 0xb0], edx
mov edx, dword [esp + 0x120]
mov dword [esp + 0xd0], edx
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0xb0]
jmp 0x4d7f09
mov edx, dword [esp + 0x170]
movzx edi, byte [edx + 0x45]
xchg edi, eax
test al, al
xchg edi, eax
je 0x4d6f4c
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
call fcn.00408b20
mov eax, dword [esp + 0xc]
lea ecx, [0x4f3a00]
mov dword [esp + 0x150], ecx
mov dword [esp + 0x154], eax
lea eax, [0x511407]
mov dword [esp], eax
mov dword [esp + 4], 0x16
lea edx, [esp + 0x150]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004aaad0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x170]
mov ebx, dword [edx + 0x3c]
test ebx, ebx
jne 0x4d6f32
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004d4f10
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x170]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x609a90]
test ecx, ecx
jne 0x4d6f2a
mov dword [edx + 0x40], eax
jmp 0x4d6f32
lea edi, [edx + 0x40]
call fcn.0045dbb0
mov eax, dword [esp + 0xfc]
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x5c]
mov esi, dword [esp + 0xf0]
xor edi, edi
xor edi, edi
mov dword [esp + 0x38], edi
xor edi, edi
mov dword [esp + 0xd0], edi
xor edi, edi
mov dword [esp + 0xd4], edi
xor edi, edi
mov eax, dword [esp + 0xe4]
mov ecx, dword [esp + 0xe8]
mov edx, edi
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0xd0]
mov esi, dword [esp + 0xd4]
mov edi, dword [esp + 0x54]
mov dword [esp + 0x54], edi
mov dword [esp + 0xe8], ecx
mov dword [esp + 0xe4], eax
mov dword [esp + 0x38], ebx
mov byte [esp + 0x2f], dl
mov dword [esp + 0xd4], esi
mov dword [esp + 0xd0], ebp
mov eax, dword [esp + 0x170]
cmp dword [eax + 0x10], 9
jne 0x4d6ffc
mov dword [esp], eax
mov dword [esp + 4], 9
call fcn.004d5150
mov eax, dword [esp + 0x170]
mov ecx, dword [esp + 0xe8]
movzx edx, byte [esp + 0x2f]
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0xd0]
mov esi, dword [esp + 0xd4]
mov edi, dword [esp + 0x54]
cmp dword [eax + 0x10], 3
jne 0x4d7e76
mov dword [esp], eax
mov dword [esp + 4], 9
call fcn.004d5150
movzx eax, byte [esp + 0x2f]
test al, al
je 0x4d7265
mov eax, dword [esp + 0x170]
mov dword [esp], eax
call fcn.004d5530
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
test eax, eax
je 0x4d71ee
cmp dword [eax + 8], 0xe0ff5cb4
jne 0x4d70ee
lea eax, [0x4f71c0]
cmp ecx, eax
jne 0x4d70ee
mov eax, dword [edx + 4]
mov ecx, dword [edx]
mov dword [esp], 0
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0044a920
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x170]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0x38]
mov dword [esp + 0x18], edx
mov byte [esp + 0x1c], 1
call fcn.004d85a0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
test eax, eax
jne 0x4d7d47
mov ebx, dword [esp + 0xa0]
cmp ebx, 0x15
mov edx, dword [esp + 0x170]
jmp 0x4d72b7
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov ecx, dword [esp + 0xd4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x38]
mov dword [esp + 8], edx
call fcn.00482420
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0
test eax, eax
je 0x4d7135
mov eax, dword [eax + 4]
mov dword [esp + 0x150], eax
mov dword [esp + 0x154], ecx
lea eax, [0x5184af]
mov dword [esp], eax
mov dword [esp + 4], 0x53
lea ecx, [esp + 0x150]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004aaad0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x170]
mov ebx, dword [edx + 0x3c]
test ebx, ebx
je 0x4d7199
mov ebx, dword [esp + 0xa0]
cmp ebx, 0x15
jmp 0x4d72b7
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004d4f10
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x170]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x609a90]
test ecx, ecx
jne 0x4d71d7
mov dword [edx + 0x40], eax
mov ebx, dword [esp + 0xa0]
cmp ebx, 0x15
jmp 0x4d72b7
lea edi, [edx + 0x40]
call fcn.0045dbb0
mov ebx, dword [esp + 0xa0]
cmp ebx, 0x15
jmp 0x4d72b7
mov eax, dword [str.null_]
mov ecx, dword [0x5dfcac]
mov edx, dword [0x5dfcb0]
mov ebx, dword [esp + 0x170]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0x38]
mov dword [esp + 0x18], edx
mov byte [esp + 0x1c], 0
call fcn.004d85a0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
test eax, eax
jne 0x4d7d5c
mov ebx, dword [esp + 0xa0]
cmp ebx, 0x15
mov edx, dword [esp + 0x170]
jmp 0x4d72b7
mov eax, dword [esp + 0x170]
mov dword [esp], eax
mov ecx, dword [esp + 0xd0]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xd4]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x38]
mov dword [esp + 0xc], ebx
call fcn.004d5360
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
test eax, eax
jne 0x4d7d86
mov ebx, dword [esp + 0xa0]
cmp ebx, 0x15
mov edx, dword [esp + 0x170]
jne 0x4d7c19
mov eax, dword [esp + 0x34]
mov ecx, dword [eax + 0x4c]
mov edx, dword [esp + 0xcc]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 4]
mov ebx, dword [esp + 8]
lea ebp, [0x53a8a0]
cmp eax, ebp
jne 0x4d7e5a
mov dword [esp + 0x128], eax
mov dword [esp + 0xec], ecx
mov dword [esp + 0x58], edx
mov dword [esp], ebx
call fcn.0047ce90
mov eax, dword [0x5e37c8]
mov ecx, dword [0x5e37cc]
mov edx, dword [esp + 4]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0047d150
movzx eax, byte [esp + 0xc]
test al, al
jne 0x4d7afa
mov eax, dword [esp + 0x58]
mov ecx, dword [eax + 0x50]
mov edx, dword [esp + 0xec]
mov dword [esp], edx
call ecx
cmp dword [esp + 4], 0x18
jne 0x4d7429
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
call fcn.00408b20
mov eax, dword [esp + 0xc]
nop
movzx ecx, byte [0x5e3b10]
test cl, cl
je 0x4d73ad
lea ecx, [0x4f3a00]
mov dword [0x5e3b14], ecx
mov edx, dword [0x609a90]
test edx, edx
jne 0x4d73a0
mov dword [0x5e3b18], eax
jmp 0x4d73b3
lea edi, [0x5e3b18]
call fcn.0045dbb0
jmp 0x4d73b3
lea ecx, [0x4f3a00]
mov dword [esp + 0x140], ecx
mov dword [esp + 0x144], eax
mov edx, dword [esp + 0x140]
test edx, edx
je 0x4d73e5
nop
movzx ebx, byte [edx + 0xf]
mov ebp, ebx
and ebx, 0x1f
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x4d73eb
or ebx, 0x80
jmp 0x4d73eb
xor ebx, ebx
xor edx, edx
xor eax, eax
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov eax, dword [esp + 0x128]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xec]
mov dword [esp + 0x10], eax
call fcn.00483050
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x170]
jmp 0x4d7bb6
mov eax, dword [esp + 0x58]
mov eax, dword [eax + 0x50]
mov ecx, dword [esp + 0xec]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
lea ecx, [eax - 2]
cmp ecx, 4
jbe 0x4d7798
add eax, 0xfffffff9
cmp eax, 5
ja 0x4d7e42
mov dword [esp], 0
mov eax, dword [esp + 0xf0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 8], eax
call fcn.0044a7c0
mov eax, dword [esp + 0xc]
mov dword [esp + 0xd8], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x3c], ecx
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call fcn.0046ff60
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
test edx, edx
je 0x4d74c0
mov edx, 1
jmp 0x4d75bf
mov dword [esp + 0x44], ecx
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x128]
mov dword [esp], eax
mov ecx, dword [esp + 0xec]
mov dword [esp + 4], ecx
call fcn.00482bf0
mov eax, dword [esp + 0x10]
and eax, 0x1f
lea ecx, [eax - 7]
mov edx, dword [esp + 8]
cmp ecx, 5
ja 0x4d7dfe
mov eax, dword [edx]
shl eax, 3
add eax, 0xffffffc0
neg eax
cmp eax, 0x20
sbb edx, edx
mov dword [esp + 0x94], edx
lea ecx, [eax - 0x20]
cmp ecx, 0x20
sbb ebx, ebx
mov dword [esp + 0x90], ebx
mov ebp, ecx
neg ecx
mov dword [esp + 0x8c], ecx
cmp ecx, 0x20
sbb esi, esi
mov dword [esp + 0x88], esi
mov edi, ecx
mov ecx, ebp
mov edx, dword [esp + 0x44]
shl edx, cl
and edx, ebx
mov ecx, edi
mov ebx, dword [esp + 0x44]
shr ebx, cl
and ebx, esi
mov ecx, eax
mov esi, dword [esp + 0x50]
shl esi, cl
mov edi, dword [esp + 0x94]
and esi, edi
or esi, ebx
or esi, edx
mov dword [esp + 0x94], esi
mov edx, dword [esp + 0x44]
mov ebx, edx
shl edx, cl
and edx, edi
mov ecx, ebp
mov ebp, esi
shr esi, cl
mov ecx, ebx
mov ebx, dword [esp + 0x90]
and esi, ebx
mov ebx, ecx
mov ecx, dword [esp + 0x8c]
shl ebp, cl
mov ecx, eax
shr edx, cl
mov eax, dword [esp + 0x88]
and ebp, eax
and edx, edi
or edx, ebp
or edx, esi
cmp ebx, edx
setne al
mov edx, dword [esp + 0x94]
shr edx, cl
and edx, edi
mov ebp, dword [esp + 0x50]
cmp ebp, edx
setne dl
or edx, eax
mov eax, ebp
mov ecx, ebx
test dl, dl
je 0x4d76d5
lea eax, [0x502ec0]
mov dword [esp], eax
call fcn.0040b030
mov eax, dword [esp + 4]
mov dword [esp + 0x110], eax
mov dword [esp], 0
lea ecx, [0x50d703]
mov dword [esp + 4], ecx
mov dword [esp + 8], 7
mov edx, dword [esp + 0xd8]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x10], edx
call fcn.0044a510
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0x110]
mov dword [edi + 4], ecx
mov ecx, dword [0x609a90]
test ecx, ecx
jne 0x4d7631
mov dword [edi], eax
jmp 0x4d7636
call fcn.0045dbb0
mov ebx, dword [esp + 0x128]
mov dword [edi + 8], ebx
mov ebx, dword [0x609a90]
test ebx, ebx
jne 0x4d7656
mov ebx, dword [esp + 0xec]
mov dword [edi + 0xc], ebx
jmp 0x4d766b
lea ebx, [edi + 0xc]
mov eax, dword [esp + 0xec]
mov ecx, edi
mov edi, ebx
call fcn.0045dbb0
mov edi, ecx
mov ebx, dword [esp + 0x9c]
mov dword [edi + 0x10], ebx
sar ebx, 0x1f
mov dword [edi + 0x14], ebx
mov ebx, dword [esp + 0x170]
mov ebp, dword [ebx + 0x3c]
test ebp, ebp
jne 0x4d76ca
mov dword [esp], ebx
lea eax, [0x53a124]
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call fcn.004d4f10
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x170]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x609a90]
test ecx, ecx
jne 0x4d76c0
mov dword [edx + 0x40], eax
jmp 0x4d76c8
lea edi, [edx + 0x40]
call fcn.0045dbb0
mov ebx, edx
xor edx, edx
xor eax, eax
xor ecx, ecx
jmp 0x4d7bb6
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.004089f0
mov eax, dword [esp + 8]
nop
movzx ecx, byte [0x5e3b10]
test cl, cl
je 0x4d771c
lea ecx, [0x4f7340]
mov dword [0x5e3b14], ecx
mov edx, dword [0x609a90]
test edx, edx
jne 0x4d770f
mov dword [0x5e3b18], eax
jmp 0x4d7722
lea edi, [0x5e3b18]
call fcn.0045dbb0
jmp 0x4d7722
lea ecx, [0x4f7340]
mov dword [esp + 0x130], ecx
mov dword [esp + 0x134], eax
mov edx, dword [esp + 0x130]
test edx, edx
je 0x4d7754
nop
movzx ebx, byte [edx + 0xf]
mov ebp, ebx
and ebx, 0x1f
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x4d775a
or ebx, 0x80
jmp 0x4d775a
xor ebx, ebx
xor edx, edx
xor eax, eax
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov eax, dword [esp + 0x128]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xec]
mov dword [esp + 0x10], eax
call fcn.00483050
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x170]
jmp 0x4d7bb6
mov dword [esp], 0
mov eax, dword [esp + 0xf0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 8], eax
call fcn.0044a7c0
mov eax, dword [esp + 0xc]
mov dword [esp + 0xdc], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x40], ecx
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call fcn.00470740
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
test edx, edx
je 0x4d7800
mov edx, 1
jmp 0x4d7921
mov dword [esp + 0x4c], eax
mov dword [esp + 0x48], ecx
mov eax, dword [esp + 0x128]
mov dword [esp], eax
mov ecx, dword [esp + 0xec]
mov dword [esp + 4], ecx
call fcn.00482bf0
mov eax, dword [esp + 0x10]
and eax, 0x1f
lea ecx, [eax - 2]
mov edx, dword [esp + 8]
cmp ecx, 4
ja 0x4d7dba
mov eax, dword [edx]
shl eax, 3
lea ecx, [eax - 0x40]
neg ecx
mov dword [esp + 0x84], ecx
cmp ecx, 0x20
sbb eax, eax
lea edx, [ecx - 0x20]
mov ebx, edx
neg edx
mov dword [esp + 0x94], edx
cmp edx, 0x20
sbb ebp, ebp
mov dword [esp + 0x90], ebp
cmp ebx, 0x20
sbb esi, esi
mov edi, ecx
shr ecx, 5
cmp ecx, 1
sbb ebp, ebp
mov dword [esp + 0x8c], ebp
cmp edi, 0x20
sbb ebp, ebp
mov dword [esp + 0x80], ebp
mov ecx, edi
mov ebp, dword [esp + 0x4c]
shl ebp, cl
mov ecx, edx
mov edi, dword [esp + 0x48]
shr edi, cl
mov ecx, ebx
mov edx, dword [esp + 0x48]
shl edx, cl
and edx, esi
and ebp, eax
mov ebx, dword [esp + 0x90]
and edi, ebx
or ebp, edi
or ebp, edx
mov edx, ecx
mov ecx, dword [esp + 0x84]
mov edi, dword [esp + 0x48]
shl edi, cl
and edi, eax
xchg esi, ebx
not ebx
xchg esi, ebx
or esi, edx
mov edx, ecx
mov ecx, esi
mov esi, ebp
sar ebp, cl
mov ecx, edx
shr edi, cl
and edi, eax
mov ecx, dword [esp + 0x94]
mov eax, esi
shl esi, cl
and esi, ebx
or edi, esi
mov ebx, dword [esp + 0x8c]
xor ebx, 0xffffffff
and ebx, ebp
or ebx, edi
mov ebp, dword [esp + 0x48]
cmp ebp, ebx
setne bl
mov ecx, dword [esp + 0x80]
not ecx
or ecx, edx
sar eax, cl
mov edx, dword [esp + 0x4c]
cmp edx, eax
setne al
or eax, ebx
mov ecx, ebp
mov ebx, eax
mov eax, edx
mov edx, ebx
test dl, dl
je 0x4d7a37
lea eax, [0x502ec0]
mov dword [esp], eax
call fcn.0040b030
mov eax, dword [esp + 4]
mov dword [esp + 0x110], eax
mov dword [esp], 0
lea ecx, [0x50d703]
mov dword [esp + 4], ecx
mov dword [esp + 8], 7
mov edx, dword [esp + 0xdc]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x10], edx
call fcn.0044a510
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0x110]
mov dword [edi + 4], ecx
mov ecx, dword [0x609a90]
test ecx, ecx
jne 0x4d7993
mov dword [edi], eax
jmp 0x4d7998
call fcn.0045dbb0
mov ebx, dword [esp + 0x128]
mov dword [edi + 8], ebx
mov ebx, dword [0x609a90]
test ebx, ebx
jne 0x4d79b8
mov ebx, dword [esp + 0xec]
mov dword [edi + 0xc], ebx
jmp 0x4d79cd
lea ebx, [edi + 0xc]
mov eax, dword [esp + 0xec]
mov ecx, edi
mov edi, ebx
call fcn.0045dbb0
mov edi, ecx
mov ebx, dword [esp + 0x9c]
mov dword [edi + 0x10], ebx
sar ebx, 0x1f
mov dword [edi + 0x14], ebx
mov ebx, dword [esp + 0x170]
mov ebp, dword [ebx + 0x3c]
test ebp, ebp
jne 0x4d7a2c
mov dword [esp], ebx
lea eax, [0x53a124]
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call fcn.004d4f10
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x170]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x609a90]
test ecx, ecx
jne 0x4d7a22
mov dword [edx + 0x40], eax
jmp 0x4d7a2a
lea edi, [edx + 0x40]
call fcn.0045dbb0
mov ebx, edx
xor edx, edx
xor eax, eax
xor ecx, ecx
jmp 0x4d7bb6
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.004089f0
mov eax, dword [esp + 8]
nop
movzx ecx, byte [0x5e3b10]
test cl, cl
je 0x4d7a7e
lea ecx, [0x4f6b80]
mov dword [0x5e3b14], ecx
mov edx, dword [0x609a90]
test edx, edx
jne 0x4d7a71
mov dword [0x5e3b18], eax
jmp 0x4d7a84
lea edi, [0x5e3b18]
call fcn.0045dbb0
jmp 0x4d7a84
lea ecx, [0x4f6b80]
mov dword [esp + 0x138], ecx
mov dword [esp + 0x13c], eax
mov edx, dword [esp + 0x138]
test edx, edx
je 0x4d7ab6
nop
movzx ebx, byte [edx + 0xf]
mov ebp, ebx
and ebx, 0x1f
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x4d7abc
or ebx, 0x80
jmp 0x4d7abc
xor ebx, ebx
xor edx, edx
xor eax, eax
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov eax, dword [esp + 0x128]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xec]
mov dword [esp + 0x10], eax
call fcn.00483050
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x170]
jmp 0x4d7bb6
mov eax, dword [esp + 0x128]
mov dword [esp], eax
mov eax, dword [esp + 0xec]
mov dword [esp + 4], eax
call fcn.00482cd0
mov eax, dword [esp + 8]
mov dword [esp + 0x10c], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x108], ecx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x7c], edx
mov ebx, dword [esp + 0x170]
mov dword [esp], ebx
mov ebp, dword [esp + 0xf4]
mov dword [esp + 4], ebp
mov ebp, dword [esp + 0x64]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x68]
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], edx
mov byte [esp + 0x1c], 1
call fcn.004d85a0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
test eax, eax
jne 0x4d7d71
mov eax, dword [esp + 0x10c]
mov dword [esp], eax
mov eax, dword [esp + 0x108]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 8], eax
call fcn.00480610
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x170]
test edx, edx
je 0x4d7c10
mov ebx, dword [esp + 0x120]
mov dword [esp], ebx
mov ebp, dword [esp + 0x124]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0xa4]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x20], eax
call fcn.00481b00
mov ebx, dword [esp + 0x170]
mov edx, ebx
mov ebx, dword [esp + 0xa0]
cmp dword [edx + 0x10], 9
jne 0x4d7c3d
mov dword [esp], edx
mov dword [esp + 4], 9
call fcn.004d5150
mov edx, dword [esp + 0x170]
mov ebx, dword [esp + 0xa0]
mov ebp, dword [edx + 0x38]
test ebp, ebp
je 0x4d7c83
mov esi, dword [ebp + 0x10]
mov ecx, dword [esp + 0x164]
cmp ecx, esi
ja 0x4d7db3
mov dword [ebp + 0xc], ecx
mov ecx, dword [edx + 0x38]
mov eax, dword [esp + 0x15c]
mov ebp, dword [esp + 0x158]
mov dword [ecx], ebp
mov ebp, dword [0x609a90]
test ebp, ebp
jne 0x4d7c7b
mov dword [ecx + 4], eax
jmp 0x4d7c83
lea edi, [ecx + 4]
call fcn.0045dbb0
mov eax, dword [edx + 0x10]
cmp eax, 5
je 0x4d7c99
cmp eax, 4
je 0x4d6b97
jmp 0x4d7d9b
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], 0
add esp, 0x16c
ret
mov eax, dword [esp + 0x70]
lea edx, [eax + 1]
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x5c]
mov esi, dword [esp + 0xf0]
mov eax, dword [esp + 0xfc]
mov ecx, dword [esp + 0x74]
cmp edx, ecx
jge 0x4d6dd4
jae 0x4d8358
mov dword [esp + 0x70], edx
lea ecx, [edx + edx*8]
lea edi, [eax + ecx*8]
mov dword [esp + 0x100], edi
lea ebx, [eax + ecx*8 + 0x14]
mov ebx, dword [ebx]
mov dword [esp + 0x118], ebx
mov ebx, dword [ebx]
lea ecx, [eax + ecx*8 + 8]
mov ecx, dword [ecx]
mov eax, dword [edi + 0xc]
mov edi, dword [edi + 0x10]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edi
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
mov eax, dword [esp + 0x60]
mov dword [esp + 0x14], eax
mov edx, dword [esp + 0x118]
call ebx
movzx eax, byte [esp + 0x18]
test al, al
je 0x4d7cb6
jmp 0x4d6db1
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], edx
add esp, 0x16c
ret
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], edx
add esp, 0x16c
ret
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], edx
add esp, 0x16c
ret
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], edx
add esp, 0x16c
ret
lea eax, [0x4f71c0]
mov dword [esp], eax
lea eax, [0x539d60]
mov dword [esp + 4], eax
call fcn.00433300
mov edx, esi
call fcn.0045dc70
mov dword [esp + 0xa4], eax
lea eax, [0x4fd2e0]
mov dword [esp], eax
call fcn.0040b030
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x19
lea ecx, [0x512521]
mov dword [eax], ecx
mov ecx, dword [esp + 0xa4]
mov dword [eax + 8], ecx
lea ecx, [0x4f92c0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00433300
mov dword [esp + 0xa4], eax
lea eax, [0x4fd2e0]
mov dword [esp], eax
call fcn.0040b030
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1a
lea ecx, [0x512a3e]
mov dword [eax], ecx
mov ecx, dword [esp + 0xa4]
mov dword [eax + 8], ecx
lea ecx, [0x4f92c0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00433300
lea eax, [0x4f71c0]
mov dword [esp], eax
lea eax, [0x539d78]
mov dword [esp + 4], eax
call fcn.00433300
mov dword [esp], eax
lea eax, [0x50ac40]
mov dword [esp + 4], eax
lea eax, [0x5081a0]
mov dword [esp + 8], eax
call fcn.00408800
lea eax, [0x4f71c0]
mov dword [esp], eax
lea eax, [0x539d60]
mov dword [esp + 4], eax
call fcn.00433300
mov ecx, dword [esp + 0xd0]
mov dword [esp], ecx
mov ecx, dword [esp + 0xd4]
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov dword [esp + 0xc], eax
call fcn.004807c0
mov eax, dword [esp + 0x78]
inc eax
mov esi, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x114]
mov ebx, dword [esp + 0x98]
mov edx, ebx
movzx ebx, byte [esp + 0x2f]
mov edi, dword [esp + 0x60]
mov dword [esp + 0x78], eax
mov dword [esp + 0x38], ecx
mov dword [esp + 0xd4], ebp
mov dword [esp + 0xd0], esi
mov eax, dword [esp + 0xfc]
mov ecx, dword [esp + 0x114]
mov ebp, dword [esp + 0x5c]
mov esi, dword [esp + 0xf0]
mov ebp, dword [esp + 0x78]
cmp ebp, edx
jge 0x4d8167
mov eax, dword [ecx + ebp*4]
nop
mov edi, dword [esp + 0x38]
and edi, 0x1f
cmp edi, 0x16
jne 0x4d8073
mov dword [esp + 0x6c], eax
mov edi, dword [esp + 0x38]
test edi, 0x200
jne 0x4d8030
test edi, 0x80
je 0x4d7f63
mov esi, dword [esp + 0xd4]
mov ebx, dword [esi]
mov esi, dword [esp + 0xf0]
mov dword [esp + 0xe0], ebx
movzx ebx, byte [esp + 0x2f]
jmp 0x4d7f7f
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 0xe0], eax
mov eax, dword [esp + 0xa8]
mov esi, dword [esp + 0xe0]
test esi, esi
xchg esi, ebx
setne bl
xchg esi, ebx
xor esi, 1
xchg esi, eax
test al, al
xchg esi, eax
je 0x4d8030
mov esi, edi
and edi, 0x160
cmp edi, 0x100
jne 0x4d807c
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov ecx, dword [esp + 0xd4]
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
call fcn.00482420
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x28]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00482cd0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xd0]
mov dword [esp], ebx
mov ebp, dword [esp + 0xd4]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x38]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
call fcn.00481460
mov edi, dword [esp + 0x38]
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call fcn.00480610
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov edi, edx
mov dword [esp + 0xd0], eax
mov dword [esp + 0xd4], ecx
mov eax, dword [esp + 0x6c]
jmp 0x4d7e8e
mov edi, dword [esp + 0x38]
jmp 0x4d7e8e
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 4], eax
mov dword [esp + 8], esi
call fcn.00482420
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x28]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 0
test eax, eax
je 0x4d80cf
mov eax, dword [eax + 4]
mov dword [esp + 0x150], eax
mov dword [esp + 0x154], ecx
lea eax, [0x517e6f]
mov dword [esp], eax
mov dword [esp + 4], 0x3a
lea ecx, [esp + 0x150]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004aaad0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x170]
mov ebx, dword [edx + 0x3c]
test ebx, ebx
jne 0x4d815d
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004d4f10
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x170]
mov dword [edx + 0x3c], ecx
mov ecx, dword [0x609a90]
test ecx, ecx
jne 0x4d8155
mov dword [edx + 0x40], eax
jmp 0x4d815d
lea edi, [edx + 0x40]
call fcn.0045dbb0
xor ebx, ebx
xor eax, eax
xor ecx, ecx
xor ebp, ebp
jmp 0x4d8180
mov edx, dword [esp + 0x170]
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0xd0]
mov ebp, dword [esp + 0xd4]
mov dword [esp + 0x38], eax
mov dword [esp + 0xd4], ebp
mov dword [esp + 0xd0], ecx
mov byte [esp + 0x2f], bl
mov esi, dword [edx + 0x38]
test esi, esi
jne 0x4d81f1
lea eax, [0x4fcb60]
mov dword [esp], eax
call fcn.0040b030
mov eax, dword [0x609a90]
mov ecx, dword [esp + 4]
test eax, eax
jne 0x4d81c5
mov edx, dword [esp + 0x170]
mov dword [edx + 0x38], ecx
jmp 0x4d81da
mov edi, dword [esp + 0x11c]
mov eax, ecx
call fcn.0045dbb0
mov edx, dword [esp + 0x170]
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0xd0]
movzx ebx, byte [esp + 0x2f]
mov ebp, dword [esp + 0xd4]
mov esi, dword [edx + 0x38]
mov dword [esp + 0x104], esi
mov edi, ecx
mov ecx, dword [esi + 0xc]
mov dword [esp + 0x98], ecx
mov ebx, dword [esi + 0x10]
lea ebp, [ecx + 1]
mov edx, dword [esi + 8]
mov esi, dword [esp + 0x100]
mov ecx, dword [esi]
mov dword [esp + 0x128], ecx
mov esi, dword [esi + 4]
cmp ebx, ebp
jb 0x4d8230
mov ebx, dword [esp + 0x98]
jmp 0x4d82a0
mov dword [esp + 0x78], esi
lea eax, [0x4f71c0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov ecx, dword [esp + 0x98]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebp
call fcn.00447020
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x104]
mov dword [ebx + 0x10], edx
mov edx, dword [0x609a90]
test edx, edx
jne 0x4d827e
mov dword [ebx + 8], eax
jmp 0x4d8286
lea edi, [ebx + 8]
call fcn.0045dbb0
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0xd0]
mov ebx, ecx
mov edx, eax
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x128]
lea ebp, [ebx + 1]
mov ecx, dword [esp + 0x104]
mov dword [ecx + 0xc], ebp
lea ecx, [edx + ebx*8 + 4]
mov dword [ecx], esi
mov ecx, dword [0x609a90]
lea edx, [edx + ebx*8]
test ecx, ecx
jne 0x4d82cb
mov ecx, dword [esp + 0x128]
mov dword [edx], ecx
jmp 0x4d82e1
mov ecx, edi
mov edi, edx
mov ebx, eax
mov eax, dword [esp + 0x128]
call fcn.0045dbb0
mov eax, ebx
mov edi, ecx
mov ecx, dword [esp + 0x170]
mov edx, dword [ecx + 0x38]
mov ebx, dword [esp + 0x12c]
mov dword [edx], ebx
mov ebp, dword [0x609a90]
test ebp, ebp
jne 0x4d830a
mov ebp, dword [esp + 0xcc]
mov dword [edx + 4], ebp
jmp 0x4d832d
add edx, 4
mov edi, edx
mov esi, eax
mov eax, dword [esp + 0xcc]
call fcn.0045dbb0
mov eax, esi
mov ebp, dword [esp + 0xcc]
mov edi, dword [esp + 0xd0]
mov eax, dword [esp + 0xfc]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x170]
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x5c]
mov esi, dword [esp + 0xf0]
movzx edi, byte [esp + 0x2f]
jmp 0x4d6f68
mov eax, edx
call fcn.0045dc30
call fcn.0045dc30
lea eax, [0x4f71c0]
mov dword [esp], eax
lea eax, [0x539d60]
mov dword [esp + 4], eax
call fcn.00433300
mov eax, edi
mov ecx, ebp
call fcn.0045dc90
mov ecx, ebp
call fcn.0045dc70
lea eax, [0x4f71c0]
mov dword [esp], eax
lea eax, [0x539d60]
mov dword [esp + 4], eax
call fcn.00433300
mov dword [esp], eax
lea eax, [0x50ac40]
mov dword [esp + 4], eax
lea eax, [0x5081a0]
mov dword [esp + 8], eax
call fcn.00408800
nop
call fcn.0045c7a0
jmp fcn.004d6470