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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4ea67e
add esp, 0xffffff80
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x54], 0x400
mov dword [esp + 0x5c], 0x10400
xor eax, eax
xor ecx, ecx
xor edx, edx
jmp 0x4e9f8c
lea ebx, [edx + 1]
mov eax, ebx
mov ecx, edi
mov edx, dword [esp + 0x70]
cmp eax, 2
jge 0x4ea1a7
mov dword [esp + 0x28], eax
lea ecx, [esp + eax*8 + 0x54]
mov edx, dword [ecx]
mov ebx, dword [esp + 0x8c]
cmp ebx, edx
xchg ebp, ebx
setb bl
xchg ebp, ebx
mov ecx, dword [ecx + 4]
mov esi, dword [esp + 0x90]
cmp esi, ecx
xchg edi, ebx
sete bl
xchg edi, ebx
setl al
and ebp, edi
or ebp, eax
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4e9fd8
mov ecx, dword [esp + 0x90]
jmp 0x4e9fda
mov ebx, edx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x34], ecx
lea eax, [0x516920]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.00449470
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x50]
sub eax, ecx
mov dword [esp + 0x4c], eax
mov ebx, dword [esp + 0x90]
mov ebp, dword [esp + 0x34]
sbb ebx, ebp
mov dword [esp + 0x48], ebx
mov edi, dword [esp + 0xc]
mov dword [esp + 0x70], edi
mov edx, dword [esp + 0x84]
mov edx, dword [edx + 0x10]
mov ebp, dword [esp + 0x88]
mov dword [esp], ebp
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
call edx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x20]
test eax, eax
je 0x4ea0a5
mov eax, dword [0x711e5c]
cmp dword [0x711e58], ecx
je 0x4ea079
mov eax, 1
jmp 0x4ea0a1
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x64], ebp
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00403820
movzx eax, byte [esp + 0xc]
xor eax, 1
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x64]
test al, al
jne 0x4ea104
mov eax, dword [esp + 0x70]
mov dword [esp], eax
mov ecx, dword [esp + 0x50]
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.004ead10
mov eax, dword [esp + 0xc]
test eax, eax
jge 0x4ea176
mov edx, dword [esp + 0x28]
cmp edx, 1
je 0x4ea137
mov ebx, dword [esp + 0x90]
mov ebp, dword [esp + 0x34]
cmp ebx, ebp
xchg ebp, ebx
sete bl
xchg ebp, ebx
mov esi, dword [esp + 0x8c]
mov edi, dword [esp + 0x50]
cmp esi, edi
sete bl
and ebp, ebx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4e9f81
jmp 0x4ea137
mov dword [esp + 0x94], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0xa0], ebx
mov dword [esp + 0xa4], ebp
sub esp, 0xffffff80
ret
mov eax, dword [0x711c78]
mov ecx, dword [0x711c7c]
mov dword [esp + 0x94], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], ecx
sub esp, 0xffffff80
ret
mov ecx, dword [esp + 0x50]
cmp ecx, eax
jb 0x4ea678
mov ebx, eax
sar eax, 0x1f
mov ebp, dword [esp + 0x4c]
add ebp, ebx
mov esi, dword [esp + 0x48]
adc eax, esi
sub ecx, ebx
mov esi, ecx
neg ecx
sar ecx, 0x1f
and ecx, ebx
mov ebx, dword [esp + 0x70]
lea edx, [ecx + ebx]
jmp 0x4ea1ad
mov esi, ecx
xor eax, eax
xor ebp, ebp
cmp esi, 4
jb 0x4ea66c
lea ecx, [esi - 4]
mov ebx, ecx
neg ecx
sar ecx, 0x1f
and ecx, 4
lea edi, [edx + ecx]
mov dword [esp + 0x74], edi
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebx
nop
cmp ebx, 1
jbe 0x4ea660
mov dword [esp + 0x2c], ebp
lea ebx, [esi - 6]
movzx edx, word [edx + ecx]
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebx
mov ecx, ebx
neg ebx
sar ebx, 0x1f
and ebx, 2
lea ebp, [edi + ebx]
mov dword [esp + 0x74], ebp
nop
cmp ecx, 1
jbe 0x4ea656
lea ecx, [esi - 8]
movzx ebx, word [edi + ebx]
mov dword [esp + 0x50], ebx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], ecx
mov edi, ecx
neg ecx
sar ecx, 0x1f
and ecx, 2
lea ebx, [ebp + ecx]
mov dword [esp + 0x74], ebx
nop
cmp edi, 1
jbe 0x4ea64a
lea edi, [esi - 0xa]
movzx ebp, word [ebp + ecx]
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x78], edi
mov dword [esp + 0x7c], edi
mov ecx, edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, 2
lea ebp, [ebx + edi]
mov dword [esp + 0x74], ebp
nop
cmp ecx, 1
jbe 0x4ea640
lea ecx, [esi - 0xc]
movzx ebx, word [ebx + edi]
mov dword [esp + 0x44], ebx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], ecx
mov edi, ecx
neg ecx
sar ecx, 0x1f
and ecx, 2
lea ebx, [ecx + ebp]
mov dword [esp + 0x74], ebx
nop
cmp edi, 3
jbe 0x4ea634
lea edi, [esi - 0x10]
mov ebp, dword [ebp + ecx]
mov dword [esp + 0x40], ebp
mov dword [esp + 0x78], edi
mov dword [esp + 0x7c], edi
mov ecx, edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, 4
lea ebp, [edi + ebx]
mov dword [esp + 0x74], ebp
nop
cmp ecx, 3
jbe 0x4ea62a
lea ecx, [esi - 0x14]
mov ebx, dword [ebx + edi]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], ecx
mov edi, ecx
neg ecx
sar ecx, 0x1f
and ecx, 4
lea ebx, [ecx + ebp]
mov dword [esp + 0x74], ebx
nop
cmp edi, 1
jbe 0x4ea61e
mov dword [esp + 0x38], edx
mov dword [esp + 0x30], eax
lea eax, [esi - 0x16]
movzx ecx, word [ebp + ecx]
mov word [esp + 0x26], cx
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
neg eax
sar eax, 0x1f
and eax, 2
add eax, ebx
mov dword [esp + 0x74], eax
lea eax, [0x5274a0]
mov dword [esp], eax
call fcn.0040ba60
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x38]
mov dword [eax], ecx
mov ecx, dword [esp + 0x50]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x4c]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], 0
mov ecx, dword [esp + 0x44]
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], 0
mov ecx, dword [esp + 0x40]
mov dword [eax + 0x18], ecx
mov dword [eax + 0x1c], 0
mov ecx, dword [esp + 0x3c]
mov dword [eax + 0x20], ecx
mov dword [eax + 0x24], 0
movzx ecx, word [esp + 0x26]
mov word [eax + 0x28], cx
movzx ecx, cx
mov edx, dword [esp + 0x74]
lea ebx, [esp + 0x74]
cmp dword [ebx + 4], ecx
jl 0x4ea5c4
mov dword [esp + 0x68], eax
mov dword [esp], 0
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0044d230
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x68]
mov dword [edx + 0x30], ecx
mov ecx, dword [0x737a60]
test ecx, ecx
jne 0x4ea3ce
mov dword [edx + 0x2c], eax
jmp 0x4ea3d6
lea edi, [edx + 0x2c]
call fcn.004614c0
cmp dword [edx + 0x10], 0xffff
sete al
mov ecx, dword [edx + 0x14]
test ecx, ecx
sete cl
and eax, ecx
test al, al
jne 0x4ea41f
cmp dword [edx + 0x18], 0xffff
sete al
mov ecx, dword [edx + 0x1c]
test ecx, ecx
sete cl
and eax, ecx
test al, al
jne 0x4ea41f
cmp dword [edx + 0x20], 0xffffffff
sete al
mov ecx, dword [edx + 0x24]
test ecx, ecx
sete cl
and eax, ecx
test al, al
je 0x4ea503
mov eax, dword [esp + 0x84]
mov dword [esp], eax
mov ecx, dword [esp + 0x88]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x30]
mov dword [esp + 0xc], edx
mov ebx, dword [esp + 0x2c]
mov dword [esp + 8], ebx
call fcn.004ea690
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
test eax, eax
je 0x4ea46b
mov ecx, dword [esp + 0x30]
mov ebx, dword [esp + 0x2c]
jmp 0x4ea4cc
test ecx, ecx
setg cl
xchg esi, ebx
sete bl
xchg esi, ebx
and esi, 1
or ecx, esi
test cl, cl
jne 0x4ea48a
mov ecx, dword [esp + 0x30]
mov ebx, dword [esp + 0x2c]
jmp 0x4ea4cc
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebp
mov eax, dword [esp + 0x84]
mov dword [esp], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 4], eax
mov dword [esp + 0xc], ebp
mov dword [esp + 8], ebx
mov eax, dword [esp + 0x68]
mov dword [esp + 0x10], eax
call fcn.004ea910
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x30]
mov ebx, dword [esp + 0x2c]
test eax, eax
je 0x4ea50b
mov dword [esp + 0x94], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], edx
sub esp, 0xffffff80
ret
mov ecx, dword [esp + 0x30]
mov ebx, dword [esp + 0x2c]
mov eax, dword [esp + 0x68]
mov edx, dword [eax + 0x18]
mov ebp, dword [eax + 0x1c]
sub ebx, edx
sbb ecx, ebp
mov edx, dword [eax + 0x20]
mov ebp, dword [eax + 0x24]
sub ebx, edx
sbb ecx, ebp
add edx, ebx
adc ebp, ecx
test ebp, ebp
jl 0x4ea556
mov esi, dword [esp + 0x8c]
cmp edx, esi
setae dl
mov esi, dword [esp + 0x90]
cmp esi, ebp
xchg ebp, ebx
setl bl
xchg ebp, ebx
xchg esi, ebx
sete bl
xchg esi, ebx
and edx, esi
or edx, ebp
test dl, dl
je 0x4ea595
mov eax, dword [0x711c78]
mov ecx, dword [0x711c7c]
mov dword [esp + 0x94], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], ecx
sub esp, 0xffffff80
ret
mov dword [esp + 0x94], eax
mov dword [esp + 0x9c], ecx
mov dword [esp + 0x98], ebx
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
sub esp, 0xffffff80
ret
lea eax, [0x51abe0]
mov dword [esp], eax
call fcn.0040ba60
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x53e2ae]
mov dword [eax], ecx
mov dword [esp + 0x94], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0x98], 0
lea ecx, [0x57acc0]
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xa4], eax
sub esp, 0xffffff80
ret
mov eax, 1
mov ecx, edi
call fcn.00461540
mov eax, 3
call fcn.00461540
mov eax, 3
mov ecx, edi
call fcn.00461540
mov eax, 1
call fcn.00461540
mov eax, 1
mov ecx, edi
call fcn.00461540
mov eax, 1
call fcn.00461540
mov eax, 1
mov ecx, ebx
call fcn.00461540
mov eax, 4
mov ecx, esi
call fcn.004615a0
call fcn.004615a0
nop
call fcn.004600b0
jmp fcn.004e9f30