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

Disassembly:
mov ecx, dword [0x84873c]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x68]
cmp eax, dword [ecx + 8]
jbe 0x4e42ef
sub esp, 0xe8
mov eax, dword [esp + 0xec]
mov dword [eax + 0xac], 0
mov dword [eax + 0xb8], 0
mov byte [eax + 0xc0], 0
mov dword [eax + 0xc4], 0
mov byte [eax + 0xc8], 0
mov ecx, dword [esp + 0xfc]
mov dword [esp], ecx
mov ecx, dword [esp + 0x100]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x104]
mov dword [esp + 8], ecx
call fcn.00467b50
mov eax, dword [esp + 0xec]
lea ecx, [eax + 0xa8]
mov dword [esp + 0x6c], ecx
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov esi, dword [esp + 0xf8]
mov edi, dword [esp + 0xf0]
mov esi, dword [esp + 0xf4]
mov dword [esp + 0x64], esi
mov esi, dword [esp + 0xf8]
jmp 0x4e3c3c
mov eax, dword [esp + 0xec]
mov dword [esp + 0x64], edx
mov edx, ebp
mov ebp, esi
mov esi, ebx
mov ebx, ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x60], esi
mov dword [esp + 0x78], edi
test ebx, ebx
je 0x4e422d
mov dword [esp + 0x74], edx
mov dword [esp + 0x5c], ebp
mov dword [esp + 0x58], ebx
mov ecx, dword [edx]
mov dword [esp + 0x4c], ecx
lea edi, [esp + 0xc4]
mov ebx, eax
xor eax, eax
call fcn.0046a887
mov ecx, dword [ebx + 0x94]
lea ebp, [0x64eae0]
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 8], ecx
call fcn.0040f380
movzx ecx, byte [esp + 0x10]
mov byte [esp + 0x23], cl
mov esi, dword [esp + 0xc]
lea edi, [esp + 0xc4]
call fcn.0046ad46
lea edi, [esp + 0xa0]
lea esi, [esp + 0xc4]
call fcn.0046ad46
movzx ecx, byte [esp + 0x23]
test cl, cl
je 0x4e3e95
mov eax, dword [esp + 0xec]
mov ecx, dword [eax + 0xac]
test ecx, ecx
je 0x4e3d5e
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0xbc]
movzx ebx, byte [esp + 0xc0]
mov ebp, dword [esp + 0x6c]
mov dword [esp], ebp
mov esi, dword [esp + 0x4c]
mov dword [esp + 4], esi
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
mov byte [esp + 0x14], bl
call fcn.004e4340
movzx eax, byte [esp + 0x18]
test al, al
je 0x4e3d57
mov ecx, dword [esp + 0x5c]
dec ecx
mov edx, ecx
neg ecx
sar ecx, 0x1f
and ecx, 4
mov ebx, dword [esp + 0x74]
add ecx, ebx
mov ebx, dword [esp + 0x58]
dec ebx
mov esi, edx
mov ebp, ecx
mov edx, dword [esp + 0x64]
mov edi, dword [esp + 0x78]
mov ecx, ebx
mov ebx, dword [esp + 0x60]
jmp 0x4e3c25
mov eax, dword [esp + 0xec]
mov dword [esp], eax
call fcn.004e45e0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
test ecx, ecx
sete dl
seta bl
test eax, eax
xchg ebp, ebx
seta bl
xchg ebp, ebx
and edx, ebp
or ebx, edx
test bl, bl
je 0x4e3ded
mov edx, dword [esp + 0x64]
inc edx
mov ebx, dword [esp + 0x60]
cmp ebx, edx
jb 0x4e3d9a
mov edi, dword [esp + 0x78]
jmp 0x4e3dde
mov dword [esp + 0x40], ecx
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x64c720]
mov dword [esp + 0x10], eax
call fcn.0044fab0
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x40]
mov ebx, esi
lea ebp, [edi + edx*8 - 8]
lea esi, [edi + edx*8 - 4]
mov dword [esi], ecx
mov dword [ebp], eax
jmp 0x4e3df9
mov ebx, dword [esp + 0x60]
mov edx, dword [esp + 0x64]
mov edi, dword [esp + 0x78]
inc edx
mov ebp, dword [esp + 0xa0]
mov esi, dword [esp + 0xa4]
cmp ebx, edx
jae 0x4e3e4a
mov dword [esp + 0x54], ebp
mov dword [esp + 0x50], esi
mov dword [esp], edi
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x64c720]
mov dword [esp + 0x10], eax
call fcn.0044fab0
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x54]
mov esi, dword [esp + 0x50]
lea eax, [edi + edx*8 - 8]
mov dword [eax], ebp
lea ebp, [edi + edx*8 - 4]
mov dword [ebp], esi
mov eax, dword [esp + 0xac]
mov ecx, dword [esp + 0x58]
cmp ecx, eax
jb 0x4e42e9
mov dword [esp + 0x64], eax
mov ebp, dword [esp + 0x5c]
sub ebp, eax
mov esi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
shl eax, 2
sar ebp, 0x1f
and eax, ebp
mov ebp, dword [esp + 0x64]
sub ecx, ebp
mov ebp, dword [esp + 0x74]
add ebp, eax
jmp 0x4e3c25
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
call fcn.004e2220
mov eax, dword [esp + 8]
test eax, eax
jne 0x4e3f7c
mov eax, dword [esp + 0xec]
mov dword [esp], eax
call fcn.004e45e0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
test ecx, ecx
sete dl
seta bl
test eax, eax
xchg ebp, ebx
seta bl
xchg ebp, ebx
and edx, ebp
or ebx, edx
test bl, bl
je 0x4e3f43
mov edx, dword [esp + 0x64]
inc edx
mov ebx, dword [esp + 0x60]
cmp ebx, edx
jb 0x4e3ef0
mov edi, dword [esp + 0x78]
jmp 0x4e3f34
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x64c720]
mov dword [esp + 0x10], eax
call fcn.0044fab0
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x3c]
mov ebx, esi
lea ebp, [edi + edx*8 - 8]
lea esi, [edi + edx*8 - 4]
mov dword [esi], ecx
mov dword [ebp], eax
jmp 0x4e3f4f
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x60]
mov edi, dword [esp + 0x78]
mov ebp, dword [esp + 0x5c]
lea ecx, [ebp - 1]
mov ebp, ecx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, 4
mov eax, dword [esp + 0x74]
add ebp, eax
mov eax, ebp
mov ebp, dword [esp + 0x58]
dec ebp
mov esi, ecx
mov ecx, ebp
mov ebp, eax
jmp 0x4e3c25
mov dword [esp + 0x44], eax
movzx ecx, byte [esp + 0x10]
mov byte [esp + 0x21], cl
mov edx, dword [esp + 4]
mov dword [esp + 0x68], edx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x48], ebx
mov ebp, dword [esp + 0x6c]
mov dword [esp], ebp
mov esi, dword [esp + 0x4c]
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebx
mov byte [esp + 0x14], cl
call fcn.004e4340
movzx eax, byte [esp + 0x18]
test al, al
je 0x4e4001
mov ebp, dword [esp + 0x5c]
lea ecx, [ebp - 1]
mov ebp, ecx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, 4
mov eax, dword [esp + 0x74]
add ebp, eax
mov eax, ebp
mov ebp, dword [esp + 0x58]
lea ebx, [ebp - 1]
mov esi, ecx
mov ebp, eax
mov edx, dword [esp + 0x64]
mov edi, dword [esp + 0x78]
mov ecx, ebx
mov ebx, dword [esp + 0x60]
jmp 0x4e3c25
mov eax, dword [esp + 0xec]
mov dword [esp], eax
call fcn.004e45e0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
test ecx, ecx
sete dl
seta bl
test eax, eax
xchg ebp, ebx
seta bl
xchg ebp, ebx
and ebp, edx
or ebx, ebp
test bl, bl
je 0x4e4097
mov edx, dword [esp + 0x64]
inc edx
mov ebx, dword [esp + 0x60]
cmp ebx, edx
jb 0x4e4044
mov edi, dword [esp + 0x78]
jmp 0x4e4088
mov dword [esp + 0x38], ecx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x64c720]
mov dword [esp + 0x10], eax
call fcn.0044fab0
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x38]
mov ebx, esi
lea ebp, [edi + edx*8 - 8]
lea esi, [edi + edx*8 - 4]
mov dword [esi], ecx
mov dword [ebp], eax
jmp 0x4e40a3
mov ebx, dword [esp + 0x60]
mov edi, dword [esp + 0x78]
mov edx, dword [esp + 0x64]
mov dword [esp + 0x64], ebx
mov dword [esp + 0x60], edx
mov dword [esp + 0x70], edi
xor eax, eax
lea edi, [esp + 0xc4]
call fcn.0046a887
mov ecx, dword [esp + 0xec]
mov ebp, dword [ecx + 0x94]
lea esi, [0x64eae0]
mov dword [esp], esi
mov dword [esp + 4], ebp
mov ebp, dword [esp + 0x4c]
mov dword [esp + 8], ebp
call fcn.0040f380
movzx ecx, byte [esp + 0x10]
mov byte [esp + 0x22], cl
mov esi, dword [esp + 0xc]
lea edi, [esp + 0xc4]
call fcn.0046ad46
lea edi, [esp + 0x7c]
lea esi, [esp + 0xc4]
call fcn.0046ad46
movzx ecx, byte [esp + 0x22]
test cl, cl
je 0x4e41bf
mov edx, dword [esp + 0x60]
inc edx
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x80]
mov esi, dword [esp + 0x64]
cmp esi, edx
jb 0x4e4138
mov edi, dword [esp + 0x70]
jmp 0x4e417c
mov dword [esp + 0x54], ebp
mov dword [esp + 0x50], ebx
mov eax, dword [esp + 0x70]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x64c720]
mov dword [esp + 0x10], eax
call fcn.0044fab0
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x54]
mov esi, ebx
mov ebx, dword [esp + 0x50]
lea eax, [edi + edx*8 - 8]
mov dword [eax], ebx
lea ebx, [edi + edx*8 - 4]
mov dword [ebx], ebp
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x58]
cmp ecx, eax
jb 0x4e42e4
mov dword [esp + 0x64], eax
mov ebx, dword [esp + 0x5c]
sub ebx, eax
mov ebp, ebx
neg ebx
shl eax, 2
sar ebx, 0x1f
and eax, ebx
mov ebx, dword [esp + 0x64]
sub ecx, ebx
mov ebx, dword [esp + 0x74]
add ebx, eax
jmp 0x4e4220
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov ecx, dword [esp + 0x4c]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x68]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x10], ecx
movzx ecx, byte [esp + 0x21]
mov byte [esp + 0x14], cl
call fcn.004e4340
mov eax, dword [esp + 0x5c]
lea ebx, [eax - 1]
mov eax, ebx
neg eax
sar eax, 0x1f
and eax, 4
mov ecx, dword [esp + 0x74]
add eax, ecx
mov ecx, dword [esp + 0x58]
dec ecx
mov ebp, ebx
mov ebx, eax
mov edx, dword [esp + 0x60]
mov esi, dword [esp + 0x64]
mov edi, dword [esp + 0x70]
mov eax, esi
mov esi, ebp
mov ebp, ebx
mov ebx, eax
jmp 0x4e3c25
mov dword [esp], eax
call fcn.004e45e0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
test ecx, ecx
seta dl
sete bl
test eax, eax
xchg ebp, ebx
seta bl
xchg ebp, ebx
and ebx, ebp
or ebx, edx
test bl, bl
je 0x4e42bc
mov edx, dword [esp + 0x64]
inc edx
mov ebx, dword [esp + 0x60]
cmp ebx, edx
jb 0x4e4269
mov edi, dword [esp + 0x78]
jmp 0x4e42ad
mov dword [esp + 0x24], eax
mov dword [esp + 0x34], ecx
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x64c720]
mov dword [esp + 0x10], eax
call fcn.0044fab0
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x34]
mov ebx, esi
lea ebp, [edi + edx*8 - 8]
lea esi, [edi + edx*8 - 4]
mov dword [esi], ecx
mov dword [ebp], eax
jmp 0x4e42c8
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x60]
mov edi, dword [esp + 0x78]
mov dword [esp + 0x108], edi
mov dword [esp + 0x10c], edx
mov dword [esp + 0x110], ebx
add esp, 0xe8
ret
call fcn.0046a6d0
call fcn.0046a6d0
nop
call fcn.00469200
jmp fcn.004e3b70