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

Disassembly:
sub esp, 0x1e8
lea eax, [esp + 0x24]
lea ecx, [esp + 0x20]
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x1fc]
push eax
mov ebp, 1
push ecx
push ebp
push edi
call fcn.005aa540
add esp, 0x10
test eax, eax
je 0x5aaebe
mov eax, dword [esp + 0x34]
cmp eax, 0x31000
jb 0x5aae9f
cmp eax, 0x33002
ja 0x5aae9f
mov edx, dword [esp + 0x30]
lea eax, [esp + 0x14]
push edx
push eax
push edi
mov dword [esp + 0x20], 0
call fcn.005a3ad0
mov ecx, dword [esp + 0x3c]
add esp, 0xc
cmp eax, ecx
jne 0x5aaebe
lea ecx, [esp + 0x14]
push 4
push ecx
call fcn.005aa650
mov eax, dword [esp + 0x1c]
add esp, 8
mov esi, eax
and esi, 0xff
test ah, 0xf0
jne 0x5aaae4
mov edx, eax
and edx, 0xf00
shl edx, 4
or eax, edx
mov dword [esp + 0x14], eax
xor ebx, ebx
mov bl, byte [esp + 0x16]
call fcn.005a7120
mov dword [esp + 0x24], eax
call fcn.005a7150
cmp esi, 3
mov dword [esp + 0x20], eax
je 0x5aab23
cmp esi, 4
je 0x5aab23
cmp esi, 5
je 0x5aab23
cmp esi, 6
je 0x5aab23
push 0
call fcn.005a7100
push 0
call fcn.005a7130
add esp, 8
jmp 0x5aab3e
push ebp
call fcn.005a7100
add esp, 4
test bl, 1
je 0x5aab35
push 0
jmp 0x5aab36
push ebp
call fcn.005a7130
add esp, 4
lea eax, [esp + 0x1c]
push 0
lea ecx, [esp + 0x14]
push eax
lea edx, [esp + 0x20]
push ecx
push edx
push edi
call fcn.005aa410
add esp, 0x14
test eax, eax
je 0x5aaca3
mov eax, dword [esp + 0x1c]
cmp eax, 0x31000
jb 0x5aabbd
cmp eax, 0x33002
ja 0x5aabbd
mov eax, dword [esp + 0x18]
cmp eax, 2
je 0x5aabe1
cmp eax, 0x13
je 0x5aac3c
mov eax, dword [esp + 0x10]
push eax
push edi
call fcn.005a3df0
add esp, 8
test eax, eax
je 0x5aaca3
lea ecx, [esp + 0x1c]
push 0
lea edx, [esp + 0x14]
push ecx
lea eax, [esp + 0x20]
push edx
push eax
push edi
call fcn.005aa410
add esp, 0x14
test eax, eax
jne 0x5aab60
jmp 0x5aaca3
push 0x80000004
mov dword [esp + 0x2c], ebp
call fcn.005c3970
lea ecx, [esp + 0x2c]
mov dword [esp + 0x30], eax
push ecx
call fcn.005c3910
add esp, 8
jmp 0x5aaca3
mov ebx, dword [esp + 0x10]
lea ebp, [esp + 0x78]
test ebx, ebx
jbe 0x5aac32
cmp ebx, 0x40
mov esi, 0x40
ja 0x5aabf9
mov esi, ebx
lea edx, [esp + 0x38]
push esi
push edx
push edi
call fcn.005a3ad0
add esp, 0xc
cmp eax, esi
jne 0x5aac38
sub ebx, esi
test esi, esi
jbe 0x5aac2c
lea ecx, [esp + 0x38]
mov eax, ebp
sub ecx, ebp
mov edi, esi
mov dl, byte [ecx + eax]
mov byte [eax], dl
inc eax
dec edi
jne 0x5aac1c
mov edi, dword [esp + 0x1fc]
add ebp, esi
test ebx, ebx
ja 0x5aabed
lea eax, [esp + 0x78]
jmp 0x5aac9f
xor eax, eax
jmp 0x5aac9f
mov edi, dword [esp + 0x10]
lea ebx, [esp + 0x78]
test edi, edi
jbe 0x5aac94
cmp edi, 0x80
mov esi, 0x80
ja 0x5aac57
mov esi, edi
mov ecx, dword [esp + 0x1fc]
lea eax, [esp + 0x178]
push esi
push eax
push ecx
call fcn.005a3ad0
add esp, 0xc
cmp eax, esi
jne 0x5aacc7
sub edi, esi
mov eax, 0
shr esi, 1
je 0x5aac8e
mov dl, byte [esp + eax*2 + 0x178]
mov byte [eax + ebx], dl
inc eax
cmp eax, esi
jb 0x5aac7f
add ebx, esi
test edi, edi
ja 0x5aac48
lea eax, [esp + 0x78]
mov edi, dword [esp + 0x1fc]
test eax, eax
jne 0x5aaccb
mov eax, dword [esp + 0x24]
push eax
call fcn.005a7100
mov ecx, dword [esp + 0x24]
push ecx
call fcn.005a7130
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1e8
ret
xor eax, eax
jmp 0x5aac98
lea edx, [esp + 0x18]
push 0
lea eax, [esp + 0x14]
push edx
lea ecx, [esp + 0x24]
push eax
push ecx
push edi
call fcn.005aa410
add esp, 0x14
test eax, eax
je 0x5aadea
mov eax, dword [esp + 0x18]
cmp eax, 0x31000
jb 0x5aad4a
cmp eax, 0x33002
ja 0x5aad4a
mov eax, dword [esp + 0x1c]
cmp eax, 2
je 0x5aad6f
cmp eax, 0x13
je 0x5aadd0
mov edx, dword [esp + 0x10]
push edx
push edi
call fcn.005a3df0
add esp, 8
test eax, eax
je 0x5aadea
lea eax, [esp + 0x18]
push 0
lea ecx, [esp + 0x14]
push eax
lea edx, [esp + 0x24]
push ecx
push edx
push edi
call fcn.005aa410
add esp, 0x14
test eax, eax
jne 0x5aaced
jmp 0x5aadea
push 0x80000004
mov dword [esp + 0x2c], 1
call fcn.005c3970
mov dword [esp + 0x30], eax
lea eax, [esp + 0x2c]
push eax
call fcn.005c3910
add esp, 8
jmp 0x5aadea
mov ebx, dword [esp + 0x10]
lea ebp, [esp + 0xf8]
test ebx, ebx
jbe 0x5aadc3
cmp ebx, 0x40
mov esi, 0x40
ja 0x5aad8a
mov esi, ebx
lea ecx, [esp + 0x38]
push esi
push ecx
push edi
call fcn.005a3ad0
add esp, 0xc
cmp eax, esi
jne 0x5aadcc
sub ebx, esi
test esi, esi
jbe 0x5aadbd
lea ecx, [esp + 0x38]
mov eax, ebp
sub ecx, ebp
mov edi, esi
mov dl, byte [ecx + eax]
mov byte [eax], dl
inc eax
dec edi
jne 0x5aadad
mov edi, dword [esp + 0x1fc]
add ebp, esi
test ebx, ebx
ja 0x5aad7e
lea eax, [esp + 0xf8]
jmp 0x5aade6
xor eax, eax
jmp 0x5aade6
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0xf8]
push eax
push edi
push ecx
call fcn.005aaed0
add esp, 0xc
test eax, eax
jne 0x5aae0e
mov edx, dword [esp + 0x24]
push edx
call fcn.005a7100
mov eax, dword [esp + 0x24]
push eax
call fcn.005a7130
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1e8
ret
lea ecx, [esp + 0xf8]
lea edx, [esp + 0x78]
push ecx
push edx
call fcn.005a7580
mov esi, eax
add esp, 8
test esi, esi
jne 0x5aae58
push edi
push 0x619190
call fcn.005c3cb0
mov eax, dword [esp + 0x2c]
push eax
call fcn.005a7100
mov ecx, dword [esp + 0x2c]
push ecx
call fcn.005a7130
add esp, 0x10
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1e8
ret
cmp dword [esi + 0x54], 1
jne 0x5aae6b
mov edx, dword [esp + 0x14]
and edx, 0xffff
mov dword [esi + 0x50], edx
mov eax, dword [esp + 0x24]
push eax
call fcn.005a7100
mov ecx, dword [esp + 0x24]
push ecx
call fcn.005a7130
push esi
push edi
push 0x619190
call fcn.005c3a20
add esp, 0x14
neg eax
sbb eax, eax
pop edi
and eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x1e8
ret
push 0x80000004
mov dword [esp + 0x2c], ebp
call fcn.005c3970
lea edx, [esp + 0x2c]
mov dword [esp + 0x30], eax
push edx
call fcn.005c3910
add esp, 8
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1e8
ret