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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x38]
cmp eax, dword [ecx + 8]
jbe 0x4e0c4e
sub esp, 0xb8
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0xe4]
mov edx, eax
sub eax, ecx
lea ebx, [ecx - 1]
cmp ebx, ecx
jae 0x4e0c47
nop
mov ebp, dword [esp + 0xe0]
mov esi, dword [ebp + ecx*4 - 4]
nop
nop
nop
cmp esi, 0x10000
jb 0x4e0bd0
shr esi, 0x10
mov edi, 0x10
cmp esi, 0x100
jb 0x4e040e
shr esi, 8
add edi, 8
cmp esi, 0x100
jae 0x4e0c40
mov dword [esp + 0x6c], eax
mov dword [esp + 0x74], ebx
mov dword [esp + 0x68], edi
lea eax, [0x869c00]
movzx eax, byte [eax + esi]
mov dword [esp + 0x70], eax
mov dword [esp], ecx
call fcn.004e0260
mov eax, dword [esp + 4]
mov dword [esp + 0x9c], eax
mov ecx, dword [eax]
mov dword [esp + 0xa4], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x4c], edx
mov ebx, dword [eax + 8]
mov dword [esp + 0x50], ebx
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov ebp, dword [esp + 0xe0]
mov dword [esp + 0xc], ebp
mov ebp, dword [esp + 0xe4]
mov dword [esp + 0x10], ebp
mov esi, dword [esp + 0xe8]
mov dword [esp + 0x14], esi
mov esi, dword [esp + 0x68]
mov edi, dword [esp + 0x70]
lea esi, [edi + esi - 0x20]
xchg esi, ebx
neg ebx
xchg esi, ebx
mov dword [esp + 0x70], esi
mov dword [esp + 0x18], esi
call fcn.004e6200
nop
mov eax, dword [esp + 0xd8]
lea ecx, [eax + 1]
mov edx, dword [esp + 0xd0]
cmp ecx, edx
jg 0x4e0b5b
test ecx, ecx
jl 0x4e0c39
mov ebx, dword [esp + 0xc8]
cmp eax, edx
ja 0x4e0c32
mov dword [esp + 0xb0], ebx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], edx
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x18], ecx
call fcn.004e6200
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0xd8]
mov edx, dword [esp + 0x3c]
cmp ecx, edx
jae 0x4e0c2b
mov ebx, dword [esp + 0xb0]
mov dword [ebx + ecx*4], eax
nop
mov eax, dword [esp + 0xc4]
test eax, eax
jle 0x4e0b49
lea ecx, [eax - 1]
cmp ecx, eax
jae 0x4e0c24
mov ecx, dword [esp + 0xbc]
lea ebp, [ecx + eax*4 - 4]
mov esi, dword [esp + 0x40]
lea edi, [esi - 1]
cmp edi, esi
jae 0x4e0c24
lea edi, [ebx + esi*4 - 4]
cmp ebp, edi
xchg ebp, ebx
sete bl
xchg ebp, ebx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4e0b3b
xor eax, eax
xor ecx, ecx
nop
mov ebp, dword [esp + 0x6c]
lea edi, [ebp + 1]
cmp edi, ecx
jg 0x4e0ad4
test edi, edi
jl 0x4e0c1d
mov dword [esp + 0x30], ecx
mov dword [esp + 0xac], eax
mov dword [esp + 0x2c], edi
mov edx, dword [esp + 0xe4]
lea ebx, [edx + 1]
mov dword [esp], ebx
call fcn.004e0260
mov eax, dword [esp + 4]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
mov ebx, dword [eax]
mov ebp, dword [esp + 0x74]
mov esi, dword [esp + 0x4c]
cmp ebp, esi
jae 0x4e0c16
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x58], edx
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa8], ebx
mov ebp, dword [esp + 0xe4]
mov edi, dword [esp + 0xa4]
mov eax, dword [edi + ebp*4 - 4]
mov dword [esp + 0x48], eax
jmp 0x4e0820
mov dword [esp + 0x80], eax
mov dword [esp + 0x54], edi
mov dword [esp], eax
mov ecx, dword [esp + 0x44]
mov dword [esp + 4], ecx
call fcn.004e60e0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x80]
mov edi, dword [esp + 0x54]
mov edx, dword [esp + 0xe4]
mov ebx, dword [esp + 0x6c]
mov esi, dword [esp + 0x3c]
mov edi, dword [esp + 0xb0]
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x64], eax
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x60], ecx
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x84]
nop
mov esi, dword [esp + 0x64]
cmp eax, esi
jbe 0x4e098f
mov eax, 1
test al, al
je 0x4e0982
mov eax, dword [esp + 0x60]
dec eax
mov ecx, dword [esp + 0x48]
lea edi, [esi + ecx]
cmp edi, esi
jae 0x4e0612
mov ebp, dword [esp + 0x5c]
cmp edx, ebp
ja 0x4e0bf3
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov ebx, dword [esp + 0xa4]
mov dword [esp + 0xc], ebx
mov esi, dword [esp + 0x4c]
mov dword [esp + 0x10], esi
mov edi, dword [esp + 0x50]
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], 0
call fcn.004e62a0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0xe4]
mov edx, dword [esp + 0x58]
cmp ecx, edx
jae 0x4e0bec
mov ebx, dword [esp + 0xa8]
mov dword [ebx + ecx*4], eax
mov eax, dword [esp + 0x6c]
lea ebp, [eax + edx]
test ebp, ebp
jl 0x4e0be5
cmp eax, ebp
ja 0x4e0be5
mov esi, dword [esp + 0x40]
cmp ebp, esi
ja 0x4e0be5
sub esi, eax
mov edi, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
shl eax, 2
sar esi, 0x1f
and esi, eax
mov eax, dword [esp + 0xb0]
add esi, eax
mov ebp, dword [esp + 0x6c]
mov eax, dword [esp + 0x3c]
cmp ebp, eax
ja 0x4e0be5
mov dword [esp + 0x7c], edi
mov dword [esp + 0xb4], esi
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], edi
mov dword [esp + 0xc], esi
sub eax, ebp
mov dword [esp + 0x78], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x20], edx
call fcn.004e6160
mov eax, dword [esp + 0x24]
test eax, eax
jne 0x4e08fe
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x2c]
cmp ecx, edx
jae 0x4e0bd7
mov ebx, dword [esp + 0xac]
mov dword [ebx + ecx*4], eax
lea eax, [ecx - 1]
mov ecx, dword [esp + 0xb0]
mov ebp, dword [esp + 0x48]
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0x4c]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x58]
mov ebx, dword [esp + 0xa8]
mov ebp, dword [esp + 0xe4]
mov esi, edi
mov edi, dword [esp + 0xa4]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x6c]
test edx, edx
jl 0x4e09b4
lea esi, [ebp + edx]
mov edi, dword [esp + 0x3c]
cmp esi, edi
jae 0x4e0c0f
mov dword [esp + 0x74], esi
mov ebx, dword [esp + 0xb0]
mov esi, dword [ebx + esi*4]
cmp esi, eax
je 0x4e09a2
lea ecx, [edx + ebp - 1]
cmp ecx, edi
jae 0x4e0c08
mov ecx, dword [ebx + ecx*4]
mov dword [esp], esi
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004e6100
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xe4]
lea ebx, [edx - 2]
mov ebp, dword [esp + 0x4c]
cmp ebx, ebp
jae 0x4e0c01
mov dword [esp + 0x60], eax
mov dword [esp + 0x54], ecx
mov ecx, dword [esp + 0xa4]
mov ebx, dword [ecx + edx*4 - 8]
mov dword [esp + 0x44], ebx
mov dword [esp], eax
mov dword [esp + 4], ebx
call fcn.004e60e0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0xe4]
mov ebx, dword [esp + 0x6c]
lea ebp, [ebx + edx - 2]
mov esi, dword [esp + 0x3c]
cmp ebp, esi
jae 0x4e0bfa
mov edi, dword [esp + 0xb0]
mov ebp, dword [edi + ebp*4]
mov dword [esp + 0x38], ebp
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x94]
jmp 0x4e0691
mov eax, dword [esp + 0x74]
test eax, eax
jl 0x4e0bde
mov ecx, dword [esp + 0x6c]
cmp ecx, eax
ja 0x4e0bde
mov eax, dword [esp + 0xb4]
mov dword [esp], eax
mov ecx, dword [esp + 0xe4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x7c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x18], eax
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x1c], edx
mov ebx, dword [esp + 0x50]
mov dword [esp + 0x20], ebx
call fcn.004e6120
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0xb0]
mov edx, dword [ecx + eax*4]
add edx, dword [esp + 0x24]
mov dword [ecx + eax*4], edx
mov eax, dword [esp + 0x60]
dec eax
jmp 0x4e07c9
mov ecx, dword [esp + 0x48]
mov eax, dword [esp + 0x60]
jmp 0x4e06bf
jne 0x4e099b
cmp ecx, ebp
seta al
jmp 0x4e06a3
xor eax, eax
jmp 0x4e06a3
mov ecx, eax
mov edx, ebp
mov ebx, dword [esp + 0x6c]
mov eax, 0xffffffff
jmp 0x4e06bf
nop
lea eax, [0x894f60]
mov dword [esp], eax
lea ecx, [0x6813c0]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x9c]
mov dword [esp + 8], edx
call fcn.0045c0a0
nop
lea eax, [0x894f60]
mov dword [esp], eax
lea eax, [0x6813c0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 8], eax
call fcn.0045c0a0
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 8], eax
call fcn.004dccf0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x74], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x7c], ecx
mov edx, dword [esp + 0xc]
mov dword [esp + 0xb4], edx
mov ebx, dword [esp + 0xb0]
mov dword [esp], ebx
mov ebp, dword [esp + 0x3c]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x40]
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], esi
mov edi, dword [esp + 0x70]
mov dword [esp + 0x18], edi
call fcn.004e6250
mov eax, dword [esp + 0xb0]
mov dword [esp], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 8], eax
call fcn.004dccf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0xb4]
mov dword [esp + 0xec], ebx
mov ebx, dword [esp + 0x7c]
mov dword [esp + 0xf0], ebx
mov ebx, dword [esp + 0x74]
mov dword [esp + 0xf4], ebx
mov dword [esp + 0xf8], edx
mov dword [esp + 0xfc], ecx
mov dword [esp + 0x100], eax
add esp, 0xb8
ret
test ebp, ebp
jne 0x4e0b09
lea eax, [0x640560]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00438de0
mov eax, dword [esp + 0xc]
mov ecx, 1
mov edi, 1
jmp 0x4e05a4
mov dword [esp + 0x2c], edi
lea eax, [0x640560]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [ebp + 5]
mov dword [esp + 0x30], eax
mov dword [esp + 8], eax
call fcn.00438de0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x30]
mov edi, dword [esp + 0x2c]
jmp 0x4e05a4
mov eax, ecx
mov ecx, dword [esp + 0xc4]
jmp 0x4e058c
mov ecx, dword [esp + 0xbc]
mov esi, dword [esp + 0x40]
xor ebp, ebp
jmp 0x4e057e
test eax, eax
jne 0x4e0b97
lea eax, [0x640560]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00438de0
mov ebx, dword [esp + 0xc]
mov eax, dword [esp + 0xd8]
mov ecx, 1
mov edx, 1
jmp 0x4e04d2
mov dword [esp + 0x28], ecx
lea edx, [0x640560]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ebx, [eax + 5]
mov dword [esp + 0x34], ebx
mov dword [esp + 8], ebx
call fcn.00438de0
mov ebx, dword [esp + 0xc]
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x34]
jmp 0x4e04d2
xor edi, edi
jmp 0x4e0400
call fcn.00427150
ud2
call fcn.00427250
ud2
call fcn.00427250
ud2
call fcn.00427150
ud2
call fcn.00427250
ud2
call fcn.00427150
ud2
call fcn.00427150
ud2
call fcn.00427150
ud2
call fcn.00427150
ud2
call fcn.00427150
ud2
call fcn.00427250
ud2
call fcn.00427150
ud2
call fcn.00427150
ud2
call fcn.00427250
ud2
call fcn.00427250
ud2
call fcn.00427150
ud2
call fcn.00427150
ud2
call fcn.0044b940
jmp fcn.004e03a0