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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x48]
cmp eax, dword [ecx + 8]
jbe 0x4e65cf
sub esp, 0xc8
mov eax, dword [esp + 0xd8]
mov dword [esp], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xe0]
mov dword [esp + 8], eax
call fcn.004e13e0
mov eax, dword [esp + 0x10]
mov dword [esp + 0xdc], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xe0], ecx
mov edx, dword [esp + 0xc]
mov dword [esp + 0xd8], edx
mov ebx, dword [esp + 0xe4]
mov dword [esp], ebx
mov ebx, dword [esp + 0xe8]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0xec]
mov dword [esp + 8], ebx
call fcn.004e13e0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0xdc]
test ebx, ebx
je 0x4e64dd
cmp eax, 0x64
jl 0x4e648b
mov ebp, ebx
sub ebx, eax
test ebx, ebx
jl 0x4e6484
mov esi, dword [esp + 0xf0]
mov edi, ebp
mov ebp, dword [esp + 0xfc]
cmp esi, ebp
jae 0x4e65c5
mov dword [esp + 0x7c], ebx
mov dword [esp + 0xec], edx
mov dword [esp + 0xe8], eax
mov dword [esp + 0xe4], ecx
shr eax, 1
mov dword [esp + 0x88], eax
mov ebp, dword [esp + 0xf8]
mov ebx, dword [ebp + esi*4]
lea ebp, [ebp + esi*4]
test ebx, ebx
je 0x4e6417
mov ebp, dword [ebx + 8]
mov ebx, dword [ebx]
lea esi, [eax + 1]
cmp esi, ebp
jg 0x4e6378
ja 0x4e65bc
mov dword [esp + 0xa4], ebx
mov edx, dword [esp + 0xf0]
mov ebx, dword [esp + 0xf8]
mov edx, dword [ebx + edx*4]
mov dword [edx + 4], esi
mov dword [edx + 8], ebp
mov ebp, dword [0x7e34e0]
test ebp, ebp
jne 0x4e635d
mov ebp, dword [esp + 0xa4]
mov dword [edx], ebp
mov edx, dword [esp + 0xf0]
mov ebp, dword [esp + 0x7c]
jmp 0x4e5acd
mov eax, dword [esp + 0xc4]
mov dword [esp], eax
sub ebx, ecx
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x98]
mov dword [esp + 8], ebx
mov ebp, dword [esp + 0xc0]
mov dword [esp + 0xc], ebp
mov esi, dword [esp + 0x8c]
mov dword [esp + 0x10], esi
mov edi, dword [esp + 0x90]
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], 0
call fcn.004e2b30
mov eax, dword [esp + 0x84]
lea ebx, [eax + 1]
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0xb0]
cmp ebx, 2
jge 0x4e5952
mov dword [esp + 0x84], ebx
mov eax, dword [esp + 0xa8]
mov dword [esp], eax
mov ecx, dword [esp + 0x50]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x9c]
mov dword [esp + 8], edx
call fcn.004e13e0
mov eax, dword [esp + 0xb0]
mov dword [esp], eax
mov ecx, dword [esp + 0x60]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x68]
mov dword [esp + 8], edx
call fcn.004e1b50
mov eax, dword [esp + 0x18]
test eax, eax
jle 0x4e5952
mov eax, dword [esp + 0xb8]
mov dword [esp], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x74]
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], 1
call fcn.004eb220
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x68]
cmp ecx, edx
ja 0x4e658a
mov eax, dword [esp + 0xb0]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov ebx, dword [esp + 0xe4]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ecx
mov ebp, dword [esp + 0xec]
mov dword [esp + 0x20], ebp
call fcn.004eb1b0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x60]
cmp ecx, edx
jl 0x4e5907
mov ebx, dword [esp + 0x50]
cmp ecx, ebx
jbe 0x4e57a7
jmp 0x4e6581
mov ebx, dword [esp + 0x68]
sub ebx, ecx
mov esi, ebx
neg ebx
sar ebx, 0x1f
mov edi, dword [esp + 0x94]
and ebx, edi
mov edi, dword [esp + 0xb0]
add ebx, edi
mov dword [esp], ebx
sub edx, ecx
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], eax
call fcn.004eb220
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x60]
jmp 0x4e58f6
mov eax, dword [esp + 0xa8]
mov dword [esp], eax
mov ecx, dword [esp + 0x50]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x9c]
mov dword [esp + 8], edx
call fcn.004e13e0
mov eax, dword [esp + 0xb0]
mov dword [esp], eax
mov ecx, dword [esp + 0x60]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x68]
mov dword [esp + 8], edx
call fcn.004e1b50
mov eax, dword [esp + 0x18]
test eax, eax
jg 0x4e6569
mov edx, dword [esp + 0x9c]
mov ecx, dword [esp + 0x60]
cmp edx, ecx
jb 0x4e6564
mov eax, dword [esp + 0xa8]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov ebx, dword [esp + 0xb0]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ecx
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x20], ebx
call fcn.004eb1b0
mov eax, dword [esp + 0x24]
test eax, eax
jbe 0x4e5a46
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x60]
cmp ecx, edx
jb 0x4e655d
mov ebx, dword [esp + 0x9c]
sub ebx, edx
mov ebp, ebx
neg ebx
mov esi, edx
shl edx, 2
sar ebx, 0x1f
and ebx, edx
mov edx, dword [esp + 0xa8]
add edx, ebx
mov dword [esp], edx
sub ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], eax
call fcn.004eb220
mov eax, dword [esp + 0xcc]
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 + 0xb8]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x70]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x74]
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0xa0]
mov dword [esp + 0x18], ebx
call fcn.004e2b30
mov eax, dword [esp + 0xf8]
mov ecx, dword [esp + 0xdc]
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xa0]
mov eax, edx
mov ecx, dword [esp + 0xe4]
mov edx, ebx
mov ebx, dword [esp + 0xf8]
mov edi, dword [esp + 0xdc]
cmp eax, ebp
jge 0x4e5dbe
sub ebp, eax
cmp ebp, edi
ja 0x4e65b3
mov dword [esp + 0xa0], ebp
mov eax, dword [ebx + edx*4]
mov ecx, dword [eax]
mov dword [esp + 0xb8], ecx
mov ebp, dword [eax + 4]
mov dword [esp + 0x70], ebp
mov eax, dword [eax + 8]
mov dword [esp + 0x74], eax
mov dword [esp], ecx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
call fcn.004e13a0
mov edx, dword [esp + 0xe0]
mov eax, dword [esp + 0xa0]
sub edx, eax
mov ebx, dword [esp + 0xdc]
sub ebx, eax
mov esi, edx
neg edx
shl eax, 2
sar edx, 0x1f
and eax, edx
mov edx, dword [esp + 0xd8]
add eax, edx
mov edx, dword [esp + 0xe8]
mov ecx, dword [esp + 0x88]
lea ebp, [ecx + edx]
cmp esi, ebp
jb 0x4e65aa
lea edi, [ecx - 1]
cmp edi, ebp
ja 0x4e65a1
mov dword [esp + 0x54], edi
mov dword [esp + 0x50], ebx
mov dword [esp + 0x9c], esi
sub esi, edi
mov dword [esp + 0x98], esi
shl edi, 2
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, edi
add esi, eax
mov ebx, dword [esp + 0x54]
sub ebp, ebx
cmp ebx, edx
ja 0x4e6598
mov dword [esp + 0xa8], eax
mov dword [esp + 0x94], edi
mov dword [esp + 0xc4], esi
mov eax, dword [esp + 0xb8]
mov dword [esp], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x74]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
mov ebp, dword [esp + 0x98]
mov dword [esp + 0x14], ebp
mov ebp, dword [esp + 0xec]
sub ebp, ebx
mov dword [esp + 0x90], ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, edi
mov edi, dword [esp + 0xe4]
add ebp, edi
mov dword [esp + 0xc0], ebp
mov dword [esp + 0x18], ebp
sub edx, ebx
mov dword [esp + 0x8c], edx
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x90]
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0xf0]
inc edx
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0xf4]
mov dword [esp + 0x28], edx
mov ebp, dword [esp + 0xf8]
mov dword [esp + 0x2c], ebp
mov ebp, dword [esp + 0xfc]
mov dword [esp + 0x30], ebp
mov ebp, dword [esp + 0x100]
mov dword [esp + 0x34], ebp
call fcn.004e5640
mov eax, dword [esp + 0xb8]
mov dword [esp], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 8], eax
call fcn.004e13e0
mov eax, dword [esp + 0xc]
mov dword [esp + 0xb8], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x70], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x74], edx
mov ebx, dword [esp + 0xf4]
mov ebp, dword [ebx + 8]
mov esi, dword [ebx]
mov edi, dword [esp + 0xe8]
lea ebx, [edi + edi*2]
cmp ebp, ebx
jl 0x4e5d55
jb 0x4e658f
mov dword [esp + 0x68], ebp
mov dword [esp + 0x60], ebx
mov dword [esp + 0xb0], esi
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
call fcn.004e13a0
mov eax, dword [esp + 0xb0]
mov dword [esp], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xb8]
mov dword [esp + 0xc], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x10], ecx
mov edx, dword [esp + 0x74]
mov dword [esp + 0x14], edx
mov ebx, dword [esp + 0xe4]
mov dword [esp + 0x18], ebx
mov ebp, dword [esp + 0x54]
mov dword [esp + 0x1c], ebp
mov esi, dword [esp + 0xec]
mov dword [esp + 0x20], esi
call fcn.004e2c80
mov eax, dword [esp + 0x28]
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x68], ecx
mov edx, dword [esp + 0x24]
mov dword [esp + 0xb0], edx
xor ebx, ebx
jmp 0x4e5809
cmp ebx, 1
jne 0x4e5d8b
lea eax, [0x643140]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00444130
mov esi, dword [esp + 0xc]
mov ebp, 1
mov ebx, 1
jmp 0x4e5cbc
mov dword [esp + 0x40], ebx
lea eax, [0x643140]
mov dword [esp], eax
mov dword [esp + 4], ebx
lea ecx, [edi + edi*2 + 4]
mov dword [esp + 0x4c], ecx
mov dword [esp + 8], ecx
call fcn.00444130
mov esi, dword [esp + 0xc]
mov ebp, dword [esp + 0x4c]
mov ebx, dword [esp + 0x40]
jmp 0x4e5cbc
mov eax, dword [ebx + edx*4]
mov ecx, dword [eax]
mov dword [esp + 0xb4], ecx
mov ebp, dword [eax + 4]
mov dword [esp + 0x6c], ebp
mov eax, dword [eax + 8]
mov dword [esp + 0x78], eax
mov dword [esp], ecx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
call fcn.004e13a0
mov eax, dword [esp + 0x88]
dec eax
mov ecx, dword [esp + 0xdc]
cmp ecx, eax
jb 0x4e6558
mov dword [esp + 0x58], eax
mov edx, dword [esp + 0xe0]
sub edx, eax
mov dword [esp + 0xa0], edx
mov ebp, eax
shl eax, 2
mov dword [esp + 0x9c], eax
mov esi, edx
neg edx
sar edx, 0x1f
and edx, eax
mov edi, dword [esp + 0xd8]
add edx, edi
mov dword [esp + 0xc4], edx
mov dword [esp], edx
sub ecx, ebp
mov dword [esp + 0x98], ecx
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
call fcn.004e13e0
mov ecx, dword [esp + 0xe8]
mov eax, dword [esp + 0x58]
cmp ecx, eax
jb 0x4e6553
mov edx, dword [esp + 0xb4]
mov dword [esp], edx
mov ebx, dword [esp + 0x6c]
mov dword [esp + 4], ebx
mov ebp, dword [esp + 0x78]
mov dword [esp + 8], ebp
mov esi, dword [esp + 0xec]
sub esi, eax
mov dword [esp + 0x94], esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
mov edi, dword [esp + 0x9c]
and esi, edi
mov edi, dword [esp + 0xe4]
add esi, edi
mov dword [esp + 0xc0], esi
mov dword [esp + 0x18], esi
sub ecx, eax
mov dword [esp + 0x90], ecx
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0xf0]
inc ecx
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0xf4]
mov dword [esp + 0x28], ecx
mov esi, dword [esp + 0xf8]
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0xfc]
mov dword [esp + 0x30], esi
mov esi, dword [esp + 0x100]
mov dword [esp + 0x34], esi
call fcn.004e5640
mov eax, dword [esp + 0xb4]
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 8], eax
call fcn.004e13e0
mov eax, dword [esp + 0xc]
mov dword [esp + 0xb4], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x6c], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x78], edx
mov ebx, dword [esp + 0xf4]
mov ebp, dword [ebx + 8]
mov ebx, dword [ebx]
mov esi, dword [esp + 0xe8]
lea edi, [esi + esi*2]
cmp ebp, edi
jl 0x4e62f4
jb 0x4e654a
mov dword [esp + 0x64], ebp
mov dword [esp + 0x5c], edi
mov dword [esp + 0xac], ebx
mov dword [esp], ebx
mov dword [esp + 4], edi
mov dword [esp + 8], ebp
call fcn.004e13a0
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xb4]
mov dword [esp + 0xc], eax
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x10], ecx
mov edx, dword [esp + 0x78]
mov dword [esp + 0x14], edx
mov ebx, dword [esp + 0xe4]
mov dword [esp + 0x18], ebx
mov ebp, dword [esp + 0x58]
mov dword [esp + 0x1c], ebp
mov esi, dword [esp + 0xec]
mov dword [esp + 0x20], esi
call fcn.004e2c80
mov eax, dword [esp + 0x28]
mov dword [esp + 0x5c], eax
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x64], ecx
mov edx, dword [esp + 0x24]
mov dword [esp + 0xac], edx
xor ebx, ebx
jmp 0x4e6016
mov ebp, dword [esp + 0x80]
lea ebx, [ebp + 1]
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0xac]
cmp ebx, 2
jge 0x4e619b
mov dword [esp + 0x80], ebx
mov eax, dword [esp + 0xd8]
mov dword [esp], eax
mov ecx, dword [esp + 0xdc]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xe0]
mov dword [esp + 8], edx
call fcn.004e13e0
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov ecx, dword [esp + 0x5c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x64]
mov dword [esp + 8], edx
call fcn.004e1b50
mov eax, dword [esp + 0x18]
test eax, eax
jle 0x4e5ffd
mov eax, dword [esp + 0xb4]
mov dword [esp], eax
mov ecx, dword [esp + 0x6c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x78]
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], 1
call fcn.004eb220
mov edx, dword [esp + 0x64]
mov ecx, dword [esp + 0x58]
cmp edx, ecx
jb 0x4e6545
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov ebx, dword [esp + 0xe4]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ecx
mov ebp, dword [esp + 0xec]
mov dword [esp + 0x20], ebp
call fcn.004eb1b0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x58]
cmp ecx, edx
jg 0x4e6155
mov eax, dword [esp + 0xc4]
mov dword [esp], eax
mov ecx, dword [esp + 0x98]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xa0]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0xc0]
mov dword [esp + 0xc], ebx
mov ebp, dword [esp + 0x90]
mov dword [esp + 0x10], ebp
mov esi, dword [esp + 0x94]
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], 0
call fcn.004e2b30
jmp 0x4e5ffd
mov ebx, dword [esp + 0x64]
sub ebx, edx
mov esi, ebx
neg ebx
sar ebx, 0x1f
mov edi, dword [esp + 0x9c]
and ebx, edi
mov edi, dword [esp + 0xac]
add ebx, edi
mov dword [esp], ebx
sub ecx, edx
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], eax
call fcn.004eb220
jmp 0x4e6102
mov eax, dword [esp + 0xd8]
mov dword [esp], eax
mov ecx, dword [esp + 0xdc]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xe0]
mov dword [esp + 8], edx
call fcn.004e13e0
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov ecx, dword [esp + 0x5c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x64]
mov dword [esp + 8], edx
call fcn.004e1b50
mov eax, dword [esp + 0x18]
test eax, eax
jg 0x4e652d
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0xe0]
cmp ecx, edx
ja 0x4e6528
mov eax, dword [esp + 0xd8]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov ebx, dword [esp + 0xac]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ecx
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x20], ebx
call fcn.004eb1b0
mov eax, dword [esp + 0x24]
test eax, eax
jbe 0x4e6299
mov edx, dword [esp + 0x5c]
mov ecx, dword [esp + 0xdc]
cmp edx, ecx
ja 0x4e6521
mov ebx, dword [esp + 0xe0]
sub ebx, edx
mov ebp, ebx
neg ebx
mov esi, edx
shl edx, 2
sar ebx, 0x1f
and ebx, edx
mov edx, dword [esp + 0xd8]
add edx, ebx
mov dword [esp], edx
sub ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], eax
call fcn.004eb220
mov eax, dword [esp + 0x1c]
test eax, eax
ja 0x4e6509
mov eax, dword [esp + 0xb4]
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 8], eax
call fcn.004e13e0
mov eax, dword [esp + 0xcc]
mov dword [esp], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 8], eax
mov dword [esp + 0x18], 0
call fcn.004e2b30
add esp, 0xc8
ret
cmp edi, 1
jne 0x4e632a
lea eax, [0x643140]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00444130
mov ebx, dword [esp + 0xc]
mov ebp, 1
mov edi, 1
jmp 0x4e5f67
mov dword [esp + 0x3c], edi
lea eax, [0x643140]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esi + esi*2 + 4]
mov dword [esp + 0x44], eax
mov dword [esp + 8], eax
call fcn.00444130
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x44]
mov edi, dword [esp + 0x3c]
jmp 0x4e5f67
mov ebp, edi
mov edi, edx
mov esi, eax
mov eax, dword [esp + 0xa4]
call fcn.0045c920
mov eax, esi
mov edi, ebp
jmp 0x4e5797
test eax, eax
jne 0x4e63c9
lea eax, [0x643140]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00444130
mov ebx, dword [esp + 0xc]
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0xe4]
mov edx, dword [esp + 0xec]
mov edi, dword [esp + 0xdc]
mov ebp, 1
mov esi, 1
jmp 0x4e5762
mov dword [esp + 0x38], esi
lea ecx, [0x643140]
mov dword [esp], ecx
mov dword [esp + 4], esi
lea edx, [eax + 5]
mov dword [esp + 0x48], edx
mov dword [esp + 8], edx
call fcn.00444130
mov ebx, dword [esp + 0xc]
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0xe4]
mov edx, dword [esp + 0xec]
mov edi, dword [esp + 0xdc]
mov ebp, dword [esp + 0x48]
mov esi, dword [esp + 0x38]
jmp 0x4e5762
mov dword [esp + 0xbc], ebp
mov eax, dword [esp + 0xe8]
mov dword [esp], eax
call fcn.004e4990
mov eax, dword [0x7e34e0]
mov ecx, dword [esp + 4]
test eax, eax
jne 0x4e6466
mov edx, dword [esp + 0xf0]
mov ebx, dword [esp + 0xf8]
mov dword [ebx + edx*4], ecx
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0xe4]
mov edi, dword [esp + 0xdc]
jmp 0x4e5797
mov edi, dword [esp + 0xbc]
mov eax, ecx
call fcn.0045c920
mov edx, dword [esp + 0xf0]
mov ebx, dword [esp + 0xf8]
jmp 0x4e644c
add esp, 0xc8
ret
mov ebp, dword [esp + 0xcc]
mov dword [esp], ebp
mov ebp, dword [esp + 0xd0]
mov dword [esp + 4], ebp
mov ebp, dword [esp + 0xd4]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0xd8]
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0xe0]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], edx
call fcn.004e4f50
add esp, 0xc8
ret
mov eax, dword [esp + 0xcc]
mov dword [esp], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 8], eax
call fcn.004e13a0
add esp, 0xc8
ret
lea eax, [0x643700]
mov dword [esp], eax
lea eax, [0x6c7dc8]
mov dword [esp + 4], eax
call fcn.00431bb0
mov eax, edx
call fcn.0045ca00
call fcn.0045c9e0
lea eax, [0x643700]
mov dword [esp], eax
lea eax, [0x6c7dc0]
mov dword [esp + 4], eax
call fcn.00431bb0
call fcn.0045c9e0
mov ecx, edi
mov edx, ebp
call fcn.0045c9e0
call fcn.0045ca00
call fcn.0045ca00
mov eax, edx
call fcn.0045ca00
call fcn.0045c9e0
lea eax, [0x643700]
mov dword [esp], eax
lea eax, [0x6c7db8]
mov dword [esp + 4], eax
call fcn.00431bb0
mov eax, ecx
mov ecx, ebx
call fcn.0045ca00
call fcn.0045c9e0
mov ecx, ebx
mov edx, ebp
call fcn.0045c9e0
mov eax, ebx
mov ecx, edx
call fcn.0045ca00
mov eax, edi
mov ecx, ebp
call fcn.0045ca00
mov ecx, ebp
mov edx, esi
call fcn.0045c9e0
mov eax, ebp
mov ecx, edi
call fcn.0045ca00
mov ecx, esi
mov edx, ebp
call fcn.0045c9e0
mov eax, esi
mov ecx, ebp
call fcn.0045c9a0
nop
call fcn.0045b380
jmp fcn.004e5640