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

Disassembly:
sub esp, 0x44
mov edx, dword [esp + 0x5c]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x54]
push edi
mov edi, dword [esp + 0x68]
mov ecx, edi
and ecx, 0x800
mov dword [edx + 0x10], 3
mov dword [edx], esi
mov dword [esp + 0x28], ecx
mov ecx, dword [esi + 0x54]
mov ebx, dword [ecx + 0x18]
mov eax, edi
and eax, 0x200
mov dword [esp + 0x44], eax
mov dword [esp + 0x1c], ebx
mov ebx, dword [0x7638b0]
mov ebp, dword [ebx + 4]
mov eax, edi
and eax, 0x400
and edi, 0xfffff1ff
cmp ebp, 0x15e
mov dword [esp + 0x30], 0
mov dword [esp + 0x50], eax
mov dword [esp + 0x68], edi
mov dword [esp + 0x48], ecx
jne 0x8abf07
cmp edi, 2
ja 0x8abf07
mov ebx, dword [ecx + 0x20]
test ebx, ebx
je 0x8abf07
test eax, eax
jne 0x8abf07
mov eax, dword [esp + 0x64]
cmp eax, 5
je 0x8abf07
mov ebx, dword [0x67f9d8]
test ebx, ebx
je 0x8abf07
mov ebx, dword [esp + 0x74]
mov ebp, dword [esp + 0x70]
push ebx
push ebp
push edx
push edi
push eax
mov eax, dword [esp + 0x74]
push eax
push ecx
push esi
call fcn.008d1f62
add esp, 0x20
test eax, eax
je 0x8abf0b
mov eax, dword [0x761c44]
pop edi
pop esi
inc eax
pop ebp
mov dword [0x761c44], eax
pop ebx
add esp, 0x44
ret
mov ebx, dword [esp + 0x74]
mov ecx, dword [0x761c40]
mov eax, dword [esp + 0x70]
inc ecx
test eax, eax
mov dword [0x761c40], ecx
je 0x8abf2f
mov ecx, dword [0x7638b0]
push ecx
call fcn.0088a932
add esp, 4
mov edx, dword [ebx + 4]
lea eax, [ebx + 4]
xor ecx, ecx
test edx, edx
jne 0x8abf52
mov edx, dword [eax + 4]
mov dword [esp + 0x2c], edx
jmp 0x8abf6b
mov edx, dword [eax + 4]
mov eax, dword [eax + 0x218]
and edx, 0xfeffffff
add ecx, edx
test eax, eax
jne 0x8abf52
mov dword [esp + 0x2c], ecx
cmp edi, 0x21
mov ebp, dword [esi + 0x44]
mov dword [esp + 0x4c], ebp
jne 0x8abf9f
push 0x154
push 0x64af88
lea esi, [ebp + 0x54]
push 0
push esi
call fcn.008e69a2
lea eax, [ebx + 4]
push 8
push eax
call fcn.008a84e2
mov dword [eax], 0x38
jmp 0x8abfca
cmp edi, 0x22
je 0x8abfd0
push 0x15b
push 0x64af88
lea esi, [ebp + 0x54]
push 0
push esi
call fcn.0088eb92
lea eax, [ebx + 4]
push 8
push eax
call fcn.008a84e2
mov dword [eax], 0x37
add esp, 0x18
mov dword [eax + 4], esi
mov esi, dword [ebp + 0xc]
mov edx, dword [esp + 0x64]
mov ebp, dword [ebp + 0x10]
xor ecx, ecx
mov eax, edx
dec eax
mov dword [esp + 0x24], esi
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], ecx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 0x14], 3
mov dword [esp + 0x20], 0xa
je 0x8ac020
dec eax
je 0x8ac016
mov dword [esp + 0x18], edx
jmp 0x8ac028
mov dword [esp + 0x18], 3
jmp 0x8ac028
mov dword [esp + 0x18], 4
cmp dword [esp + 0x10], ecx
jne 0x8ac07a
cmp edi, 2
ja 0x8ac07a
cmp dword [esp + 0x44], ecx
mov dword [esp + 0x14], edi
je 0x8ac07a
mov eax, dword [esp + 0x58]
mov eax, dword [eax + 0xc]
test al, 1
jne 0x8ac07a
cmp dword [esp + 0x28], ecx
jne 0x8ac052
test al, 2
jne 0x8ac07a
mov ecx, dword [0x762558]
cmp dword [ecx + 8], 0x32
jbe 0x8ac07a
mov eax, dword [0x76255c]
inc eax
test al, 7
mov dword [0x76255c], eax
jne 0x8ac072
call fcn.008fd672
mov dword [esp + 0x20], 0xb
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push ebx
push 0x192
push 0x64af88
push edx
push eax
push ecx
push ebp
push esi
call fcn.008cda22
mov edi, eax
add esp, 0x20
test edi, edi
jne 0x8ac132
mov edi, dword [esp + 0x58]
mov eax, dword [edi + 0xc]
test al, 1
jne 0x8ac0ff
mov ecx, dword [esp + 0x28]
test ecx, ecx
jne 0x8ac0bf
test al, 2
jne 0x8ac0ff
mov edx, dword [0x762558]
cmp dword [edx + 8], 0x32
jbe 0x8ac0ff
mov eax, dword [0x76255c]
inc eax
test al, 7
mov dword [0x76255c], eax
jne 0x8ac0df
call fcn.008fd672
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 0xc]
mov edx, dword [esp + 0x60]
push ecx
push ebp
push esi
push edi
push edx
call fcn.008d7f02
add esp, 0x14
test eax, eax
jne 0x8ac26c
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push ebx
push 0x192
push 0x64af88
push 0xa
push eax
push ecx
push ebp
push esi
mov dword [esp + 0x40], 0xa
call fcn.008cda22
mov edi, eax
add esp, 0x20
test edi, edi
je 0x8ac0a8
push edi
call fcn.008945b2
mov dword [eax + 0x88], 1
mov eax, dword [esp + 0x14]
add esp, 4
cmp eax, 0xffffffff
jne 0x8ac178
movzx eax, byte [edi + 0x40]
movzx edx, byte [edi + 0x41]
mov ecx, dword [esp + 0x6c]
shl eax, 8
add eax, edx
mov dword [esp + 0x10], eax
mov dword [esp + 0x30], eax
inc eax
mov dword [ecx + 0x14], eax
cmp edi, dword [esp + 0x1c]
je 0x8ac178
mov edx, dword [esp + 0x48]
mov dword [edx + 0x18], edi
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x8ac1e0
cmp dword [esp + 0x14], 3
jne 0x8ac1a3
mov eax, dword [esp + 0x6c]
push eax
mov eax, dword [esp + 0x6c]
mov esi, ebx
mov ebx, dword [esp + 0x28]
push ebp
call fcn.008a8fd2
mov ebx, dword [esp + 0x7c]
add esp, 8
mov eax, dword [esp + 0x68]
cmp eax, 0x21
je 0x8ac1d8
cmp eax, 0x22
je 0x8ac1d8
mov ecx, dword [esp + 0x2c]
push ecx
lea eax, [ebx + 4]
push eax
call fcn.008a8672
mov edx, dword [esp + 0x54]
add edx, 0x54
push edx
mov esi, eax
call fcn.0088a932
add esp, 0xc
mov dword [esi + 4], 0
mov eax, dword [esp + 0x64]
mov dword [esp + 0x18], eax
mov esi, dword [esp + 0x6c]
add esi, 4
push esi
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x3c]
push edx
mov edx, dword [esp + 0x24]
lea eax, [esp + 0x4c]
push eax
mov eax, dword [esp + 0x70]
lea ecx, [esp + 0x4c]
push ecx
push edx
push eax
push edi
call fcn.009054c2
mov eax, dword [esp + 0x70]
mov edi, dword [esp + 0x8c]
add esp, 0x20
test eax, eax
je 0x8ac235
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x30]
push ecx
mov ebx, edi
call fcn.008aa562
mov ebx, dword [esp + 0x78]
add esp, 4
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x10]
cmp eax, ecx
je 0x8ac27f
mov esi, dword [esi]
mov edi, ecx
dec edi
push esi
mov dword [esp + 0x14], edi
mov dword [esp + 0x20], 0
call fcn.008a8be2
mov esi, dword [esp + 0x28]
mov edi, dword [esp + 0x6c]
add esp, 4
mov ebp, eax
xor ecx, ecx
jmp 0x8ac028
mov edx, dword [esp + 0x6c]
pop edi
pop esi
pop ebp
mov dword [edx + 0x10], 4
pop ebx
add esp, 0x44
ret
test eax, eax
jbe 0x8ac2a5
mov eax, dword [esp + 0x24]
push ebx
push 0x1c
push 0x64aef0
push 0xa
push 0
push 2
push ebp
push eax
call fcn.008cda22
mov eax, dword [esp + 0x7c]
add esp, 0x20
test eax, eax
jne 0x8ac2eb
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
mov dword [edi + 0x20], ecx
mov ecx, dword [esp + 0x40]
mov dword [edi + 0x24], edx
mov dword [edi + 0x18], eax
mov dword [edi + 0x1c], ecx
mov eax, dword [0x67f9d8]
test eax, eax
je 0x8ac2eb
mov edx, dword [esp + 0x58]
mov eax, dword [edx + 0x54]
mov edx, dword [eax + 0x1c]
inc edx
mov ecx, edx
cmp ecx, 0x11
mov dword [eax + 0x1c], edx
jb 0x8ac2eb
push edi
push eax
call fcn.008d39f2
add esp, 8
mov eax, dword [esp + 0x70]
test eax, eax
je 0x8ac30d
mov eax, dword [0x7638b0]
push 0x210
push 0x64af88
push 0
push eax
call fcn.0088eb92
add esp, 0x10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret