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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x7c]
cmp eax, dword [ecx + 8]
jbe 0x5af0a0
sub esp, 0xfc
mov eax, dword [esp + 0x100]
mov dword [eax + 0xb8], 0
mov dword [eax + 0xc0], 0
mov byte [eax + 0xc4], 0
mov ecx, dword [esp + 0x104]
mov edx, dword [ecx + 0x48]
mov ebx, dword [ecx + 0x44]
test edx, edx
jne 0x5ae79c
mov edx, dword [ecx + 8]
mov ebx, dword [edx + 0x14]
mov edx, dword [edx + 0x18]
mov dword [esp], ebx
mov dword [esp + 4], edx
call fcn.00593740
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x14]
test eax, eax
jne 0x5af05d
mov dword [esp + 0x40], edx
mov dword [esp + 0x80], ecx
mov ebx, dword [esp + 0x104]
mov ebp, dword [ebx]
cmp dword [ebx + 4], 7
je 0x5af031
mov eax, dword [ebx + 8]
mov dword [esp], eax
call fcn.00531a20
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
test eax, eax
jle 0x5aed91
cmp byte [ecx], 0x2f
jne 0x5aed91
mov dword [esp + 0x78], ecx
mov dword [esp + 0x38], eax
mov edx, dword [esp + 0x104]
mov ebx, dword [edx + 0x1c]
lea edi, [esp + 0xcc]
xor eax, eax
call fcn.0045cbb4
lea ecx, [0x66eee0]
mov dword [esp], ecx
mov dword [esp + 4], ebx
lea ecx, [esp + 0xcc]
mov dword [esp + 8], ecx
call fcn.0040e530
jmp 0x5ae986
mov ecx, dword [esp + 0x44]
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x28]
cmp eax, ecx
jge 0x5ae977
mov dword [esp + 0x44], eax
mov ecx, dword [esp + 0x68]
lea edx, [ecx + eax*8]
mov ebx, dword [edx]
mov dword [esp + 0x6c], ebx
mov edx, dword [edx + 4]
mov dword [esp + 0x2c], edx
mov dword [esp], ebx
mov dword [esp + 4], edx
call fcn.00593670
movzx eax, byte [esp + 8]
test al, al
jne 0x5ae844
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
call fcn.00409f80
mov eax, dword [esp + 8]
lea ecx, [0x643700]
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 4], eax
call fcn.00409f80
mov eax, dword [esp + 8]
lea ecx, [0x643700]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x9c], eax
lea eax, [0x687b30]
mov dword [esp], eax
mov dword [esp + 4], 0x2a
lea eax, [esp + 0x90]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004abbc0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
mov dword [esp + 0x124], 0
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], ecx
add esp, 0xfc
ret
lea eax, [esp + 0xcc]
mov dword [esp], eax
call fcn.0040e7a0
mov ecx, dword [esp + 0xcc]
test ecx, ecx
je 0x5aea83
mov eax, dword [esp + 0xd0]
mov edx, dword [ecx]
mov dword [esp + 0x7c], edx
mov ecx, dword [ecx + 4]
mov dword [esp + 0x3c], ecx
mov ebx, dword [eax]
mov dword [esp + 0x68], ebx
mov eax, dword [eax + 4]
mov dword [esp + 0x28], eax
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.005935c0
movzx eax, byte [esp + 8]
test al, al
je 0x5ae9d2
xor eax, eax
jmp 0x5ae84b
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 4], eax
call fcn.00409f80
mov eax, dword [esp + 8]
lea ecx, [0x643700]
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], eax
lea eax, [0x6822e1]
mov dword [esp], eax
mov dword [esp + 4], 0x1b
lea eax, [esp + 0x88]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004abbc0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
mov dword [esp + 0x124], 0
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], ecx
add esp, 0xfc
ret
lea edi, [esp + 0xa0]
xor eax, eax
call fcn.0045cbb5
lea ecx, [0x5cae00]
mov dword [esp + 0xa0], ecx
mov ecx, dword [esp + 0x80]
mov dword [esp + 0xa4], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0xa8], ecx
mov ecx, dword [esp + 0x104]
mov dword [esp + 0xac], ecx
mov edx, dword [esp + 0x78]
mov dword [esp + 0xb0], edx
mov edx, dword [esp + 0x38]
mov dword [esp + 0xb4], edx
mov edx, dword [esp + 0x10c]
mov dword [esp + 0xb8], edx
mov edx, dword [esp + 0x110]
mov dword [esp + 0xbc], edx
mov edx, dword [esp + 0x114]
mov dword [esp + 0xc0], edx
mov edx, dword [esp + 0x118]
mov dword [esp + 0xc4], edx
movzx edx, byte [esp + 0x108]
mov byte [esp + 0xc8], dl
lea edx, [0x6438c0]
mov dword [esp], edx
call fcn.0040c800
mov ecx, dword [esp + 4]
mov dword [esp + 0x84], ecx
lea edx, [0x64c1c0]
mov dword [esp], edx
call fcn.0040c800
mov ecx, dword [esp + 4]
lea edx, [0x5cb540]
mov dword [ecx], edx
mov edx, dword [0x7e34e0]
test edx, edx
jne 0x5aed7d
mov eax, dword [esp + 0x84]
mov dword [ecx + 4], eax
mov dword [esp], ecx
mov eax, dword [esp + 0xa0]
lea edx, [esp + 0xa0]
call eax
mov eax, dword [esp + 0x84]
mov ecx, dword [eax]
mov ebx, dword [esp + 0x100]
cmp dword [ebx + 0xa8], ecx
setb cl
mov eax, dword [eax + 4]
mov ebp, dword [ebx + 0xac]
cmp eax, ebp
sete al
xchg ebp, ebx
seta bl
xchg ebp, ebx
and eax, ecx
or ebp, eax
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x5aed3b
mov eax, dword [esp + 0x104]
mov ecx, dword [eax + 0x78]
mov eax, dword [eax + 0x7c]
test ecx, ecx
je 0x5aed29
mov ecx, dword [ecx + 0x1c]
mov dword [esp], eax
lea eax, [0x646ce0]
mov dword [esp + 4], eax
lea eax, [0x7e32f0]
mov dword [esp + 8], eax
call ecx
mov eax, dword [esp + 0x10]
lea ecx, [0x6502a0]
cmp dword [esp + 0xc], ecx
jne 0x5aed22
mov dword [esp + 0x70], eax
test eax, eax
je 0x5aed1b
mov ecx, dword [eax + 0x30]
test ecx, ecx
setne cl
mov byte [esp + 0x27], cl
lea eax, [0x6574e0]
mov dword [esp], eax
call fcn.0040c800
mov eax, dword [esp + 4]
lea ecx, [0x5cb580]
mov dword [eax], ecx
mov ecx, dword [0x7e34e0]
test ecx, ecx
jne 0x5aecfc
mov ecx, dword [esp + 0x100]
mov dword [eax + 4], ecx
movzx ebx, byte [esp + 0x27]
mov byte [eax + 8], bl
mov ebx, dword [0x7e34e0]
test ebx, ebx
jne 0x5aece7
mov ebx, dword [esp + 0x70]
mov dword [eax + 0xc], ebx
mov dword [esp], eax
mov eax, dword [esp + 0xa0]
lea edx, [esp + 0xa0]
call eax
mov eax, dword [esp + 0x100]
mov ecx, dword [eax + 0xb8]
mov ebx, dword [eax + 0xb4]
mov ebp, dword [eax + 0xbc]
mov eax, dword [eax + 0xc0]
cmp eax, ecx
ja 0x5af093
sub ebp, eax
mov edx, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, eax
add ebx, ebp
mov dword [esp + 0x11c], ebx
sub ecx, eax
mov dword [esp + 0x120], ecx
mov dword [esp + 0x124], edx
mov dword [esp + 0x128], 0
mov dword [esp + 0x12c], 0
add esp, 0xfc
ret
lea edi, [eax + 0xc]
mov edx, eax
mov eax, dword [esp + 0x70]
call fcn.0045c920
mov eax, edx
jmp 0x5aec68
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x100]
call fcn.0045c920
mov eax, ecx
mov ecx, dword [esp + 0x100]
jmp 0x5aec4b
xor ecx, ecx
jmp 0x5aec15
xor eax, eax
jmp 0x5aec01
nop
mov eax, dword [0x7cc06c]
lea ecx, [0x6cd440]
jmp 0x5aebd1
mov eax, dword [0x7cd008]
mov ecx, dword [0x7cd00c]
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
mov dword [esp + 0x124], 0
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], ecx
add esp, 0xfc
ret
lea edi, [ecx + 4]
mov eax, dword [esp + 0x84]
call fcn.0045c920
jmp 0x5aeb6d
mov dword [esp + 0x30], eax
mov dword [esp + 0x74], ecx
cmp eax, 1
jne 0x5aeda7
cmp byte [ecx], 0x2a
je 0x5ae802
mov eax, dword [esp + 0x104]
mov ecx, dword [eax + 8]
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
lea ebx, [esp + 0x48]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
lea ecx, [0x679a8a]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 3
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x18], edx
call fcn.00447600
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x30]
cmp eax, edx
jle 0x5af007
xor ecx, ecx
test cl, cl
je 0x5aeff8
cmp eax, edx
ja 0x5af098
mov ecx, edx
sub edx, eax
mov ebx, edx
neg edx
sar edx, 0x1f
and eax, edx
mov edx, dword [esp + 0x74]
lea ebp, [edx + eax]
test ebx, ebx
jle 0x5aee3c
cmp byte [ebp], 0x2f
jne 0x5aee3c
mov eax, ebx
mov ecx, ebp
jmp 0x5ae802
cmp ebx, 1
jne 0x5aee47
cmp byte [ebp], 0x2a
je 0x5aee33
mov eax, dword [esp + 0x104]
mov ebx, dword [eax + 8]
mov ebx, dword [ebx + 0xc]
test ebx, ebx
je 0x5aef4f
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.00409f80
mov eax, dword [esp + 8]
lea ecx, [0x643700]
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x104]
mov eax, dword [eax + 8]
mov edx, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.00409f80
mov eax, dword [esp + 8]
lea ecx, [0x643700]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x9c], eax
lea eax, [0x688689]
mov dword [esp], eax
mov dword [esp + 4], 0x2d
lea eax, [esp + 0x90]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004abbc0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
mov dword [esp + 0x124], 0
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], ecx
add esp, 0xfc
ret
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.00409f80
mov eax, dword [esp + 8]
lea ecx, [0x643700]
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], eax
lea eax, [0x680e4e]
mov dword [esp], eax
mov dword [esp + 4], 0x18
lea eax, [esp + 0x88]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004abbc0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
mov dword [esp + 0x124], 0
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], ecx
add esp, 0xfc
ret
mov ecx, edx
mov edx, dword [esp + 0x74]
mov ebx, ecx
mov ebp, edx
jmp 0x5aee29
mov dword [esp + 0x34], eax
mov edx, dword [esp + 0x74]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004031b0
movzx ecx, byte [esp + 0xc]
mov eax, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
jmp 0x5aee05
cmp dword [ebp], 0x4e4e4f43
jne 0x5ae7de
cmp word [ebp + 4], 0x4345
jne 0x5ae7de
cmp byte [ebp + 6], 0x54
jne 0x5ae7de
xor eax, eax
xor ecx, ecx
jmp 0x5ae802
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
mov dword [esp + 0x124], 0
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], ebx
add esp, 0xfc
ret
call fcn.0045ca00
mov ecx, edx
call fcn.0045ca00
nop
call fcn.0045b380
jmp fcn.005ae740