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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp + 0x1c]
mov dword [ebp - 0xc], ebx
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 8], esi
mov ebx, dword [ebp + 0x18]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp + 0x20]
mov dword [ebp - 4], edi
mov esi, dword [ebp + 0x14]
mov dword [ebp - 0x1c], edx
mov edi, dword [ebp + 8]
mov edx, dword [ebp + 0x24]
test eax, eax
jne 0xa16a83
mov eax, 0xfffffffa
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 8]
mov edi, dword [ebp - 4]
mov esp, ebp
pop ebp
ret
cmp byte [eax], 0x31
jne 0xa16a71
cmp edx, 0x38
jne 0xa16a71
test edi, edi
nop
jne 0xa16a99
mov eax, 0xfffffffe
jmp 0xa16a76
mov eax, dword [edi + 0x20]
mov dword [edi + 0x18], 0
test eax, eax
je 0xa16cbf
mov eax, dword [edi + 0x24]
test eax, eax
je 0xa16cb3
cmp dword [ebp - 0x18], 0xffffffff
jne 0xa16ac3
mov dword [ebp - 0x18], 6
test esi, esi
js 0xa16ca5
cmp esi, 0xf
mov dword [ebp - 0x10], 1
jle 0xa16ae1
sub esi, 0x10
mov dword [ebp - 0x10], 2
lea eax, [ebx - 1]
cmp eax, 8
ja 0xa16a92
cmp ecx, 8
jne 0xa16a92
cmp esi, 7
jle 0xa16a92
cmp esi, 0xf
jg 0xa16a92
mov eax, dword [ebp - 0x18]
test eax, eax
lea esi, [esi]
js 0xa16a92
cmp dword [ebp - 0x18], 9
jg 0xa16a92
mov ecx, dword [ebp - 0x1c]
test ecx, ecx
js 0xa16a92
cmp dword [ebp - 0x1c], 4
jg 0xa16a92
cmp esi, 8
jne 0xa16b22
mov si, 9
mov dword [esp + 8], 0x16c0
mov dword [esp + 4], 1
mov eax, dword [edi + 0x28]
mov dword [esp], eax
call dword [edi + 0x20]
mov dword [ebp - 0x14], eax
mov edx, dword [ebp - 0x14]
mov eax, 0xfffffffc
test edx, edx
je 0xa16a76
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
mov dword [edi + 0x1c], ecx
mov dword [ecx + 0x18], eax
mov eax, 1
mov dword [ecx], edi
mov dword [ecx + 0x1c], 0
mov dword [ecx + 0x30], esi
mov ecx, esi
shl eax, cl
mov dword [edx + 0x2c], eax
sub eax, 1
mov dword [edx + 0x34], eax
lea ecx, [ebx + 7]
mov eax, 1
shl eax, cl
mov dword [edx + 0x50], ecx
mov ecx, eax
sub ecx, 1
mov dword [edx + 0x4c], eax
mov eax, 0xaaaaaaab
mov dword [edx + 0x54], ecx
mov ecx, edx
mov edx, dword [edx + 0x50]
add edx, 2
mul edx
shr edx, 1
mov dword [ecx + 0x58], edx
mov dword [esp + 8], 2
mov eax, dword [ecx + 0x2c]
mov dword [esp + 4], eax
mov eax, dword [edi + 0x28]
mov dword [esp], eax
call dword [edi + 0x20]
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x38], eax
mov dword [esp + 8], 2
mov eax, dword [edx + 0x2c]
mov dword [esp + 4], eax
mov eax, dword [edi + 0x28]
mov dword [esp], eax
call dword [edi + 0x20]
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x40], eax
mov dword [esp + 8], 2
mov eax, dword [ecx + 0x4c]
mov dword [esp + 4], eax
mov eax, dword [edi + 0x28]
mov dword [esp], eax
call dword [edi + 0x20]
mov edx, dword [ebp - 0x14]
lea ecx, [ebx + 6]
mov dword [edx + 0x44], eax
mov eax, 1
shl eax, cl
mov dword [edx + 0x169c], eax
mov dword [esp + 8], 4
mov dword [esp + 4], eax
mov eax, dword [edi + 0x28]
mov dword [esp], eax
call dword [edi + 0x20]
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x169c]
mov ecx, eax
mov dword [ebx + 8], eax
lea eax, [edx*4]
mov dword [ebx + 0xc], eax
mov eax, dword [ebx + 0x38]
test eax, eax
je 0xa16cd2
mov eax, dword [ebx + 0x40]
test eax, eax
je 0xa16cd2
mov eax, dword [ebx + 0x44]
test eax, eax
je 0xa16cd2
test ecx, ecx
je 0xa16cd2
mov eax, edx
mov ebx, dword [ebp - 0x18]
and eax, 0xfffffffe
add eax, ecx
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x16a4], eax
lea eax, [edx + edx*2]
add eax, dword [ecx + 8]
mov dword [ecx + 0x84], ebx
mov dword [ecx + 0x1698], eax
mov eax, dword [ebp - 0x1c]
mov byte [ecx + 0x24], 8
mov dword [ecx + 0x88], eax
mov ebx, dword [ebp - 0xc]
mov dword [ebp + 8], edi
mov esi, dword [ebp - 8]
mov edi, dword [ebp - 4]
mov esp, ebp
pop ebp
jmp fcn.00a168b0
neg esi
mov dword [ebp - 0x10], 0
jmp 0xa16ae1
mov dword [edi + 0x24], 0xa18f90
jmp 0xa16ab6
mov dword [edi + 0x20], 0xa18fa0
mov dword [edi + 0x28], 0
jmp 0xa16aab
mov eax, dword [ebp - 0x14]
mov dword [eax + 4], 0x29a
mov eax, dword [0xc07b78]
mov dword [edi + 0x18], eax
mov dword [esp], edi
call fcn.00a16000
mov eax, 0xfffffffc
jmp 0xa16a76