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

Disassembly:
sub esp, 0x10c
mov eax, dword [0x101366b4]
xor eax, esp
mov dword [esp + 0x108], eax
push ebx
push ebp
mov ebp, dword [esp + 0x11c]
xor ebx, ebx
push esi
push edi
push 0x34
mov esi, dword [ebp + 0x60]
cmp dword [ebp + 0xa4], 3
mov dword [esp + 0x30], esi
sete bl
xor edi, edi
mov ecx, dword [esi + 0x49c]
mov eax, dword [esi + 0x34]
push edi
mov dword [esp + 0x2c], ecx
lea eax, [ecx + eax*4]
mov dword [esp + 0x30], eax
mov eax, dword [esi + 0x30]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x68]
push eax
mov dword [esp + 0x68], edi
call fcn.10117f50
or dword [esp + 0x6c], 0xffffffff
lea eax, [esp + 0x40]
add esp, 0xc
push edi
mov edi, dword [esp + 0x124]
push 0x28
push eax
push dword [esp + 0x134]
push edi
call fcn.1003c930
test eax, eax
js 0x1009c0f5
test byte [esp + 0x4c], 1
jne 0x1009be9d
mov eax, 0xfffff425
jmp 0x1009c0f5
test ebx, ebx
je 0x1009bea8
test byte [esp + 0x4c], 0x10
jne 0x1009be93
test byte [esp + 0x4c], 4
jne 0x1009beb6
or dword [ebp + 0x1c], 0x100
lea eax, [esp + 0x10]
xor ebx, ebx
push eax
mov eax, dword [esi + 0x34]
push ebx
shl eax, 2
push eax
push ebp
call fcn.100caa46
test eax, eax
js 0x1009c0f5
mov eax, dword [esp + 0x10]
mov dword [ebp + 0xb8], eax
lea eax, [esp + 0x14]
push eax
mov eax, dword [esi + 0x34]
push ebx
shl eax, 2
push eax
push ebp
call fcn.100caa46
test eax, eax
js 0x1009c0f5
mov eax, dword [esp + 0x14]
mov dword [ebp + 0xbc], eax
lea eax, [esp + 0x1c]
push eax
mov eax, dword [esi + 0x34]
push ebx
shl eax, 2
push eax
push ebp
call fcn.100caa46
test eax, eax
js 0x1009c0f5
mov eax, dword [esp + 0x1c]
mov dword [ebp + 0xc0], eax
lea eax, [esp + 0x20]
push eax
mov eax, dword [esi + 0x34]
push ebx
shl eax, 2
push eax
push ebp
call fcn.100caa46
test eax, eax
js 0x1009c0f5
mov eax, dword [esp + 0x20]
mov dword [ebp + 0xc4], eax
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x28]
jae 0x1009c0e0
mov ecx, dword [esp + 0x18]
add ecx, 4
mov dword [esp + 0x18], ecx
mov ebx, dword [eax]
xor ecx, ecx
cmp word [ebx], cx
jne 0x1009c01c
cmp dword [esp + 0x60], 0xffffffff
jne 0x1009bfb1
push 1
push 0x38
lea eax, [esp + 0x64]
push eax
push ecx
push dword [esp + 0x138]
push edi
call fcn.1003c7e0
mov esi, eax
test esi, esi
js 0x1009c0f3
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x64]
cmp ecx, dword [eax + 0x34]
je 0x1009bfc0
mov esi, 0xfffff240
jmp 0x1009c0e2
push ecx
push 1
push dword [esp + 0x68]
push edi
call fcn.1003cb30
mov esi, eax
test esi, esi
js 0x1009c0e2
push 0
push 0
lea eax, [esp + 0x38]
push eax
push 0x80
lea eax, [esp + 0xa4]
push eax
push dword [esp + 0x80]
push dword [esp + 0x78]
push edi
call fcn.1003cec0
mov esi, eax
mov eax, dword [esp + 0x30]
and eax, 0xfffffffe
cmp eax, 0x82
jae 0x1009c16d
xor ecx, ecx
lea ebx, [esp + 0x94]
mov word [esp + eax + 0x94], cx
test esi, esi
js 0x1009c0e2
push ecx
push 0x18
lea eax, [esp + 0x3c]
push eax
push ebx
push dword [esp + 0x138]
push edi
call fcn.1003c7e0
mov esi, eax
test esi, esi
js 0x1009c144
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x38]
mov dword [ecx], eax
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x3c]
mov dword [ecx], eax
mov eax, 0x1fe
mov ecx, dword [esp + 0x44]
test ecx, ecx
cmove ecx, eax
mov eax, dword [esp + 0x1c]
mov dword [eax], ecx
cmp dword [ebp + 0xa4], 3
jne 0x1009c099
mov eax, dword [ebp + 0xb8]
cmp eax, dword [esp + 0x10]
jae 0x1009c08e
mov ecx, dword [esp + 0x38]
cmp dword [eax], ecx
je 0x1009c110
add eax, 4
cmp eax, dword [esp + 0x10]
jb 0x1009c07d
test byte [esp + 0x48], 0x20
je 0x1009c12a
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
push dword [eax]
push dword [esi]
call fcn.1009d4e4
mov ecx, dword [esp + 0x20]
add esi, 0x14
push 4
pop edx
mov dword [esp + 0x18], esi
mov dword [ecx], eax
mov eax, dword [esp + 0x24]
add dword [esp + 0x10], edx
add eax, edx
add dword [esp + 0x14], edx
add dword [esp + 0x1c], edx
add dword [esp + 0x20], edx
mov dword [esp + 0x24], eax
cmp eax, dword [esp + 0x28]
jb 0x1009bf65
xor ebx, ebx
mov esi, ebx
cmp dword [esp + 0x60], 0xffffffff
je 0x1009c0f3
push dword [esp + 0x60]
push edi
call fcn.1003c120
mov eax, esi
mov ecx, dword [esp + 0x118]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.10117cfd
add esp, 0x10c
ret 0xc
xor eax, eax
push eax
push eax
push eax
push 0xffffe05f
push eax
push ebx
push eax
push edi
call fcn.100378e0
mov esi, 0xfffff435
jmp 0x1009c0e2
xor eax, eax
push eax
push eax
push eax
push 0xffffe062
push eax
push eax
push ebx
push edi
call fcn.100378e0
mov esi, 0xfffffbe8
jmp 0x1009c0e2
mov ebp, 0xfffffa1d
cmp esi, ebp
jne 0x1009c0e2
push edi
call fcn.100372a0
xor eax, eax
push eax
push eax
push eax
push 0xffffe08a
push eax
push eax
push ebx
push edi
call fcn.100378e0
mov esi, ebp
jmp 0x1009c0e2
call fcn.10117992
int3