Function at 0x4fe800
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 0x4ff78f
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.004fa8a0
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.004fa8a0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0xdc]
test ebx, ebx
je 0x4ff69d
cmp eax, 0x64
jl 0x4ff64b
mov ebp, ebx
sub ebx, eax
test ebx, ebx
jl 0x4ff644
mov esi, dword [esp + 0xf0]
mov edi, ebp
mov ebp, dword [esp + 0xfc]
cmp esi, ebp
jae 0x4ff785
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 0x4ff5d7
mov ebp, dword [ebx + 8]
mov ebx, dword [ebx]
lea esi, [eax + 1]
cmp esi, ebp
jg 0x4ff538
ja 0x4ff77c
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 [0x795b00]
test ebp, ebp
jne 0x4ff51d
mov ebp, dword [esp + 0xa4]
mov dword [edx], ebp
mov edx, dword [esp + 0xf0]
mov ebp, dword [esp + 0x7c]
jmp 0x4fec8d
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.004fbcf0
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 0x4feb12
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.004fa8a0
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.004fad10
mov eax, dword [esp + 0x18]
test eax, eax
jle 0x4feb12
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.00503620
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x68]
cmp ecx, edx
ja 0x4ff74a
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.005035b0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x60]
cmp ecx, edx
jl 0x4feac7
mov ebx, dword [esp + 0x50]
cmp ecx, ebx
jbe 0x4fe967
jmp 0x4ff741
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.00503620
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x60]
jmp 0x4feab6
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.004fa8a0
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.004fad10
mov eax, dword [esp + 0x18]
test eax, eax
jg 0x4ff729
mov edx, dword [esp + 0x9c]
mov ecx, dword [esp + 0x60]
cmp edx, ecx
jb 0x4ff724
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.005035b0
mov eax, dword [esp + 0x24]
test eax, eax
jbe 0x4fec06
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x60]
cmp ecx, edx
jb 0x4ff71d
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.00503620
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.004fbcf0
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 0x4fef7e
sub ebp, eax
cmp ebp, edi
ja 0x4ff773
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.004fa860
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 0x4ff76a
lea edi, [ecx - 1]
cmp edi, ebp
ja 0x4ff761
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 0x4ff758
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.004fe800
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.004fa8a0
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 0x4fef15
jb 0x4ff74f
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.004fa860
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.004fbe40
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 0x4fe9c9
cmp ebx, 1
jne 0x4fef4b
lea eax, [0x5507c0]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00441b50
mov esi, dword [esp + 0xc]
mov ebp, 1
mov ebx, 1
jmp 0x4fee7c
mov dword [esp + 0x40], ebx
lea eax, [0x5507c0]
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.00441b50
mov esi, dword [esp + 0xc]
mov ebp, dword [esp + 0x4c]
mov ebx, dword [esp + 0x40]
jmp 0x4fee7c
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.004fa860
mov eax, dword [esp + 0x88]
dec eax
mov ecx, dword [esp + 0xdc]
cmp ecx, eax
jb 0x4ff718
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.004fa8a0
mov ecx, dword [esp + 0xe8]
mov eax, dword [esp + 0x58]
cmp ecx, eax
jb 0x4ff713
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.004fe800
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.004fa8a0
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 0x4ff4b4
jb 0x4ff70a
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.004fa860
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.004fbe40
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 0x4ff1d6
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 0x4ff35b
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.004fa8a0
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.004fad10
mov eax, dword [esp + 0x18]
test eax, eax
jle 0x4ff1bd
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.00503620
mov edx, dword [esp + 0x64]
mov ecx, dword [esp + 0x58]
cmp edx, ecx
jb 0x4ff705
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.005035b0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x58]
cmp ecx, edx
jg 0x4ff315
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.004fbcf0
jmp 0x4ff1bd
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.00503620
jmp 0x4ff2c2
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.004fa8a0
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.004fad10
mov eax, dword [esp + 0x18]
test eax, eax
jg 0x4ff6ed
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0xe0]
cmp ecx, edx
ja 0x4ff6e8
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.005035b0
mov eax, dword [esp + 0x24]
test eax, eax
jbe 0x4ff459
mov edx, dword [esp + 0x5c]
mov ecx, dword [esp + 0xdc]
cmp edx, ecx
ja 0x4ff6e1
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.00503620
mov eax, dword [esp + 0x1c]
test eax, eax
ja 0x4ff6c9
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.004fa8a0
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.004fbcf0
add esp, 0xc8
ret
cmp edi, 1
jne 0x4ff4ea
lea eax, [0x5507c0]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00441b50
mov ebx, dword [esp + 0xc]
mov ebp, 1
mov edi, 1
jmp 0x4ff127
mov dword [esp + 0x3c], edi
lea eax, [0x5507c0]
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.00441b50
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x44]
mov edi, dword [esp + 0x3c]
jmp 0x4ff127
mov ebp, edi
mov edi, edx
mov esi, eax
mov eax, dword [esp + 0xa4]
call fcn.0045a0f0
mov eax, esi
mov edi, ebp
jmp 0x4fe957
test eax, eax
jne 0x4ff589
lea eax, [0x5507c0]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00441b50
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 0x4fe922
mov dword [esp + 0x38], esi
lea ecx, [0x5507c0]
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.00441b50
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 0x4fe922
mov dword [esp + 0xbc], ebp
mov eax, dword [esp + 0xe8]
mov dword [esp], eax
call fcn.004fdb50
mov eax, dword [0x795b00]
mov ecx, dword [esp + 4]
test eax, eax
jne 0x4ff626
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 0x4fe957
mov edi, dword [esp + 0xbc]
mov eax, ecx
call fcn.0045a0f0
mov edx, dword [esp + 0xf0]
mov ebx, dword [esp + 0xf8]
jmp 0x4ff60c
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.004fe110
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.004fa860
add esp, 0xc8
ret
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beab0]
mov dword [esp + 4], eax
call fcn.0042f8e0
mov eax, edx
call fcn.0045a1d0
call fcn.0045a1b0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beaa8]
mov dword [esp + 4], eax
call fcn.0042f8e0
call fcn.0045a1b0
mov ecx, edi
mov edx, ebp
call fcn.0045a1b0
call fcn.0045a1d0
call fcn.0045a1d0
mov eax, edx
call fcn.0045a1d0
call fcn.0045a1b0
lea eax, [0x550cc0]
mov dword [esp], eax
lea eax, [0x5beaa0]
mov dword [esp + 4], eax
call fcn.0042f8e0
mov eax, ecx
mov ecx, ebx
call fcn.0045a1d0
call fcn.0045a1b0
mov ecx, ebx
mov edx, ebp
call fcn.0045a1b0
mov eax, ebx
mov ecx, edx
call fcn.0045a1d0
mov eax, edi
mov ecx, ebp
call fcn.0045a1d0
mov ecx, ebp
mov edx, esi
call fcn.0045a1b0
mov eax, ebp
mov ecx, edi
call fcn.0045a1d0
mov ecx, esi
mov edx, ebp
call fcn.0045a1b0
mov eax, esi
mov ecx, ebp
call fcn.0045a170
nop
call fcn.00458ba0
jmp fcn.004fe800