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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 8]
cmp eax, dword [ecx + 8]
jbe 0x4e3557
sub esp, 0x88
mov eax, dword [esp + 0xa8]
mov ebx, dword [esp + 0x9c]
cmp eax, ebx
jg 0x4e349f
test ebx, ebx
je 0x4e3471
test eax, eax
je 0x4e3471
cmp eax, 1
je 0x4e33f5
mov ebp, dword [esp + 0x94]
test ebp, ebp
jle 0x4e33e1
mov esi, dword [esp + 0x8c]
lea edi, [esi + ebp*4 - 4]
mov ecx, ebx
mov ebx, dword [esp + 0xa0]
mov edx, eax
mov eax, dword [esp + 0x98]
lea eax, [eax + ebx*4 - 4]
cmp edi, eax
jne 0x4e339e
xor eax, eax
xor ebp, ebp
cmp dword [0x5e7074], edx
jg 0x4e326d
mov dword [esp + 0x3c], eax
mov dword [esp + 0x70], ebp
mov dword [esp], edx
mov eax, dword [0x5e7074]
mov dword [esp + 4], eax
call fcn.004e2c40
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xa0]
cmp ecx, edx
ja 0x4e3548
mov eax, dword [esp + 0xac]
cmp ecx, eax
ja 0x4e3541
lea ebx, [ecx + ecx*2]
mov dword [esp + 0x68], ebx
shl ebx, 1
mov esi, dword [esp + 0xa8]
mov edi, dword [esp + 0x9c]
lea ebp, [edi + esi]
cmp ebx, ebp
jle 0x4e3266
mov dword [esp + 0x54], ecx
mov dword [esp + 0x30], ebp
mov edi, dword [esp + 0x3c]
cmp ebx, edi
jg 0x4e31d2
ja 0x4e3538
mov dword [esp + 0x3c], edi
mov ebp, dword [esp + 0x70]
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
mov ebx, dword [esp + 0x98]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov esi, dword [esp + 0xa4]
mov dword [esp + 0x18], esi
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
call fcn.004e2480
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x30]
cmp edx, ecx
jb 0x4e3533
mov eax, dword [esp + 0x54]
mov ebx, eax
shl eax, 1
cmp ecx, eax
jb 0x4e352e
sub edx, eax
mov esi, edx
neg edx
shl ebx, 3
sar edx, 0x1f
and ebx, edx
mov edx, dword [esp + 0x70]
add ebx, edx
mov dword [esp], ebx
sub ecx, eax
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
call fcn.004e13a0
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0xa8]
cmp eax, ecx
jge 0x4e31c1
mov eax, dword [esp + 0x68]
mov dword [esp], eax
call fcn.004e4990
mov eax, dword [esp + 4]
mov dword [esp + 0x80], eax
mov ecx, dword [eax]
mov dword [esp + 0x84], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x5c], edx
mov ebx, dword [eax + 8]
mov dword [esp + 0x60], ebx
mov ebp, dword [esp + 0x98]
mov dword [esp], ebp
mov esi, dword [esp + 0x54]
mov dword [esp + 4], esi
mov edi, dword [esp + 0xa0]
mov dword [esp + 8], edi
call fcn.004e13e0
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0xa8]
cmp eax, ecx
ja 0x4e3529
mov edx, dword [esp + 0x84]
mov dword [esp], edx
mov edx, dword [esp + 0x5c]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x60]
mov dword [esp + 8], edx
mov edx, dword [esp + 0xac]
sub edx, eax
mov dword [esp + 0x48], edx
mov ebp, edx
neg edx
mov esi, eax
shl eax, 2
sar edx, 0x1f
and edx, eax
mov eax, dword [esp + 0xa4]
add edx, eax
mov dword [esp + 0x74], edx
mov dword [esp + 0x18], edx
sub ecx, esi
mov dword [esp + 0x44], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], ebp
call fcn.004e2c80
mov eax, dword [esp + 0x24]
mov dword [esp + 0x84], eax
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x5c], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x60], edx
mov ebx, dword [esp + 0x70]
mov dword [esp], ebx
mov ebp, dword [esp + 0x30]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x3c]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov edi, dword [esp + 0x54]
mov dword [esp + 0x18], edi
call fcn.004e2b30
mov eax, dword [esp + 0xa4]
mov dword [esp], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0xac]
mov dword [esp + 8], ecx
call fcn.004e13e0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x78], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x4c], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x50], edx
mov ebx, dword [esp + 0x54]
mov ebp, dword [esp + 0xa0]
mov esi, dword [esp + 0x9c]
mov edi, dword [esp + 0x98]
jmp 0x4e311f
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
call fcn.004e13e0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x7c], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x68], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x58], edx
mov ebx, dword [esp + 0x84]
mov dword [esp], ebx
mov ebx, dword [esp + 0x5c]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x60]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x78]
mov dword [esp + 0x18], ebx
mov ebp, dword [esp + 0x4c]
mov dword [esp + 0x1c], ebp
mov esi, dword [esp + 0x50]
mov dword [esp + 0x20], esi
call fcn.004e2c80
mov eax, dword [esp + 0x24]
mov dword [esp + 0x84], eax
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x5c], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x60], edx
mov ebx, dword [esp + 0x70]
mov dword [esp], ebx
mov ebp, dword [esp + 0x30]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x3c]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov edi, dword [esp + 0x64]
mov dword [esp + 0x18], edi
call fcn.004e2b30
mov eax, dword [esp + 0x84]
mov dword [esp], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x1c], ecx
mov edx, dword [esp + 0x48]
mov dword [esp + 0x20], edx
call fcn.004e2c80
mov eax, dword [esp + 0x24]
mov dword [esp + 0x84], eax
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x5c], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x60], edx
mov ebx, dword [esp + 0x70]
mov dword [esp], ebx
mov ebp, dword [esp + 0x30]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x3c]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov edi, dword [esp + 0x64]
mov esi, dword [esp + 0x54]
add edi, esi
mov dword [esp + 0x68], edi
mov dword [esp + 0x18], edi
call fcn.004e2b30
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0x9c]
mov ebx, dword [esp + 0x98]
mov ebp, dword [esp + 0x84]
mov esi, dword [esp + 0x5c]
mov edi, dword [esp + 0x60]
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x50]
mov ebp, dword [esp + 0xa0]
mov esi, dword [esp + 0x9c]
mov edi, ebx
mov ebx, dword [esp + 0x68]
cmp ebx, esi
jge 0x4e3159
ja 0x4e3520
mov dword [esp + 0x64], ebx
sub esi, ebx
sub ebp, ebx
mov dword [esp + 0x58], ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
shl ebx, 2
sar ebp, 0x1f
and ebp, ebx
lea ebx, [edi + ebp]
mov ebp, dword [esp + 0x54]
cmp ebp, esi
jl 0x4e2f85
mov ebp, esi
jmp 0x4e2f85
nop
lea eax, [0x7cd3b0]
mov dword [esp], eax
lea eax, [0x677a80]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 8], eax
call fcn.00462e00
mov eax, dword [esp + 0x70]
mov dword [esp], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 8], eax
call fcn.004e13e0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xb8], edx
add esp, 0x88
ret
mov edx, dword [esp + 0x9c]
cmp ecx, edx
jne 0x4e2e26
jmp 0x4e317d
cmp ebx, 1
jne 0x4e321e
lea eax, [0x643140]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00444130
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0xa0]
mov edi, 1
mov dword [esp + 0x70], eax
mov ebx, 1
mov eax, dword [esp + 0xac]
jmp 0x4e2d8f
mov dword [esp + 0x38], ebx
lea eax, [0x643140]
mov dword [esp], eax
mov dword [esp + 4], ebx
lea eax, [ebx + 4]
mov dword [esp + 0x3c], eax
mov dword [esp + 8], eax
call fcn.00444130
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0xa0]
mov edi, dword [esp + 0x3c]
mov dword [esp + 0x70], eax
mov ebx, dword [esp + 0x38]
mov eax, dword [esp + 0xac]
jmp 0x4e2d8f
mov ebx, ebp
jmp 0x4e2d75
lea esi, [ecx + edx]
cmp esi, eax
jg 0x4e330b
ja 0x4e354d
mov dword [esp + 0x40], eax
mov dword [esp + 0x34], esi
mov dword [esp + 0x6c], ebp
mov dword [esp], ebp
mov dword [esp + 4], esi
mov dword [esp + 8], eax
mov edi, dword [esp + 0x98]
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], ebx
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], edx
mov ecx, dword [esp + 0xac]
mov dword [esp + 0x20], ecx
call fcn.004e1d90
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 8], eax
call fcn.004e13e0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xb8], edx
add esp, 0x88
ret
cmp esi, 1
jne 0x4e3356
lea eax, [0x643140]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00444130
mov ebp, dword [esp + 0xc]
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0xa8]
mov ebx, dword [esp + 0xa0]
mov eax, 1
mov esi, 1
jmp 0x4e327e
mov dword [esp + 0x34], esi
lea eax, [0x643140]
mov dword [esp], eax
mov dword [esp + 4], esi
lea eax, [edx + ecx + 4]
mov dword [esp + 0x40], eax
mov dword [esp + 8], eax
call fcn.00444130
mov ebp, dword [esp + 0xc]
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0xa8]
mov ebx, dword [esp + 0xa0]
mov eax, dword [esp + 0x40]
mov esi, dword [esp + 0x34]
jmp 0x4e327e
test ebp, ebp
jle 0x4e33d8
lea eax, [esi + ebp*4 - 4]
mov edi, dword [esp + 0xac]
mov ebx, dword [esp + 0xa4]
lea ebx, [ebx + edi*4 - 4]
cmp eax, ebx
jne 0x4e33c8
mov ebx, dword [esp + 0xa0]
jmp 0x4e2d07
mov ebx, dword [esp + 0xa0]
mov eax, ebp
mov ebp, esi
jmp 0x4e2d0b
mov edi, dword [esp + 0xac]
jmp 0x4e33c8
mov ecx, ebx
mov edx, eax
mov ebx, dword [esp + 0xa0]
mov esi, dword [esp + 0x8c]
jmp 0x4e33a0
mov eax, dword [esp + 0xa4]
mov eax, dword [eax]
mov ecx, dword [esp + 0x8c]
mov dword [esp], ecx
mov ecx, dword [esp + 0x90]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x94]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x98]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], 0
call fcn.004e1c00
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xb8], edx
add esp, 0x88
ret
mov eax, dword [esp + 0x8c]
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], 0
mov eax, dword [esp + 0x94]
mov dword [esp + 0xb8], eax
add esp, 0x88
ret
mov ecx, dword [esp + 0x8c]
mov dword [esp], ecx
mov ecx, dword [esp + 0x90]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x94]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ebx
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x20], eax
call fcn.004e2c80
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xb8], edx
add esp, 0x88
ret
mov eax, ebx
mov ecx, esi
call fcn.0045ca00
call fcn.0045ca00
call fcn.0045ca00
call fcn.0045c9e0
mov ecx, ebx
mov edx, edi
call fcn.0045c9e0
mov edx, eax
call fcn.0045c9e0
call fcn.0045c9e0
mov ecx, esi
mov edx, eax
call fcn.0045c9e0
nop
call fcn.0045b380
jmp fcn.004e2c80