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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5bf272
sub esp, 0x70
mov eax, dword [esp + 0x78]
test eax, eax
je 0x5bf221
mov ecx, dword [esp + 0x74]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x66e87d]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
call fcn.004b9920
mov eax, dword [esp + 0x10]
test eax, eax
je 0x5bf1b2
lea ecx, [eax + 1]
mov edx, dword [esp + 0x78]
cmp ecx, edx
je 0x5bf186
mov dword [esp + 0x5c], eax
mov dword [esp + 0x28], ecx
lea eax, [0x6332c0]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], edx
call fcn.00442930
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x5c]
cmp ecx, 0xffffffff
je 0x5bf175
mov edx, dword [esp + 0x78]
cmp ecx, edx
ja 0x5bf26c
mov ebx, dword [esp + 0x74]
mov ebp, edx
xor esi, esi
xor edi, edi
jmp 0x5beb9e
mov dword [eax + edi*4], ebp
mov ebp, dword [esp + 0x74]
mov ebp, dword [esp + 0x78]
mov edi, ebx
mov ebx, dword [esp + 0x74]
cmp ecx, esi
jle 0x5bec3e
mov dword [esp + 0x2c], edi
movzx ebp, byte [ebx + esi]
cmp ebp, 0x80
jge 0x5bec05
inc esi
lea ebx, [edi + 1]
cmp ebx, edx
jbe 0x5beb8d
mov dword [esp + 0x24], ebp
mov dword [esp + 0x58], esi
lea ecx, [0x6332c0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edi
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ebx
call fcn.004429e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
lea ebx, [ecx + 1]
mov ecx, dword [esp + 0x5c]
mov ebp, dword [esp + 0x24]
mov esi, dword [esp + 0x58]
mov edi, dword [esp + 0x2c]
jmp 0x5beb8d
mov dword [esp + 0x30], edx
mov dword [esp + 0x6c], eax
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
call fcn.004520d0
mov ebp, dword [esp + 0xc]
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x74]
mov edi, dword [esp + 0x2c]
jmp 0x5bebb7
mov esi, dword [esp + 0x28]
xor ecx, ecx
mov ecx, 0x48
mov dword [esp + 0x44], ecx
mov ecx, pe_nt_image_headers32
mov dword [esp + 0x38], ecx
xor ecx, ecx
jmp 0x5beeb0
mov edx, dword [esp + 0x3c]
add edx, 0x24
mov ebp, dword [esp + 0x78]
mov ecx, edi
mov dword [esp + 0x20], ebx
mov dword [esp + 0x3c], edx
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x74]
mov edi, dword [esp + 0x2c]
cmp ebp, esi
je 0x5bf0c1
jbe 0x5bf263
movzx edx, byte [ebx + esi]
lea edi, [edx - 0x30]
xchg edi, eax
cmp al, 9
xchg edi, eax
ja 0x5bf08a
add edx, 0xffffffea
movzx edx, dl
mov edi, 1
xchg edi, eax
test al, al
xchg edi, eax
je 0x5bf01b
mov edi, dword [esp + 0x20]
imul edi, edx
add edi, ecx
test edi, edi
jl 0x5befac
mov ecx, ebx
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x44]
sub ebx, ebp
cmp ebx, 1
jge 0x5bef99
mov ebx, 1
inc esi
cmp edx, ebx
jl 0x5bed6e
lea edx, [ebx - 0x24]
neg edx
mov ebx, dword [esp + 0x20]
imul ebx, edx
cmp ebx, 0x38e38e3
jl 0x5bec5d
lea eax, [0x653e00]
mov dword [esp], eax
call fcn.0040b4f0
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x78]
mov dword [edi + 4], eax
mov eax, dword [0x8326a0]
test eax, eax
jne 0x5bed63
mov eax, dword [esp + 0x74]
mov dword [edi], eax
mov dword [edi + 0xc], 2
lea eax, [0x66e8d7]
mov dword [edi + 8], eax
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
lea eax, [0x6c8690]
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], edi
add esp, 0x70
ret
mov eax, dword [esp + 0x74]
call fcn.0045ace0
jmp 0x5bed28
mov dword [esp + 0x6c], eax
mov dword [esp + 0x54], esi
mov dword [esp + 0x40], edi
mov eax, dword [esp + 0x34]
sub edi, eax
mov dword [esp], edi
mov edx, dword [esp + 0x2c]
lea ebx, [edx + 1]
mov dword [esp + 0x5c], ebx
mov dword [esp + 4], ebx
test eax, eax
sete al
mov byte [esp + 8], al
call fcn.005bfa10
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x5c]
test ecx, ecx
je 0x5bf25e
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x40]
mov ebx, eax
cdq
idiv ecx
mov edx, dword [esp + 0x38]
add edx, eax
mov eax, ebx
mov ebx, edx
cdq
idiv ecx
cmp ebx, 0x10ffff
jg 0x5bef2a
mov ebp, dword [esp + 0x2c]
cmp ebp, 0x400
jge 0x5bef2a
mov dword [esp + 0x50], ebx
mov dword [esp + 0x4c], edx
mov esi, dword [esp + 0x30]
cmp ecx, esi
ja 0x5beeea
mov eax, dword [esp + 0x6c]
mov dword [eax + ebp*4], 0
lea ebp, [edx + 1]
cmp ecx, ebp
jb 0x5bf257
mov dword [esp + 0x30], esi
mov dword [esp + 0x48], ebp
mov edi, ecx
sub ecx, ebp
sub esi, ebp
xchg esi, ebx
neg ebx
xchg esi, ebx
shl ebp, 2
sar esi, 0x1f
and ebp, esi
add ebp, eax
cmp edx, edi
ja 0x5bf24e
mov dword [esp + 0x5c], edi
sub edi, edx
mov esi, dword [esp + 0x30]
sub esi, edx
xchg esi, ebx
neg ebx
xchg esi, ebx
shl edx, 2
sar esi, 0x1f
and edx, esi
add edx, eax
cmp ecx, edi
jle 0x5beee3
mov dword [esp + 0x68], eax
cmp ebp, edx
je 0x5bee75
mov dword [esp], ebp
mov dword [esp + 4], edx
shl edi, 2
mov dword [esp + 8], edi
call fcn.0045b690
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x68]
mov dword [edx + eax*4], ecx
mov eax, dword [esp + 0x78]
mov ebx, dword [esp + 0x74]
mov ebp, dword [esp + 0x30]
mov esi, dword [esp + 0x5c]
mov edi, dword [esp + 0x44]
mov ebp, eax
mov edi, esi
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x68]
mov dword [esp + 0x38], ecx
mov esi, dword [esp + 0x54]
mov ecx, dword [esp + 0x48]
cmp esi, ebp
jge 0x5bf130
mov dword [esp + 0x30], edx
mov dword [esp + 0x2c], edi
mov dword [esp + 0x34], ecx
mov dword [esp + 0x60], eax
mov eax, 1
mov dword [esp + 0x20], eax
mov eax, 0x24
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x60]
jmp 0x5bec7e
mov edi, ecx
jmp 0x5bee5a
lea eax, [0x6332c0]
mov dword [esp], eax
mov edx, dword [esp + 0x6c]
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ecx
call fcn.004429e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
inc ecx
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0x2c]
jmp 0x5bedfe
lea eax, [0x653e00]
mov dword [esp], eax
call fcn.0040b4f0
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x78]
mov dword [edi + 4], eax
mov eax, dword [0x8326a0]
test eax, eax
jne 0x5bef8e
mov eax, dword [esp + 0x74]
mov dword [edi], eax
mov dword [edi + 0xc], 2
lea eax, [0x66e8d7]
mov dword [edi + 8], eax
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
lea eax, [0x6c8690]
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], edi
add esp, 0x70
ret
mov eax, dword [esp + 0x74]
call fcn.0045ace0
jmp 0x5bef53
cmp ebx, 0x1a
jle 0x5becde
mov ebx, 0x1a
jmp 0x5becde
lea eax, [0x653e00]
mov dword [esp], eax
call fcn.0040b4f0
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x78]
mov dword [edi + 4], eax
mov eax, dword [0x8326a0]
test eax, eax
jne 0x5bf010
mov eax, dword [esp + 0x74]
mov dword [edi], eax
mov dword [edi + 0xc], 2
lea eax, [0x66e8d7]
mov dword [edi + 8], eax
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
lea eax, [0x6c8690]
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], edi
add esp, 0x70
ret
mov eax, dword [esp + 0x74]
call fcn.0045ace0
jmp 0x5befd5
lea eax, [0x653e00]
mov dword [esp], eax
call fcn.0040b4f0
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x78]
mov dword [edi + 4], eax
mov eax, dword [0x8326a0]
test eax, eax
jne 0x5bf07f
mov eax, dword [esp + 0x74]
mov dword [edi], eax
mov dword [edi + 0xc], 2
lea eax, [0x66e8d7]
mov dword [edi + 8], eax
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
lea eax, [0x6c8690]
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], edi
add esp, 0x70
ret
mov eax, dword [esp + 0x74]
call fcn.0045ace0
jmp 0x5bf044
lea edi, [edx - 0x41]
xchg edi, eax
cmp al, 0x19
xchg edi, eax
ja 0x5bf0a3
xchg edi, eax
movzx edx, al
xchg edi, eax
mov edi, 1
jmp 0x5beca9
add edx, 0xffffff9f
cmp dl, 0x19
ja 0x5bf0b8
movzx edx, dl
mov edi, 1
jmp 0x5beca9
xor edx, edx
xor edi, edi
jmp 0x5beca9
lea eax, [0x653e00]
mov dword [esp], eax
call fcn.0040b4f0
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x78]
mov dword [edi + 4], eax
mov eax, dword [0x8326a0]
test eax, eax
jne 0x5bf125
mov eax, dword [esp + 0x74]
mov dword [edi], eax
mov dword [edi + 0xc], 2
lea eax, [0x66e8d7]
mov dword [edi + 8], eax
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
lea eax, [0x6c8690]
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], edi
add esp, 0x70
ret
mov eax, dword [esp + 0x74]
call fcn.0045ace0
jmp 0x5bf0ea
mov dword [esp], 0
mov dword [esp + 4], eax
mov dword [esp + 8], edi
mov dword [esp + 0xc], edx
call fcn.004461f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
add esp, 0x70
ret
mov ebx, dword [esp + 0x74]
mov ebp, dword [esp + 0x78]
xor edi, edi
mov edx, ebp
jmp 0x5bec3e
mov eax, dword [esp + 0x74]
mov dword [esp + 0x7c], eax
lea eax, [edx - 1]
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
add esp, 0x70
ret
lea eax, [0x653e00]
mov dword [esp], eax
call fcn.0040b4f0
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x78]
mov dword [edi + 4], eax
mov eax, dword [0x8326a0]
test eax, eax
jne 0x5bf216
mov eax, dword [esp + 0x74]
mov dword [edi], eax
mov dword [edi + 0xc], 2
lea eax, [0x66e8d7]
mov dword [edi + 8], eax
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
lea eax, [0x6c8690]
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], edi
add esp, 0x70
ret
mov eax, dword [esp + 0x74]
call fcn.0045ace0
jmp 0x5bf1db
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
add esp, 0x70
ret
mov eax, edx
mov ecx, edi
call fcn.0045adc0
mov eax, ebp
call fcn.0045adc0
call fcn.0042f460
mov eax, esi
mov ecx, ebp
call fcn.0045ad60
call fcn.0045ad80
nop
call fcn.00459790
jmp fcn.005beae0