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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xbc]
cmp eax, dword [ecx + 8]
jbe 0x4e4858
sub esp, 0x13c
mov eax, dword [esp + 0x148]
test eax, eax
jle 0x4e481b
mov ecx, dword [esp + 0x154]
test ecx, ecx
jle 0x4e4809
mov edx, dword [esp + 0x140]
lea ebx, [edx + eax*4 - 4]
mov ebp, dword [esp + 0x14c]
lea esi, [ebp + ecx*4 - 4]
cmp ebx, esi
jne 0x4e47c5
xor eax, eax
xor edx, edx
xor ebx, ebx
mov esi, dword [esp + 0x168]
cmp esi, 1
jne 0x4e47b9
mov edi, dword [esp + 0x164]
cmp dword [edi], 1
je 0x4e4799
mov edi, dword [esp + 0x15c]
test edi, edi
je 0x4e4745
cmp edi, 1
jne 0x4e4739
mov edi, dword [esp + 0x158]
cmp dword [edi], 1
jne 0x4e3bb1
test esi, esi
jne 0x4e46b5
test esi, esi
je 0x4e3bbd
cmp eax, esi
jl 0x4e4622
nop
mov ebx, dword [esp + 0x150]
cmp eax, ebx
jl 0x4e4583
mov dword [esp + 0x148], eax
mov eax, dword [esp + 0x150]
cmp ebx, eax
jle 0x4e457c
mov dword [esp + 0xac], ebx
mov dword [esp + 0x140], edx
cmp edx, ebp
je 0x4e3c08
mov dword [esp], edx
mov dword [esp + 4], ebp
shl eax, 2
mov dword [esp + 8], eax
call fcn.0045eba0
mov eax, dword [0x6fcf80]
mov ecx, dword [0x6fcf84]
mov edx, dword [0x6fcf88]
mov ebx, dword [esp + 0x14c]
mov dword [esp], ebx
mov ebp, dword [esp + 0x150]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x154]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
call fcn.004de190
mov eax, dword [esp + 0x18]
test eax, eax
jle 0x4e4569
mov ebx, dword [esp + 0x15c]
cmp ebx, 1
jle 0x4e455d
mov ebp, dword [esp + 0x168]
test ebp, ebp
jg 0x4e4405
mov esi, dword [esp + 0x158]
mov edi, dword [esi + ebx*4 - 4]
nop
nop
cmp edi, 0x10000
jb 0x4e43fc
mov eax, edi
shr edi, 0x10
mov ecx, 0x10
cmp edi, 0x100
jb 0x4e3ca7
shr edi, 8
add ecx, 8
cmp edi, 0x100
jae 0x4e484b
mov edx, esi
lea esi, [0x6e2360]
movzx esi, byte [esi + edi]
lea esi, [esi + ecx - 0x20]
xchg esi, ebx
neg ebx
xchg esi, ebx
lea ecx, [esi + 1]
cmp ecx, 0x20
sbb edi, edi
shl eax, cl
and eax, edi
add esi, 0xffffffe1
xchg esi, ebx
neg ebx
xchg esi, ebx
mov dword [esp + 0x58], esi
xor ecx, ecx
mov edi, dword [esp + 0x148]
mov edi, dword [esp + 0xac]
mov dword [esp + 0x144], edi
xor edi, edi
mov dword [esp + 0x54], edi
xor ecx, ecx
mov dword [esp + 0x50], ecx
xor ecx, ecx
mov dword [esp + 0x118], ecx
xor ecx, ecx
mov dword [esp + 0x60], ecx
xor ecx, ecx
mov dword [esp + 0x64], ecx
xor ecx, ecx
mov dword [esp + 0x11c], ecx
xor ecx, ecx
mov dword [esp + 0xac], ecx
xor ecx, ecx
mov dword [esp + 0xa8], ecx
xor ecx, ecx
mov dword [esp + 0x138], ecx
mov edi, dword [esp + 0x148]
xor ecx, ecx
jmp 0x4e3dc3
mov ebp, dword [esp + 0x70]
inc ebp
shl ebx, 1
mov dword [esp + 0x144], ecx
mov dword [esp + 0x140], eax
mov dword [esp + 0x54], esi
mov dword [esp + 0x50], edi
mov dword [esp + 0x110], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xac], eax
mov dword [esp + 0x108], ecx
mov ecx, dword [esp + 0x68]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0x100], edx
mov edx, dword [esp + 0x120]
mov dword [esp + 0x138], edx
mov edx, dword [esp + 0x158]
mov esi, dword [esp + 0x58]
mov ecx, ebp
mov eax, ebx
mov edi, dword [esp + 0x100]
mov ebx, dword [esp + 0x15c]
mov ebp, dword [esp + 0x168]
cmp esi, ecx
jle 0x4e4040
mov dword [esp + 0xa4], edi
mov dword [esp + 0x70], ecx
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x118]
mov dword [esp], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x140]
mov dword [esp + 0xc], eax
mov ecx, dword [esp + 0x144]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edi
call fcn.004e0460
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x5c]
test ebx, 0x80000000
jne 0x4e3f9b
mov ebp, dword [esp + 0x168]
test ebp, ebp
mov esi, dword [esp + 0xa4]
mov edi, dword [esp + 0x144]
mov esi, dword [esp + 0x140]
mov dword [esp + 0x118], esi
mov esi, dword [esp + 0xa4]
jne 0x4e3eb0
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0x6c], eax
mov dword [esp + 0xf0], ecx
mov ecx, dword [esp + 0xa8]
mov dword [esp + 0x68], ecx
mov dword [esp + 0xe8], edx
mov edx, dword [esp + 0x138]
mov dword [esp + 0x120], edx
mov eax, dword [esp + 0xf8]
mov ecx, dword [esp + 0xf0]
mov edx, dword [esp + 0xe8]
jmp 0x4e3d49
mov dword [esp + 0x134], eax
mov dword [esp + 0xa0], ecx
mov dword [esp + 0x9c], edx
mov ebx, dword [esp + 0x118]
mov dword [esp], ebx
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov ebx, dword [esp + 0x11c]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x60]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], edx
mov ebx, dword [esp + 0x164]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebp
mov esi, dword [esp + 0x16c]
mov dword [esp + 0x2c], esi
call fcn.004e0f20
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0xa8]
mov edi, dword [esp + 0x138]
mov dword [esp + 0x118], edi
mov edi, dword [esp + 0x9c]
mov dword [esp + 0x64], edi
mov edi, dword [esp + 0xa0]
mov dword [esp + 0x60], edi
mov edi, dword [esp + 0x134]
mov dword [esp + 0x11c], edi
mov dword [esp + 0x6c], esi
mov dword [esp + 0x68], ebp
mov dword [esp + 0x120], ebx
mov ebx, dword [esp + 0x5c]
mov ebp, dword [esp + 0x168]
mov esi, dword [esp + 0xac]
mov edi, dword [esp + 0xa8]
jmp 0x4e3d49
mov dword [esp + 0x130], eax
mov dword [esp + 0x98], ecx
mov dword [esp + 0x94], edx
mov ebx, dword [esp + 0x140]
mov dword [esp], ebx
mov ebx, dword [esp + 0x144]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0xa4]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov ebx, dword [esp + 0x14c]
mov dword [esp + 0x18], ebx
mov ebp, dword [esp + 0x150]
mov dword [esp + 0x1c], ebp
mov esi, dword [esp + 0x154]
mov dword [esp + 0x20], esi
call fcn.004df2a0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x168]
test ebp, ebp
mov ebx, dword [esp + 0x5c]
mov esi, dword [esp + 0x94]
mov edi, dword [esp + 0x98]
mov ebx, dword [esp + 0x130]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x5c]
jmp 0x4e3e5b
lea esi, [ebx - 2]
mov eax, dword [esp + 0x138]
mov ecx, dword [esp + 0xa8]
mov dword [esp + 0xe0], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0xe0]
jmp 0x4e4376
mov ebp, dword [esp + 0x74]
inc ebp
shl ebx, 1
mov dword [esp + 0x74], ebp
mov dword [esp + 0x144], ecx
mov dword [esp + 0x140], eax
mov dword [esp + 0x54], edi
mov dword [esp + 0x50], esi
mov dword [esp + 0xc8], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xac], eax
mov ecx, dword [esp + 0x68]
mov eax, dword [esp + 0x120]
mov ebp, dword [esp + 0x168]
mov esi, dword [esp + 0x78]
mov edi, edx
mov edx, dword [esp + 0x158]
mov ebp, dword [esp + 0x74]
cmp ebp, 0x20
jge 0x4e4347
mov dword [esp + 0x90], edi
mov dword [esp + 0x12c], eax
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x5c], ebx
mov eax, dword [esp + 0x118]
mov dword [esp], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x140]
mov dword [esp + 0xc], eax
mov ecx, dword [esp + 0x144]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edi
call fcn.004e0460
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x5c]
test ebx, 0x80000000
jne 0x4e42a8
mov ebp, dword [esp + 0x168]
test ebp, ebp
mov esi, dword [esp + 0x144]
mov edi, dword [esp + 0x90]
mov esi, dword [esp + 0x140]
mov dword [esp + 0x118], esi
mov esi, dword [esp + 0x144]
jne 0x4e41bd
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0x6c], eax
mov dword [esp + 0xb8], ecx
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x68], ecx
mov dword [esp + 0xb0], edx
mov edx, dword [esp + 0x12c]
mov dword [esp + 0x120], edx
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0xb0]
jmp 0x4e406f
mov dword [esp + 0x88], edx
mov dword [esp + 0x128], eax
mov dword [esp + 0x84], ecx
mov ebx, dword [esp + 0x118]
mov dword [esp], ebx
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov ebx, dword [esp + 0x11c]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x60]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], edx
mov ebx, dword [esp + 0x164]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebp
mov esi, dword [esp + 0x16c]
mov dword [esp + 0x2c], esi
call fcn.004e0f20
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0xac]
mov edi, dword [esp + 0x12c]
mov dword [esp + 0x118], edi
mov edi, dword [esp + 0x88]
mov dword [esp + 0x64], edi
mov edi, dword [esp + 0x84]
mov dword [esp + 0x60], edi
mov edi, dword [esp + 0x128]
mov dword [esp + 0x11c], edi
mov dword [esp + 0x6c], esi
mov dword [esp + 0x68], ebp
mov dword [esp + 0x120], ebx
mov ebx, dword [esp + 0x5c]
mov ebp, dword [esp + 0x168]
mov esi, dword [esp + 0x8c]
mov edi, dword [esp + 0xac]
jmp 0x4e406f
mov dword [esp + 0x124], eax
mov dword [esp + 0x80], edx
mov dword [esp + 0x7c], ecx
mov ebx, dword [esp + 0x140]
mov dword [esp], ebx
mov ebx, dword [esp + 0x144]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x90]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov ebx, dword [esp + 0x14c]
mov dword [esp + 0x18], ebx
mov ebp, dword [esp + 0x150]
mov dword [esp + 0x1c], ebp
mov esi, dword [esp + 0x154]
mov dword [esp + 0x20], esi
call fcn.004df2a0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x168]
test ebp, ebp
mov ebx, dword [esp + 0x5c]
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 0x80]
mov ebx, dword [esp + 0x124]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x5c]
jmp 0x4e4168
dec esi
mov ebx, dword [esp + 0x15c]
mov ebp, dword [esp + 0xac]
mov ebp, dword [esp + 0x168]
mov dword [esp + 0xd8], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0xd8]
test esi, esi
jl 0x4e43ad
cmp ebx, esi
jbe 0x4e4842
mov dword [esp + 0x78], esi
mov ebx, dword [edx + esi*4]
mov dword [esp + 0xd0], eax
xor eax, eax
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0xd0]
jmp 0x4e40c1
mov ecx, dword [esp + 0x144]
mov ebx, dword [esp + 0x140]
mov eax, ecx
jmp 0x4e43c1
mov ecx, ebp
test ecx, ecx
jle 0x4e43d8
lea ebp, [ecx - 1]
cmp eax, ebp
jbe 0x4e4839
mov esi, dword [ebx + ecx*4 - 4]
test esi, esi
je 0x4e43bf
cmp edi, ecx
jb 0x4e4832
mov dword [esp + 0x170], ebx
mov dword [esp + 0x174], ecx
mov dword [esp + 0x178], edi
add esp, 0x13c
ret
mov eax, edi
xor ecx, ecx
jmp 0x4e3c99
mov eax, dword [esp + 0x164]
mov eax, dword [eax]
test eax, 1
je 0x4e44bb
mov eax, dword [esp + 0x140]
mov dword [esp], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x148]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x14c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x150]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x154]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x158]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ebx
mov eax, dword [esp + 0x160]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x164]
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ebp
mov eax, dword [esp + 0x16c]
mov dword [esp + 0x2c], eax
call fcn.004e52b0
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x38]
mov dword [esp + 0x170], eax
mov dword [esp + 0x174], ecx
mov dword [esp + 0x178], edx
add esp, 0x13c
ret
mov eax, dword [esp + 0x140]
mov dword [esp], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x148]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x14c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x150]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x154]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x158]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ebx
mov eax, dword [esp + 0x160]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x164]
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ebp
mov eax, dword [esp + 0x16c]
mov dword [esp + 0x2c], eax
call fcn.004e4870
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x38]
mov dword [esp + 0x170], eax
mov dword [esp + 0x174], ecx
mov dword [esp + 0x178], edx
add esp, 0x13c
ret
mov ebp, dword [esp + 0x168]
jmp 0x4e3c76
mov ebx, dword [esp + 0x15c]
mov ebp, dword [esp + 0x168]
jmp 0x4e3c76
mov eax, ebx
jmp 0x4e3be3
cmp ebx, 1
jne 0x4e45d5
lea eax, [0x5a56a0]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.004451f0
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x154]
mov ebp, dword [esp + 0x14c]
mov esi, dword [esp + 0x168]
mov edi, dword [esp + 0x158]
mov ebx, 1
mov eax, 1
jmp 0x4e3bcd
lea eax, [0x5a56a0]
mov dword [esp], eax
mov dword [esp + 4], ebx
lea eax, [ebx + 4]
mov dword [esp + 0x4c], eax
mov dword [esp + 8], eax
call fcn.004451f0
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x154]
mov ebp, dword [esp + 0x14c]
mov esi, dword [esp + 0x168]
mov edi, dword [esp + 0x158]
mov ebx, dword [esp + 0x150]
mov eax, dword [esp + 0x4c]
jmp 0x4e3bcd
cmp esi, 1
jne 0x4e466f
lea eax, [0x5a56a0]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.004451f0
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x154]
mov ebp, dword [esp + 0x14c]
mov esi, dword [esp + 0x168]
mov edi, dword [esp + 0x158]
mov eax, 1
jmp 0x4e3bbd
lea eax, [0x5a56a0]
mov dword [esp], eax
mov dword [esp + 4], esi
lea ecx, [esi + 4]
mov dword [esp + 0x48], ecx
mov dword [esp + 8], ecx
call fcn.004451f0
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x154]
mov ebp, dword [esp + 0x14c]
mov esi, dword [esp + 0x168]
mov edi, dword [esp + 0x158]
mov eax, dword [esp + 0x48]
jmp 0x4e3bbd
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14c]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x150]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ecx
mov eax, dword [esp + 0x164]
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], esi
mov eax, dword [esp + 0x16c]
mov dword [esp + 0x2c], eax
call fcn.004e0f20
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
mov dword [esp + 0x170], eax
mov dword [esp + 0x174], ecx
mov dword [esp + 0x178], edx
add esp, 0x13c
ret
mov edi, dword [esp + 0x158]
jmp 0x4e3bb1
cmp eax, 1
jl 0x4e4770
mov dword [edx], 1
mov dword [esp + 0x170], edx
mov dword [esp + 0x174], 1
mov dword [esp + 0x178], eax
add esp, 0x13c
ret
lea eax, [0x5a56a0]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.004451f0
mov edx, dword [esp + 0xc]
mov eax, 1
jmp 0x4e474a
mov dword [esp + 0x170], edx
mov dword [esp + 0x174], 0
mov dword [esp + 0x178], eax
add esp, 0x13c
ret
mov edi, dword [esp + 0x164]
jmp 0x4e3b85
test eax, eax
jle 0x4e4800
mov ebx, dword [esp + 0x160]
test ebx, ebx
jle 0x4e47f7
lea esi, [edx + eax*4 - 4]
mov edi, dword [esp + 0x158]
lea ebx, [edi + ebx*4 - 4]
cmp esi, ebx
je 0x4e3b5f
mov ebx, dword [esp + 0x144]
jmp 0x4e3b65
mov edi, dword [esp + 0x158]
jmp 0x4e47eb
mov edi, dword [esp + 0x158]
jmp 0x4e47eb
test eax, eax
mov edx, dword [esp + 0x140]
mov ebp, dword [esp + 0x14c]
jmp 0x4e47c7
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x140]
mov ebp, dword [esp + 0x14c]
jmp 0x4e47c7
mov edx, edi
call fcn.0045e2e0
mov ecx, eax
mov eax, ebp
call fcn.0045e2a0
mov eax, esi
mov ecx, ebx
call fcn.0045e2a0
mov eax, edi
mov ecx, 0x100
call fcn.0045e2b0
nop
call fcn.0045ccc0
jmp fcn.004e3b00