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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5803a2
add esp, 0xffffff80
mov eax, dword [esp + 0x88]
test eax, eax
je 0x580347
mov ecx, dword [esp + 0x84]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x60ef5b]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
call fcn.004c2b20
mov eax, dword [esp + 0x10]
test eax, eax
je 0x5802cc
lea ecx, [eax + 1]
mov edx, dword [esp + 0x88]
cmp edx, ecx
je 0x58029a
mov dword [esp + 0x64], eax
mov dword [esp + 0x2c], ecx
lea eax, [0x5da9c0]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], edx
call fcn.004450a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x64]
cmp ecx, 0xffffffff
je 0x580283
mov edx, dword [esp + 0x88]
cmp edx, ecx
jb 0x58039c
mov ebx, dword [esp + 0x84]
mov ebp, edx
xor esi, esi
xor edi, edi
jmp 0x57fbb6
mov dword [eax + edi*4], ebp
mov ebp, dword [esp + 0x84]
mov ebp, dword [esp + 0x88]
mov edi, ebx
mov ebx, dword [esp + 0x84]
cmp ecx, esi
jle 0x57fc5c
mov dword [esp + 0x30], edi
movzx ebp, byte [ebx + esi]
cmp ebp, 0x80
jge 0x57fc20
inc esi
lea ebx, [edi + 1]
cmp ebx, edx
jbe 0x57fb9c
mov dword [esp + 0x28], ebp
mov dword [esp + 0x60], esi
lea ecx, [0x5da9c0]
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.00445150
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
lea ebx, [ecx + 1]
mov ecx, dword [esp + 0x64]
mov ebp, dword [esp + 0x28]
mov esi, dword [esp + 0x60]
mov edi, dword [esp + 0x30]
jmp 0x57fb9c
mov dword [esp + 0x34], edx
mov dword [esp + 0x78], eax
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
call fcn.00454f20
mov ebp, dword [esp + 0xc]
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x84]
mov edi, dword [esp + 0x30]
jmp 0x57fbcf
mov ecx, dword [esp + 0x2c]
xor esi, esi
mov esi, 0x48
mov dword [esp + 0x54], esi
mov esi, pe_nt_image_headers32
mov dword [esp + 0x3c], esi
xor esi, esi
jmp 0x57ff72
mov esi, dword [esp + 0x40]
add esi, 0x24
mov edi, dword [esp + 0x84]
mov edi, dword [esp + 0x30]
mov ecx, ebx
mov dword [esp + 0x24], ebp
mov dword [esp + 0x40], esi
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x88]
mov esi, edx
mov edx, dword [esp + 0x34]
cmp ebp, ecx
je 0x5801c0
jbe 0x580393
movzx edx, byte [ebx + ecx]
lea edi, [edx - 0x30]
xchg edi, eax
cmp al, 9
xchg edi, eax
ja 0x580189
add edx, 0xffffffea
movzx edx, dl
mov edi, 1
xchg edi, eax
test al, al
xchg edi, eax
je 0x58010e
mov dword [esp + 0x4c], edx
mov edi, dword [esp + 0x24]
imul edx, edi
add edx, esi
test edx, edx
jl 0x580093
mov esi, dword [esp + 0x40]
mov ebx, dword [esp + 0x54]
sub esi, ebx
cmp esi, 1
jge 0x580080
mov esi, 1
lea ebx, [ecx + 1]
mov ecx, ebp
mov ebp, dword [esp + 0x4c]
cmp ebp, esi
jl 0x57fdb1
lea ebp, [esi - 0x24]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
imul ebp, edi
cmp ebp, 0x38e38e3
jl 0x57fc7b
lea eax, [0x5f6ee0]
mov dword [esp], eax
call fcn.0040b8d0
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x88]
mov dword [edi + 4], eax
mov eax, dword [0x7a0970]
test eax, eax
jne 0x57fda3
mov eax, dword [esp + 0x84]
mov dword [edi], eax
mov dword [edi + 0xc], 2
lea eax, [0x60efaa]
mov dword [edi + 8], eax
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
lea eax, [0x65ec44]
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], edi
sub esp, 0xffffff80
ret
mov eax, dword [esp + 0x84]
call fcn.0045de10
jmp 0x57fd65
mov ebp, dword [esp + 0x38]
mov esi, edx
sub edx, ebp
test ebp, ebp
jne 0x580070
mov ebp, eax
mov eax, 0x5d9f7391
mov edi, edx
imul edx
sar edx, 8
sar edi, 0x1f
sub edx, edi
mov edi, dword [esp + 0x30]
mov eax, ebx
lea ebx, [edi + 1]
test ebx, ebx
je 0x58038e
mov dword [esp + 0x64], eax
mov dword [esp + 0x50], edx
mov eax, edx
cmp ebx, 0xffffffff
je 0x57fdf9
cdq
idiv ebx
jmp 0x57fdfb
neg eax
mov edx, dword [esp + 0x50]
add edx, eax
xor eax, eax
jmp 0x57fe1c
mov eax, 0xea0ea0eb
imul edx
mov eax, dword [esp + 0x50]
add edx, eax
sar edx, 5
mov eax, dword [esp + 0x44]
add eax, 0x24
mov dword [esp + 0x50], edx
mov dword [esp + 0x44], eax
cmp edx, 0x1c7
jg 0x57fe05
mov dword [esp + 0x7c], ebp
lea ebp, [edx + edx*8]
cmp edx, 0xffffffda
je 0x580389
mov dword [esp + 0x60], ebx
mov eax, esi
cdq
idiv ebx
mov edx, dword [esp + 0x3c]
add edx, eax
mov eax, esi
mov esi, edx
cdq
idiv ebx
mov dword [esp + 0x48], edx
shl ebp, 2
mov edx, dword [esp + 0x50]
add edx, 0x26
mov eax, ebp
mov ebx, edx
cmp ebx, 0xffffffff
je 0x57fe6e
cdq
idiv ebx
jmp 0x57fe70
neg eax
mov edx, dword [esp + 0x44]
add edx, eax
cmp esi, 0x10ffff
jg 0x57fff5
cmp edi, 0x400
jge 0x57fff5
mov dword [esp + 0x20], edx
mov dword [esp + 0x5c], esi
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x34]
cmp ebx, ebp
ja 0x57ffac
mov eax, dword [esp + 0x7c]
mov dword [eax + edi*4], 0
mov edi, dword [esp + 0x48]
lea edx, [edi + 1]
cmp ebx, edx
jb 0x580380
mov dword [esp + 0x34], ebp
mov dword [esp + 0x58], edx
sub ebp, edi
dec ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
shl edx, 2
sar ebp, 0x1f
and ebp, edx
lea edx, [ebp + eax]
mov ebp, ebx
sub ebx, edi
cmp edi, ebp
ja 0x580377
mov dword [esp + 0x60], ebp
dec ebx
sub ebp, edi
mov esi, dword [esp + 0x34]
sub esi, edi
xchg esi, ebx
neg ebx
xchg esi, ebx
shl edi, 2
sar esi, 0x1f
and esi, edi
add esi, eax
cmp ebx, ebp
jle 0x57ffa5
mov dword [esp + 0x78], eax
cmp edx, esi
je 0x57ff29
mov dword [esp], edx
mov dword [esp + 4], esi
shl ebp, 2
mov dword [esp + 8], ebp
call fcn.0045e7b0
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x5c]
mov ecx, dword [esp + 0x78]
mov dword [ecx + eax*4], edx
mov ebp, dword [esp + 0x88]
mov ebx, dword [esp + 0x84]
mov eax, dword [esp + 0x34]
mov edi, dword [esp + 0x60]
mov esi, dword [esp + 0x20]
mov ecx, dword [esp + 0x64]
mov esi, dword [esp + 0x58]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x3c], edx
mov edx, dword [esp + 0x70]
cmp ebp, ecx
jle 0x58023b
mov dword [esp + 0x30], edi
mov dword [esp + 0x38], esi
mov dword [esp + 0x34], edx
mov dword [esp + 0x68], eax
mov eax, 1
mov dword [esp + 0x24], eax
mov eax, 0x24
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x68]
jmp 0x57fcab
mov ebp, ebx
jmp 0x57ff0e
lea eax, [0x5da9c0]
mov dword [esp], eax
mov ecx, dword [esp + 0x7c]
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00445150
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
lea ebx, [ecx + 1]
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x20]
mov esi, dword [esp + 0x5c]
mov edi, dword [esp + 0x30]
jmp 0x57feaa
lea eax, [0x5f6ee0]
mov dword [esp], eax
call fcn.0040b8d0
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x88]
mov dword [edi + 4], eax
mov eax, dword [0x7a0970]
test eax, eax
jne 0x580062
mov eax, dword [esp + 0x84]
mov dword [edi], eax
mov dword [edi + 0xc], 2
lea eax, [0x60efaa]
mov dword [edi + 8], eax
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
lea eax, [0x65ec44]
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], edi
sub esp, 0xffffff80
ret
mov eax, dword [esp + 0x84]
call fcn.0045de10
jmp 0x580024
mov edi, edx
shr edx, 0x1f
add edx, edi
sar edx, 1
mov ebp, eax
jmp 0x57fdd4
cmp esi, 0x1a
jle 0x57fd0d
mov esi, 0x1a
jmp 0x57fd0d
lea eax, [0x5f6ee0]
mov dword [esp], eax
call fcn.0040b8d0
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x88]
mov dword [edi + 4], eax
mov eax, dword [0x7a0970]
test eax, eax
jne 0x580100
mov eax, dword [esp + 0x84]
mov dword [edi], eax
mov dword [edi + 0xc], 2
lea eax, [0x60efaa]
mov dword [edi + 8], eax
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
lea eax, [0x65ec44]
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], edi
sub esp, 0xffffff80
ret
mov eax, dword [esp + 0x84]
call fcn.0045de10
jmp 0x5800c2
lea eax, [0x5f6ee0]
mov dword [esp], eax
call fcn.0040b8d0
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x88]
mov dword [edi + 4], eax
mov eax, dword [0x7a0970]
test eax, eax
jne 0x58017b
mov eax, dword [esp + 0x84]
mov dword [edi], eax
mov dword [edi + 0xc], 2
lea eax, [0x60efaa]
mov dword [edi + 8], eax
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
lea eax, [0x65ec44]
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], edi
sub esp, 0xffffff80
ret
mov eax, dword [esp + 0x84]
call fcn.0045de10
jmp 0x58013d
lea edi, [edx - 0x41]
xchg edi, eax
cmp al, 0x19
xchg edi, eax
ja 0x5801a2
xchg edi, eax
movzx edx, al
xchg edi, eax
mov edi, 1
jmp 0x57fcd6
add edx, 0xffffff9f
cmp dl, 0x19
ja 0x5801b7
movzx edx, dl
mov edi, 1
jmp 0x57fcd6
xor edx, edx
xor edi, edi
jmp 0x57fcd6
lea eax, [0x5f6ee0]
mov dword [esp], eax
call fcn.0040b8d0
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x88]
mov dword [edi + 4], eax
mov eax, dword [0x7a0970]
test eax, eax
jne 0x58022d
mov eax, dword [esp + 0x84]
mov dword [edi], eax
mov dword [edi + 0xc], 2
lea eax, [0x60efaa]
mov dword [edi + 8], eax
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
lea eax, [0x65ec44]
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], edi
sub esp, 0xffffff80
ret
mov eax, dword [esp + 0x84]
call fcn.0045de10
jmp 0x5801ef
mov dword [esp], 0
mov dword [esp + 4], eax
mov dword [esp + 8], edi
mov dword [esp + 0xc], edx
call fcn.00448980
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
sub esp, 0xffffff80
ret
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x88]
xor edi, edi
mov edx, ebp
jmp 0x57fc5c
mov eax, dword [esp + 0x84]
mov dword [esp + 0x8c], eax
lea eax, [edx - 1]
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
sub esp, 0xffffff80
ret
lea eax, [0x5f6ee0]
mov dword [esp], eax
call fcn.0040b8d0
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x88]
mov dword [edi + 4], eax
mov eax, dword [0x7a0970]
test eax, eax
jne 0x580339
mov eax, dword [esp + 0x84]
mov dword [edi], eax
mov dword [edi + 0xc], 2
lea eax, [0x60efaa]
mov dword [edi + 8], eax
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
lea eax, [0x65ec44]
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], edi
sub esp, 0xffffff80
ret
mov eax, dword [esp + 0x84]
call fcn.0045de10
jmp 0x5802fb
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
sub esp, 0xffffff80
ret
mov eax, edi
mov ecx, ebp
call fcn.0045def0
mov eax, edx
mov ecx, ebx
call fcn.0045def0
call fcn.004303f0
call fcn.004303f0
mov eax, ecx
mov ecx, ebp
call fcn.0045de90
call fcn.0045deb0
nop
call fcn.0045c8b0
jmp fcn.0057fae0