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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x248]
cmp eax, dword [ecx + 8]
jbe 0x5e91b5
sub esp, 0x2c8
mov ecx, dword [esp + 0x2cc]
mov edx, dword [ecx + 0x14]
mov ebx, dword [esp + 0x2d4]
movzx ebp, byte [ebx + 0x295]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x5e8bf8
lea edi, [esp + 0x124]
xor eax, eax
call fcn.00462cc4
mov ecx, dword [ebx + 0x78]
mov esi, dword [ebx + 0x7c]
lea ebp, [0x692c40]
cmp ecx, ebp
jne 0x5e919e
lea edi, [esp + 0x124]
call fcn.00462fb8
mov ecx, dword [esp + 0x148]
jmp 0x5e8c24
lea edi, [esp + 0x44]
xor eax, eax
call fcn.00462cc8
mov ecx, dword [ebx + 0x78]
mov esi, dword [ebx + 0x7c]
lea ebp, [0x693180]
cmp ecx, ebp
jne 0x5e9188
lea edi, [esp + 0x44]
call fcn.00462fe0
mov ecx, dword [esp + 0x68]
cmp ecx, 0x200
jbe 0x5e8d19
test ecx, 1
je 0x5e8d13
mov ebp, dword [ebx + 0x274]
lea esi, [ebp + 1]
mov eax, edx
mov edx, dword [ebx + 0x270]
mov edi, ecx
mov ecx, dword [ebx + 0x278]
cmp ecx, esi
jae 0x5e8cc1
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], edi
lea eax, [0x662ba0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], esi
call fcn.0044b610
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x2d4]
mov dword [ebx + 0x278], edx
mov edx, dword [0x8e4520]
test edx, edx
jne 0x5e8caa
mov dword [ebx + 0x270], eax
jmp 0x5e8cb5
lea edi, [ebx + 0x270]
call fcn.00462a70
mov edi, dword [esp + 0x3c]
mov ebp, ecx
mov edx, eax
mov eax, dword [esp + 0x40]
lea ecx, [ebp + 1]
mov dword [ebx + 0x274], ecx
mov ecx, dword [0x8b6a80]
mov esi, dword [0x8b6a84]
lea ebx, [edx + ebp*8 + 4]
mov dword [ebx], esi
mov ebx, dword [0x8e4520]
lea edx, [edx + ebp*8]
test ebx, ebx
jne 0x5e8cf3
mov dword [edx], ecx
cmp edi, 0x200
jmp 0x5e8d08
mov ebx, edi
mov edi, edx
mov ebp, eax
mov eax, ecx
call fcn.00462a70
cmp ebx, 0x200
mov eax, ebp
mov edx, eax
mov ebx, dword [esp + 0x2d4]
jmp 0x5e8d19
cmp ecx, 0x200
jb 0x5e8d21
shr edx, 9
shl edx, 9
mov eax, dword [ebx + 0x28c]
sub eax, edx
mov ecx, dword [esp + 0x2cc]
mov edx, dword [ecx + 0x10]
cmp edx, eax
jbe 0x5e8d3c
mov eax, dword [ecx + 8]
jmp 0x5e8d45
mov eax, dword [ecx + 8]
cmp eax, edx
ja 0x5e8d45
mov eax, edx
mov dword [esp + 0x24], eax
mov edx, dword [ecx + 0xc]
mov dword [esp], ebx
mov dword [esp + 4], edx
call fcn.005db680
mov eax, dword [esp + 8]
mov dword [esp + 0x20], eax
mov ecx, dword [esp + 0x2d4]
mov edx, dword [ecx + 0xa4]
mov ebx, dword [ecx + 0xa0]
test edx, edx
je 0x5e8d82
mov dword [esp + 0x38], edx
xor ebp, ebp
jmp 0x5e90cb
xor edx, edx
test edx, edx
je 0x5e8da7
mov edx, dword [ecx + 0xa4]
mov ebx, dword [ecx + 0xa0]
test edx, edx
je 0x5e8fc4
mov dword [esp + 0x38], edx
xor ebp, ebp
jmp 0x5e8ff3
xor edx, edx
test dl, dl
je 0x5e8dcc
mov edx, dword [ecx + 0xa4]
mov ebx, dword [ecx + 0xa0]
test edx, edx
je 0x5e8ed9
mov dword [esp + 0x38], edx
xor ebp, ebp
jmp 0x5e8f07
xor edx, edx
test dl, dl
je 0x5e8dea
mov edx, dword [ecx + 0xa4]
mov ebx, dword [ecx + 0xa0]
test edx, edx
je 0x5e8e12
mov dword [esp + 0x38], edx
xor ebp, ebp
jmp 0x5e8e33
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x2d0]
cmp edx, eax
jb 0x5e8e02
add eax, ecx
cmp edx, eax
setb al
jmp 0x5e8e04
xor eax, eax
mov byte [esp + 0x2d8], al
add esp, 0x2c8
ret
xor ecx, ecx
sub ecx, eax
jmp 0x5e8dee
mov edx, dword [esp + 0x214]
lea ebx, [edx + 0x2c]
mov ecx, dword [esp + 0x2d4]
mov edx, dword [esp + 0x38]
mov ebp, eax
mov eax, dword [esp + 0x20]
lea edi, [esp + 0x218]
mov esi, ebx
call fcn.004631a2
mov ecx, dword [esp + 0x2d4]
mov ecx, dword [ecx + 0xa4]
dec ecx
cmp ebp, ecx
je 0x5e8ecd
mov dword [esp + 0x28], ebp
mov dword [esp + 0x214], ebx
mov eax, dword [esp + 0x2cc]
mov dword [esp], eax
lea ecx, [esp + 0x218]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x28
call fcn.00402990
movzx eax, byte [esp + 0xc]
test al, al
jne 0x5e8e9f
mov eax, dword [esp + 0x28]
inc eax
mov ecx, dword [esp + 0x38]
cmp ecx, eax
jg 0x5e8e18
mov eax, dword [esp + 0x20]
jmp 0x5e8e12
mov edx, dword [esp + 0x2d4]
mov ecx, dword [edx + 0xa4]
mov edx, dword [edx + 0xa0]
mov ebx, dword [esp + 0x28]
lea eax, [ebx + 1]
cmp ecx, eax
jbe 0x5e8ed4
imul ebx, ebx, 0x2c
mov ecx, dword [ebx + edx + 0x38]
mov eax, dword [esp + 0x20]
jmp 0x5e8e14
xor ecx, ecx
jmp 0x5e8e14
call fcn.00462af0
xor edx, edx
mov ebx, dword [esp + 0x24]
lea ebp, [ebx + eax]
cmp edx, ebp
setb dl
jmp 0x5e8dce
mov edx, dword [esp + 0x214]
lea ebx, [edx + 0x2c]
mov ecx, dword [esp + 0x2d4]
mov edx, dword [esp + 0x38]
mov ebp, eax
mov eax, dword [esp + 0x20]
lea edi, [esp + 0x244]
mov esi, ebx
call fcn.004631a2
mov ecx, dword [esp + 0x2d4]
mov esi, ecx
mov ecx, dword [ecx + 0xa4]
dec ecx
cmp ebp, ecx
je 0x5e8fb6
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x214], ebx
mov eax, dword [esp + 0x2cc]
mov dword [esp], eax
lea ecx, [esp + 0x244]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x28
call fcn.00402990
movzx eax, byte [esp + 0xc]
test al, al
jne 0x5e8f84
mov eax, dword [esp + 0x2c]
inc eax
mov ecx, dword [esp + 0x38]
cmp ecx, eax
jg 0x5e8eec
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x2d4]
jmp 0x5e8ed9
mov edx, dword [esp + 0x2d4]
mov ecx, dword [edx + 0xa4]
mov ebx, dword [edx + 0xa0]
mov ebp, dword [esp + 0x2c]
lea eax, [ebp + 1]
cmp ecx, eax
jbe 0x5e8fbf
imul ebp, ebp, 0x2c
mov ebx, dword [ebp + ebx + 0x38]
mov eax, dword [esp + 0x20]
mov ecx, edx
mov edx, ebx
jmp 0x5e8edb
mov ecx, esi
xor edx, edx
jmp 0x5e8edb
call fcn.00462af0
xor edx, edx
mov ebx, dword [esp + 0x2cc]
cmp dword [ebx + 0xc], edx
setb dl
jmp 0x5e8da9
mov edx, dword [esp + 0x214]
lea ebx, [edx + 0x2c]
mov ecx, dword [esp + 0x2d4]
mov edx, dword [esp + 0x38]
mov ebp, eax
mov eax, dword [esp + 0x20]
lea edi, [esp + 0x270]
mov esi, ebx
call fcn.004631a2
mov ecx, dword [esp + 0x2d4]
mov esi, eax
mov eax, dword [ecx + 0xa4]
dec eax
cmp ebp, eax
je 0x5e90a2
mov dword [esp + 0x30], ebp
mov dword [esp + 0x214], ebx
mov eax, dword [esp + 0x2cc]
mov dword [esp], eax
lea ecx, [esp + 0x270]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x28
call fcn.00402990
movzx eax, byte [esp + 0xc]
test al, al
jne 0x5e9070
mov eax, dword [esp + 0x30]
inc eax
mov ecx, dword [esp + 0x38]
cmp ecx, eax
jg 0x5e8fd8
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x2d4]
jmp 0x5e8fc4
mov edx, dword [esp + 0x2d4]
mov ecx, dword [edx + 0xa4]
mov ebx, dword [edx + 0xa0]
mov ebp, dword [esp + 0x30]
lea eax, [ebp + 1]
cmp ecx, eax
jbe 0x5e90ab
imul ebp, ebp, 0x2c
mov ebx, dword [ebp + ebx + 0x38]
mov eax, dword [esp + 0x20]
mov ecx, edx
mov edx, ebx
jmp 0x5e8fc6
mov eax, esi
xor edx, edx
jmp 0x5e8fc6
call fcn.00462af0
mov edx, dword [esp + 0x214]
lea ebx, [edx + 0x2c]
mov ecx, dword [esp + 0x2d4]
mov edx, dword [esp + 0x38]
mov ebp, eax
mov eax, dword [esp + 0x20]
lea edi, [esp + 0x29c]
mov esi, ebx
call fcn.004631a2
mov ecx, dword [esp + 0x2d4]
mov esi, eax
mov eax, dword [ecx + 0xa4]
dec eax
cmp ebp, eax
je 0x5e917a
mov dword [esp + 0x34], ebp
mov dword [esp + 0x214], ebx
mov eax, dword [esp + 0x2cc]
mov dword [esp], eax
lea ecx, [esp + 0x29c]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x28
call fcn.00402990
movzx eax, byte [esp + 0xc]
test al, al
jne 0x5e9148
mov eax, dword [esp + 0x34]
inc eax
mov ecx, dword [esp + 0x38]
cmp ecx, eax
jg 0x5e90b0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x2d4]
jmp 0x5e8d82
mov edx, dword [esp + 0x2d4]
mov ecx, dword [edx + 0xa4]
mov ebx, dword [edx + 0xa0]
mov ebp, dword [esp + 0x34]
lea eax, [ebp + 1]
cmp ecx, eax
jbe 0x5e9183
imul ebp, ebp, 0x2c
mov ebx, dword [ebp + ebx + 0x38]
mov eax, dword [esp + 0x20]
mov ecx, edx
mov edx, ebx
jmp 0x5e8d84
mov eax, esi
xor edx, edx
jmp 0x5e8d84
call fcn.00462af0
mov dword [esp], ecx
mov dword [esp + 4], ebp
lea eax, [0x662460]
mov dword [esp + 8], eax
call fcn.00408df0
mov dword [esp], ecx
mov dword [esp + 4], ebp
lea eax, [0x662460]
mov dword [esp + 8], eax
call fcn.00408df0
nop
call fcn.00461660
jmp fcn.005e8b80