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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x80]
cmp eax, dword [ecx + 8]
jbe 0x4e3175
sub esp, 0x100
nop
mov ebx, dword [esp + 0x114]
mov ebp, dword [esp + 0x110]
mov eax, ebx
jmp 0x4e1fc5
mov ebx, esi
test ebx, ebx
jle 0x4e2ff8
lea esi, [ebx - 1]
cmp eax, esi
jbe 0x4e316b
mov ecx, ebx
mov ebx, dword [ebp + ebx*4 - 4]
test ebx, ebx
je 0x4e1fc3
mov edx, dword [esp + 0x118]
cmp ecx, edx
ja 0x4e3166
nop
mov ebx, dword [esp + 0x120]
mov esi, dword [esp + 0x11c]
mov eax, ebx
jmp 0x4e2008
mov ebx, ebp
mov ebp, edi
mov dword [esp + 0x120], ebx
test ebx, ebx
jle 0x4e2ff1
mov edi, ebp
lea ebp, [ebx - 1]
cmp ebp, eax
jae 0x4e315d
mov ebx, dword [esi + ebx*4 - 4]
test ebx, ebx
je 0x4e2004
mov ebx, dword [esp + 0x120]
mov ebp, dword [esp + 0x124]
cmp ebx, ebp
ja 0x4e3154
test ecx, ecx
je 0x4e2fc5
cmp ebx, 0x64
jl 0x4e2f81
mov eax, ecx
sub ecx, ebx
test ecx, ecx
jl 0x4e2f7a
mov esi, dword [esp + 0x128]
mov ebp, dword [esp + 0x134]
cmp esi, ebp
jae 0x4e314b
mov dword [esp + 0xcc], eax
mov dword [esp + 0xa4], ecx
shr ebx, 1
mov dword [esp + 0xb0], ebx
mov ebp, dword [esp + 0x130]
mov ebx, dword [ebp + esi*4]
lea ebp, [ebp + esi*4]
test ebx, ebx
je 0x4e2f0b
mov ebp, dword [ebx + 8]
mov ebx, dword [ebx]
mov dword [esp + 0xd4], ebx
mov esi, dword [esp + 0xb0]
lea ebx, [esi + 1]
cmp ebx, ebp
jg 0x4e2e50
ja 0x4e3142
mov edx, dword [esp + 0x128]
mov esi, dword [esp + 0x130]
mov edx, dword [esi + edx*4]
mov dword [edx + 4], ebx
mov dword [edx + 8], ebp
mov ebx, dword [0x71e9f0]
test ebx, ebx
jne 0x4e2e35
mov ebx, dword [esp + 0xd4]
mov dword [edx], ebx
mov edx, dword [esp + 0xb0]
mov ebx, dword [esp + 0x128]
jmp 0x4e25b8
mov eax, ebx
test eax, eax
jle 0x4e2121
lea ebx, [eax - 1]
cmp ebx, edx
jae 0x4e3113
mov ebp, dword [ecx + eax*4 - 4]
test ebp, ebp
je 0x4e2108
mov edx, dword [esp + 0x5c]
cmp eax, edx
ja 0x4e310c
mov dword [esp + 0x48], eax
mov ebx, dword [esp + 0x12c]
mov ebp, dword [ebx + 8]
mov esi, dword [ebx]
mov edi, dword [esp + 0x120]
lea ebx, [edi + edi*2]
cmp ebx, ebp
jg 0x4e2766
ja 0x4e3103
mov dword [esp + 0xa0], ebp
mov dword [esp + 0x8c], ebx
mov dword [esp + 0xf0], esi
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
call fcn.004dda10
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 0xc], eax
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x10], ecx
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x14], edx
mov ebx, dword [esp + 0x11c]
mov dword [esp + 0x18], ebx
mov ebp, dword [esp + 0x80]
mov dword [esp + 0x1c], ebp
mov esi, dword [esp + 0x124]
mov dword [esp + 0x20], esi
call fcn.004df2a0
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x94], eax
mov ecx, dword [esp + 0x24]
mov dword [esp + 0xe4], ecx
mov edx, dword [esp + 0x28]
mov dword [esp + 0x84], edx
mov ebx, dword [esp + 0xe0]
mov ebp, dword [esp + 0x78]
xor esi, esi
jmp 0x4e239f
mov ebp, esi
mov esi, dword [esp + 0xac]
mov dword [esp + 0x38], ebp
test ebp, ebp
jle 0x4e2232
lea esi, [ebp - 1]
cmp edi, esi
jbe 0x4e30fa
mov ebp, dword [ebx + ebp*4 - 4]
test ebp, ebp
je 0x4e220e
mov ebp, dword [esp + 0xc4]
mov esi, dword [esp + 0x38]
cmp ebp, esi
jb 0x4e30f1
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], ebp
call fcn.004de190
mov eax, dword [esp + 0x18]
test eax, eax
jle 0x4e2412
mov eax, dword [esp + 0xdc]
mov dword [esp], eax
mov ecx, dword [esp + 0x48]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x5c]
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.004ea420
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x94]
cmp ecx, edx
ja 0x4e30ec
mov eax, dword [esp + 0xe4]
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 + 0x11c]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ecx
mov ebp, dword [esp + 0x124]
mov dword [esp + 0x20], ebp
call fcn.004ea3b0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x84]
cmp ecx, edx
jl 0x4e23b2
mov ebx, dword [esp + 0x78]
cmp ecx, ebx
ja 0x4e30e3
mov eax, dword [esp + 0xfc]
mov dword [esp], eax
mov ecx, dword [esp + 0xb0]
sub ebx, ecx
inc ebx
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0xc0]
mov dword [esp + 8], ebx
mov ebp, dword [esp + 0xf8]
mov dword [esp + 0xc], ebp
mov esi, dword [esp + 0xb4]
mov dword [esp + 0x10], esi
mov edi, dword [esp + 0xb8]
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], 0
call fcn.004df190
mov eax, dword [esp + 0xac]
lea esi, [eax + 1]
mov eax, dword [esp + 0xe0]
mov ecx, dword [esp + 0x78]
mov eax, dword [esp + 0x94]
mov ecx, dword [esp + 0xe4]
mov edx, dword [esp + 0x84]
mov ebx, dword [esp + 0xe0]
mov ebp, dword [esp + 0x78]
cmp esi, 2
jge 0x4e2412
mov dword [esp + 0xac], esi
mov edi, ebp
jmp 0x4e2217
mov ecx, dword [esp + 0x94]
mov ebx, dword [esp + 0xb0]
sub ecx, ebx
inc ecx
mov esi, ecx
neg ecx
sar ecx, 0x1f
mov edi, dword [esp + 0xbc]
and ecx, edi
mov edi, dword [esp + 0xe4]
add ecx, edi
mov dword [esp], ecx
sub edx, ebx
inc edx
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], eax
call fcn.004ea420
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x84]
jmp 0x4e230d
mov ebp, dword [esp + 0xe0]
mov ebx, dword [esp + 0x78]
mov eax, ebx
jmp 0x4e2423
mov ebx, esi
test ebx, ebx
jle 0x4e243a
lea esi, [ebx - 1]
cmp eax, esi
jbe 0x4e30da
mov edi, dword [ebp + ebx*4 - 4]
test edi, edi
je 0x4e2421
mov edx, dword [esp + 0xc4]
cmp edx, ebx
jb 0x4e30d3
mov eax, dword [esp + 0xe4]
mov dword [esp], eax
mov ecx, dword [esp + 0x84]
mov dword [esp + 4], ecx
mov esi, dword [esp + 0x94]
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], edx
call fcn.004de190
mov eax, dword [esp + 0x18]
test eax, eax
jg 0x4e30bb
mov edx, dword [esp + 0xc4]
mov ecx, dword [esp + 0x84]
cmp edx, ecx
jb 0x4e30b6
mov eax, dword [esp + 0xe0]
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 ebx, dword [esp + 0x94]
mov dword [esp + 0x20], ebx
call fcn.004ea3b0
mov eax, dword [esp + 0x24]
test eax, eax
jbe 0x4e2536
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x84]
cmp ecx, edx
jb 0x4e30af
mov ebx, dword [esp + 0xc4]
sub ebx, edx
mov ebp, ebx
neg ebx
mov esi, edx
shl edx, 2
sar ebx, 0x1f
and ebx, edx
mov edx, dword [esp + 0xe0]
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.004ea420
mov eax, dword [esp + 0x104]
mov dword [esp], eax
mov ecx, dword [esp + 0x108]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x10c]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0xdc]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x5c]
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0xc8]
mov dword [esp + 0x18], ebx
call fcn.004df190
mov eax, dword [esp + 0x130]
mov ecx, dword [esp + 0xb0]
mov edx, dword [esp + 0xcc]
mov ebx, dword [esp + 0x128]
mov ebp, dword [esp + 0xc8]
mov eax, edx
mov edx, ecx
mov esi, dword [esp + 0x130]
mov edi, dword [esp + 0x110]
mov ecx, ebp
cmp edx, ecx
jge 0x4e27cf
sub ecx, edx
cmp eax, ecx
jb 0x4e3137
mov dword [esp + 0xc8], ecx
mov eax, dword [esi + ebx*4]
mov ecx, dword [eax + 8]
mov dword [esp + 0x5c], ecx
mov edx, dword [eax]
mov dword [esp + 0xdc], edx
mov eax, dword [eax + 4]
mov dword [esp + 0x6c], eax
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004dda10
mov edx, dword [esp + 0x118]
mov eax, dword [esp + 0xc8]
sub edx, eax
mov ebx, dword [esp + 0xcc]
sub ebx, eax
mov esi, edx
neg edx
shl eax, 2
sar edx, 0x1f
and eax, edx
mov edx, dword [esp + 0x110]
add eax, edx
mov edx, dword [esp + 0x120]
mov ecx, dword [esp + 0xb0]
lea ebp, [ecx + edx]
cmp esi, ebp
jb 0x4e312e
lea edi, [ecx - 1]
cmp edi, ebp
ja 0x4e3125
mov dword [esp + 0x80], edi
mov dword [esp + 0xc4], esi
sub esi, ecx
inc esi
mov dword [esp + 0xc0], esi
shl edi, 2
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, edi
add esi, eax
mov ebp, dword [esp + 0x80]
cmp edx, ebp
jb 0x4e311c
mov dword [esp + 0x78], ebx
mov dword [esp + 0xe0], eax
mov dword [esp + 0xbc], edi
mov dword [esp + 0xfc], esi
mov eax, dword [esp + 0xdc]
mov dword [esp], eax
mov ebx, dword [esp + 0x6c]
mov dword [esp + 4], ebx
mov ebp, dword [esp + 0x5c]
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
lea esi, [edx + 1]
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0xc0]
mov dword [esp + 0x14], esi
mov esi, dword [esp + 0x124]
sub esi, ecx
inc esi
mov dword [esp + 0xb8], esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, edi
mov edi, dword [esp + 0x11c]
add esi, edi
mov dword [esp + 0xf8], esi
mov dword [esp + 0x18], esi
sub edx, ecx
inc edx
mov dword [esp + 0xb4], edx
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0xb8]
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0x128]
inc edx
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x12c]
mov dword [esp + 0x28], edx
mov esi, dword [esp + 0x130]
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x134]
mov dword [esp + 0x30], esi
mov esi, dword [esp + 0x138]
mov dword [esp + 0x34], esi
call fcn.004e1f90
nop
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0xdc]
mov edx, eax
jmp 0x4e210a
cmp ebx, 1
jne 0x4e279c
lea eax, [0x5a56a0]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.004451f0
mov esi, dword [esp + 0xc]
mov ebp, 1
mov ebx, 1
jmp 0x4e2155
mov dword [esp + 0x40], ebx
lea eax, [0x5a56a0]
mov dword [esp], eax
mov dword [esp + 4], ebx
lea ecx, [edi + edi*2 + 4]
mov dword [esp + 0x68], ecx
mov dword [esp + 8], ecx
call fcn.004451f0
mov esi, dword [esp + 0xc]
mov ebp, dword [esp + 0x68]
mov ebx, dword [esp + 0x40]
jmp 0x4e2155
mov eax, dword [esi + ebx*4]
mov ecx, dword [eax + 8]
mov dword [esp + 0x64], ecx
mov edx, dword [eax]
mov dword [esp + 0xd0], edx
mov eax, dword [eax + 4]
mov dword [esp + 0x74], eax
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.004dda10
mov eax, dword [esp + 0xb0]
lea ecx, [eax - 1]
mov edx, dword [esp + 0xcc]
cmp edx, ecx
jb 0x4e30a6
mov dword [esp + 0x7c], ecx
mov ebx, dword [esp + 0x118]
sub ebx, eax
inc ebx
mov esi, ecx
shl ecx, 2
mov edi, ebx
neg ebx
sar ebx, 0x1f
and ebx, ecx
mov ebp, dword [esp + 0x110]
add ebx, ebp
sub edx, eax
lea ebp, [edx + 1]
mov edx, ebp
jmp 0x4e2846
mov ebp, esi
mov esi, dword [esp + 0x7c]
mov dword [esp + 0x44], ebp
test ebp, ebp
jle 0x4e2861
lea esi, [ebp - 1]
cmp edx, esi
jbe 0x4e309d
mov ebp, dword [ebx + ebp*4 - 4]
test ebp, ebp
je 0x4e2840
mov ebp, dword [esp + 0x44]
cmp edi, ebp
jb 0x4e3094
mov dword [esp + 0xc8], edx
mov esi, dword [esp + 0x120]
mov edx, dword [esp + 0x7c]
cmp esi, edx
jb 0x4e308b
mov dword [esp + 0xc4], edi
mov dword [esp + 0xc0], ecx
mov dword [esp + 0xd8], ebx
mov edx, dword [esp + 0xd0]
mov dword [esp], edx
mov edx, dword [esp + 0x74]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x64]
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], edi
mov ebp, dword [esp + 0x124]
sub ebp, eax
inc ebp
mov dword [esp + 0xbc], ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, ecx
mov ecx, dword [esp + 0x11c]
add ebp, ecx
mov dword [esp + 0xfc], ebp
mov dword [esp + 0x18], ebp
sub esi, eax
inc esi
mov dword [esp + 0xb8], esi
mov dword [esp + 0x1c], esi
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x128]
inc eax
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x12c]
mov dword [esp + 0x28], eax
mov esi, dword [esp + 0x130]
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x134]
mov dword [esp + 0x30], esi
mov esi, dword [esp + 0x138]
mov dword [esp + 0x34], esi
call fcn.004e1f90
nop
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0xd0]
mov edx, eax
jmp 0x4e295a
mov eax, ebx
test eax, eax
jle 0x4e2971
lea ebx, [eax - 1]
cmp edx, ebx
jbe 0x4e3082
mov ebp, dword [ecx + eax*4 - 4]
test ebp, ebp
je 0x4e2958
mov edx, dword [esp + 0x64]
cmp edx, eax
jb 0x4e307b
mov dword [esp + 0x70], eax
mov ebx, dword [esp + 0x12c]
mov ebp, dword [ebx + 8]
mov ebx, dword [ebx]
mov esi, dword [esp + 0x120]
lea edi, [esi + esi*2]
cmp ebp, edi
jl 0x4e2dcc
jb 0x4e3072
mov dword [esp + 0x9c], ebp
mov dword [esp + 0x90], edi
mov dword [esp + 0xe8], ebx
mov dword [esp], ebx
mov dword [esp + 4], edi
mov dword [esp + 8], ebp
call fcn.004dda10
mov eax, dword [esp + 0xe8]
mov dword [esp], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0xc], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x10], ecx
mov edx, dword [esp + 0x64]
mov dword [esp + 0x14], edx
mov ebx, dword [esp + 0x11c]
mov dword [esp + 0x18], ebx
mov ebp, dword [esp + 0x7c]
mov dword [esp + 0x1c], ebp
mov esi, dword [esp + 0x124]
mov dword [esp + 0x20], esi
call fcn.004df2a0
mov eax, dword [esp + 0x28]
mov dword [esp + 0x88], eax
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x98], ecx
mov edx, dword [esp + 0x24]
mov dword [esp + 0xec], edx
mov ebx, dword [esp + 0xcc]
mov ebp, dword [esp + 0x110]
xor esi, esi
jmp 0x4e2ae6
mov ebx, esi
mov esi, dword [esp + 0xa8]
mov dword [esp + 0x4c], ebx
test ebx, ebx
jle 0x4e2a82
lea esi, [ebx - 1]
cmp edi, esi
jbe 0x4e3069
mov ebx, dword [ebp + ebx*4 - 4]
test ebx, ebx
je 0x4e2a5e
mov ebx, dword [esp + 0x4c]
mov esi, dword [esp + 0x118]
cmp ebx, esi
ja 0x4e3060
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], esi
call fcn.004de190
mov eax, dword [esp + 0x18]
test eax, eax
jg 0x4e2afd
mov edi, dword [esp + 0xa8]
lea esi, [edi + 1]
mov ebx, dword [esp + 0xcc]
mov ebp, dword [esp + 0x110]
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0xec]
cmp esi, 2
jge 0x4e2c38
mov dword [esp + 0xa8], esi
mov edi, ebx
jmp 0x4e2a67
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x64]
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.004ea420
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x98]
cmp ecx, edx
ja 0x4e305b
mov eax, dword [esp + 0xec]
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 + 0x11c]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ecx
mov ebp, dword [esp + 0x124]
mov dword [esp + 0x20], ebp
call fcn.004ea3b0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x88]
cmp ecx, edx
jl 0x4e2be6
mov eax, dword [esp + 0xd8]
mov dword [esp], eax
mov ecx, dword [esp + 0xc8]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xc4]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0xfc]
mov dword [esp + 0xc], ebx
mov ebp, dword [esp + 0xb8]
mov dword [esp + 0x10], ebp
mov esi, dword [esp + 0xbc]
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], 0
call fcn.004df190
jmp 0x4e2ab9
mov ecx, dword [esp + 0x98]
mov ebx, dword [esp + 0xb0]
sub ecx, ebx
inc ecx
mov esi, ecx
neg ecx
sar ecx, 0x1f
mov edi, dword [esp + 0xc0]
and ecx, edi
mov edi, dword [esp + 0xec]
add ecx, edi
mov dword [esp], ecx
sub edx, ebx
inc edx
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], eax
call fcn.004ea420
jmp 0x4e2b93
mov esi, ebx
jmp 0x4e2c3e
mov ebx, edi
mov dword [esp + 0x54], ebx
test ebx, ebx
jle 0x4e2c59
lea edi, [ebx - 1]
cmp esi, edi
jbe 0x4e3052
mov ebx, dword [ebp + ebx*4 - 4]
test ebx, ebx
je 0x4e2c3c
mov ebx, dword [esp + 0x118]
mov edi, dword [esp + 0x54]
cmp ebx, edi
jb 0x4e3049
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
call fcn.004de190
mov eax, dword [esp + 0x18]
test eax, eax
jg 0x4e3031
mov edx, dword [esp + 0x118]
mov ecx, dword [esp + 0x88]
cmp edx, ecx
jb 0x4e302c
mov eax, dword [esp + 0x110]
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 + 0xec]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ecx
mov ebx, dword [esp + 0x98]
mov dword [esp + 0x20], ebx
call fcn.004ea3b0
mov eax, dword [esp + 0x24]
test eax, eax
ja 0x4e2d6b
test eax, eax
ja 0x4e300d
mov eax, dword [esp + 0x70]
mov ebx, dword [esp + 0xd0]
mov ecx, eax
jmp 0x4e2d08
mov eax, ebp
test eax, eax
jle 0x4e2d1f
lea ebp, [eax - 1]
cmp ecx, ebp
jbe 0x4e3006
mov esi, dword [ebx + eax*4 - 4]
test esi, esi
je 0x4e2d06
mov edx, dword [esp + 0x64]
cmp edx, eax
jb 0x4e2fff
mov ecx, dword [esp + 0x104]
mov dword [esp], ecx
mov ecx, dword [esp + 0x108]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x10c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], 0
call fcn.004df190
add esp, 0x100
ret
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0x88]
cmp ecx, edx
jb 0x4e3025
mov ebx, dword [esp + 0x118]
sub ebx, edx
mov ebp, ebx
neg ebx
mov esi, edx
shl edx, 2
sar ebx, 0x1f
and ebx, edx
mov edx, dword [esp + 0x110]
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.004ea420
mov eax, dword [esp + 0x1c]
jmp 0x4e2cef
cmp edi, 1
jne 0x4e2e02
lea eax, [0x5a56a0]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.004451f0
mov ebx, dword [esp + 0xc]
mov ebp, 1
mov edi, 1
jmp 0x4e29a5
mov dword [esp + 0x50], edi
lea eax, [0x5a56a0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esi + esi*2 + 4]
mov dword [esp + 0x58], eax
mov dword [esp + 8], eax
call fcn.004451f0
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x58]
mov edi, dword [esp + 0x50]
jmp 0x4e29a5
mov ebx, edi
mov edi, edx
mov ebp, eax
mov eax, dword [esp + 0xd4]
call fcn.0045e220
mov eax, ebp
mov edi, ebx
jmp 0x4e20f5
test esi, esi
jne 0x4e2eaf
lea eax, [0x5a56a0]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.004451f0
mov ebx, dword [esp + 0xc]
mov eax, dword [esp + 0xcc]
mov ecx, dword [esp + 0xa4]
mov edx, dword [esp + 0x118]
mov esi, dword [esp + 0xb0]
mov edi, dword [esp + 0x110]
mov dword [esp + 0xd4], ebx
mov ebp, 1
mov ebx, 1
jmp 0x4e20c7
mov dword [esp + 0x3c], ebx
lea eax, [0x5a56a0]
mov dword [esp], eax
mov dword [esp + 4], ebx
lea ecx, [esi + 5]
mov dword [esp + 0x60], ecx
mov dword [esp + 8], ecx
call fcn.004451f0
mov ebx, dword [esp + 0xc]
mov eax, dword [esp + 0xcc]
mov ecx, dword [esp + 0xa4]
mov edx, dword [esp + 0x118]
mov esi, dword [esp + 0xb0]
mov edi, dword [esp + 0x110]
mov dword [esp + 0xd4], ebx
mov ebp, dword [esp + 0x60]
mov ebx, dword [esp + 0x3c]
jmp 0x4e20c7
mov dword [esp + 0xf4], ebp
mov eax, dword [esp + 0x120]
mov dword [esp], eax
call fcn.004e1280
mov eax, dword [0x71e9f0]
mov ecx, dword [esp + 4]
test eax, eax
jne 0x4e2f5c
mov edx, dword [esp + 0x128]
mov ebx, dword [esp + 0x130]
mov dword [ebx + edx*4], ecx
mov eax, dword [esp + 0xcc]
mov ecx, dword [esp + 0xa4]
mov esi, ebx
mov edi, dword [esp + 0x110]
jmp 0x4e20f5
mov edi, dword [esp + 0xf4]
mov eax, ecx
call fcn.0045e220
mov edx, dword [esp + 0x128]
mov ebx, dword [esp + 0x130]
jmp 0x4e2f40
add esp, 0x100
ret
mov eax, dword [esp + 0x104]
mov dword [esp], eax
mov eax, dword [esp + 0x108]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x10c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], esi
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebp
call fcn.004e1860
add esp, 0x100
ret
mov eax, dword [esp + 0x104]
mov dword [esp], eax
mov eax, dword [esp + 0x108]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x10c]
mov dword [esp + 8], eax
call fcn.004dda10
add esp, 0x100
ret
mov edi, ebp
jmp 0x4e202c
mov ecx, ebx
jmp 0x4e1fe2
mov ecx, eax
call fcn.0045e2e0
mov eax, ebp
call fcn.0045e2a0
lea eax, [0x5a5ba0]
mov dword [esp], eax
lea eax, [0x60e900]
mov dword [esp + 4], eax
call fcn.00431c00
mov eax, edx
call fcn.0045e300
call fcn.0045e2e0
lea eax, [0x5a5ba0]
mov dword [esp], eax
lea eax, [0x60e900]
mov dword [esp + 4], eax
call fcn.00431c00
mov ecx, edi
mov edx, ebx
call fcn.0045e2e0
mov eax, edi
mov ecx, esi
call fcn.0045e2a0
call fcn.0045e2e0
mov ecx, ebx
mov edx, esi
call fcn.0045e2e0
mov eax, esi
mov ecx, edi
call fcn.0045e2a0
mov ecx, edi
mov edx, ebp
call fcn.0045e2e0
mov ecx, eax
call fcn.0045e2e0
mov eax, ebx
mov ecx, edx
call fcn.0045e2a0
mov eax, edx
mov ecx, esi
call fcn.0045e300
mov ecx, ebp
mov edx, edi
call fcn.0045e2e0
mov eax, esi
mov ecx, edx
call fcn.0045e2a0
mov eax, ecx
mov ecx, edx
call fcn.0045e300
mov eax, edx
call fcn.0045e300
call fcn.0045e2e0
lea eax, [0x5a5ba0]
mov dword [esp], eax
lea eax, [0x60e900]
mov dword [esp + 4], eax
call fcn.00431c00
mov ecx, ebx
call fcn.0045e2e0
mov ecx, eax
mov eax, esi
call fcn.0045e2a0
mov eax, ecx
mov ecx, ebx
call fcn.0045e300
call fcn.0045e2e0
mov ecx, esi
mov edx, ebp
call fcn.0045e2e0
mov eax, esi
mov ecx, edi
call fcn.0045e2a0
mov ecx, ebx
mov edx, ebp
call fcn.0045e2e0
mov ecx, eax
call fcn.0045e2e0
mov eax, ebx
mov ecx, edx
call fcn.0045e2a0
mov eax, ebp
mov ecx, edx
call fcn.0045e300
mov eax, edi
mov ecx, ebp
call fcn.0045e300
mov ecx, ebp
mov edx, esi
call fcn.0045e2e0
mov edx, eax
mov eax, ecx
mov ecx, edx
call fcn.0045e300
mov ecx, ebx
mov edx, ebp
call fcn.0045e2e0
mov eax, esi
mov ecx, ebp
call fcn.0045e2a0
mov ecx, ebx
mov edx, ebp
call fcn.0045e2e0
mov ecx, eax
mov eax, ebp
call fcn.0045e2a0
call fcn.0045e2e0
mov ecx, eax
mov eax, esi
call fcn.0045e2a0
nop
call fcn.0045ccc0
jmp fcn.004e1f90