Function at 0x70af16
Capabilities:
Read file on windows
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x240
mov eax, dword [0x100abd0c]
xor eax, esp
mov dword [esp + 0x23c], eax
cmp dword [0x100a8418], 0
push ebx
push ebp
push esi
mov ebx, ecx
push edi
mov dword [esp + 0x14], ebx
je 0x70af7c
mov ecx, dword [0x100b1ee0]
xor eax, eax
mov dword [0x100aeac8], eax
test ecx, 0x200
je 0x70af5c
mov eax, 1
mov dword [0x100aeac8], eax
test ecx, 0x1000
je 0x70af6e
mov eax, 2
mov dword [0x100aeac8], eax
push eax
push 0x10080fa0
call fcn.0071def6
add esp, 8
test dword [0x100b1eec], 0x100
je 0x70af9e
mov eax, dword [esp + 0x254]
push ebx
push eax
push 0x10080f84
call fcn.0071def6
add esp, 0xc
push 0x7c
lea ecx, [esp + 0x54]
push 0
push ecx
call fcn.00751ed6
add esp, 0xc
call fcn.006fe5a6
mov ebp, dword [esp + 0x254]
push 0
push 0x21
lea edx, [esp + 0x58]
push edx
push 0
push ebx
push ebp
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], 0x808
call fcn.006fe1a6
add esp, 4
call eax
mov esi, eax
test esi, esi
je 0x70b006
push 0x18c
push esi
call fcn.0071caf6
add esp, 4
push eax
push esi
push 0x10080f58
call fcn.0071def6
add esp, 0x10
jmp 0x70b3cc
test dword [esp + 0xb8], 0x1000
je 0x70b39a
push ebx
mov ecx, 0x100b1c18
call fcn.00725cd6
test eax, eax
jne 0x70b39a
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x5c]
push eax
mov eax, dword [esp + 0xa8]
push ecx
push edx
push eax
push ebx
push ebp
push 0x10080f18
call fcn.0071def6
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x78]
mov eax, dword [esp + 0x7c]
push ecx
mov ecx, dword [esp + 0x94]
push edx
push eax
push ecx
call fcn.0070a286
add esp, 0x2c
test eax, eax
je 0x70b39a
mov ecx, dword [0x100aeac8]
sub ecx, 0
je 0x70b097
sub ecx, 1
je 0x70b090
sub ecx, 1
jne 0x70b09e
mov ecx, 0x1007a604
jmp 0x70b0a2
mov ecx, 0x1007a600
jmp 0x70b0a2
mov ecx, 0x1007a5fc
jmp 0x70b0a2
mov ecx, dword [esp + 0x14]
push ecx
push eax
sub esp, 0x20
mov ecx, 8
lea esi, [esp + 0xc0]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.0070a316
mov edx, dword [esp + 0x80]
add esp, 0x20
push eax
mov eax, dword [esp + 0x68]
push edx
push eax
call fcn.0071dbf6
push eax
push 0x1007a7f4
lea ecx, [esp + 0x164]
push 0x104
push ecx
call fcn.00751564
lea edx, [esp + 0x16c]
push 0x1007a7f0
push edx
call fcn.00750d06
mov edi, eax
add esp, 0x2c
test edi, edi
je 0x70b39a
lea eax, [esp + 0x148]
push eax
push 0x1007a7d0
call fcn.0071def6
mov eax, dword [0x100aeac8]
add esp, 8
sub eax, 0
je 0x70b21d
sub eax, 1
je 0x70b1e1
sub eax, 1
jne 0x70b38a
push edi
push 1
lea ecx, [esp + 0x1c]
push 4
push ecx
call fcn.0075257b
mov esi, dword [0x10079450]
add esp, 0x10
cmp eax, 1
je 0x70b16b
call esi
push eax
push 0x1007a7ac
call fcn.0071def6
add esp, 8
push edi
push 1
lea edx, [esp + 0xd4]
push 0x7c
push edx
call fcn.0075257b
add esp, 0x10
cmp eax, 1
je 0x70b195
call esi
push eax
push 0x1007a7ac
call fcn.0071def6
add esp, 8
push 0x7c
lea eax, [esp + 0xd0]
push 0
push eax
call fcn.00751ed6
mov ecx, dword [esp + 0x6c]
imul ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x80]
push edi
push 1
push ecx
push edx
call fcn.0075257b
add esp, 0x1c
cmp eax, 1
je 0x70b38a
call esi
push eax
push 0x1007a7ac
call fcn.0071def6
add esp, 8
jmp 0x70b38a
mov eax, dword [esp + 0x60]
imul eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x74]
push edi
push 1
push eax
push ecx
call fcn.0075257b
add esp, 0x10
cmp eax, 1
je 0x70b38a
call dword [0x10079450]
push eax
push 0x1007a7ac
call fcn.0071def6
add esp, 8
jmp 0x70b38a
mov ecx, dword [esp + 0x5c]
xor eax, eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0xa4]
mov word [esp + 0x26], ax
movzx eax, ax
mov esi, dword [esp + 0x58]
imul eax, ecx
add eax, 0x1f
and eax, 0xffffffe0
cdq
and edx, 7
add eax, edx
mov ebp, eax
sar ebp, 3
mov edx, ebp
imul edx, esi
push edi
push 1
lea eax, [esp + 0x48]
push 0xe
push eax
mov dword [esp + 0x28], 0x28
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], esi
mov dword [esp + 0x20], ebp
mov dword [esp + 0x3c], edx
call fcn.0075257b
add esp, 0x10
cmp eax, 1
jne 0x70b38a
push edi
push eax
lea ecx, [esp + 0x20]
push 0x28
push ecx
call fcn.0075257b
add esp, 0x10
cmp eax, 1
jne 0x70b38a
mov edx, dword [esp + 0x4a]
push 0
push edx
push edi
call fcn.00750f23
add esp, 0xc
cmp dword [esp + 0x20], 0
jge 0x70b32c
xor ebx, ebx
cmp dword [esp + 0x58], ebx
jle 0x70b379
mov dword [esp + 0x10], ebx
mov eax, dword [esp + 0x4a]
mov ecx, dword [esp + 0x10]
mov esi, ebx
imul esi, dword [esp + 0x60]
add esi, dword [esp + 0x74]
push 0
add ecx, eax
push ecx
push edi
call fcn.00750f23
mov edx, dword [esp + 0x6c]
push edi
push 1
push edx
push esi
call fcn.0075257b
add esp, 0x1c
cmp eax, 1
jne 0x70b379
add dword [esp + 0x10], ebp
inc ebx
cmp ebx, dword [esp + 0x58]
jl 0x70b2eb
jmp 0x70b379
mov eax, dword [esp + 0x58]
xor esi, esi
test eax, eax
jle 0x70b37d
xor ebp, ebp
sub eax, esi
dec eax
imul eax, dword [esp + 0x60]
add eax, dword [esp + 0x74]
push 0
mov ebx, eax
mov eax, dword [esp + 0x4e]
lea ecx, [eax + ebp]
push ecx
push edi
call fcn.00750f23
mov edx, dword [esp + 0x6c]
push edi
push 1
push edx
push ebx
call fcn.0075257b
add esp, 0x1c
cmp eax, 1
jne 0x70b379
mov eax, dword [esp + 0x58]
add ebp, dword [esp + 0x10]
inc esi
cmp esi, eax
jl 0x70b338
mov ebx, dword [esp + 0x14]
push 0x1007a700
call fcn.0071def6
add esp, 4
push edi
call fcn.007515f9
mov ebp, dword [esp + 0x258]
add esp, 4
push 0
push ebx
push ebp
call fcn.006fe156
add esp, 4
call eax
mov esi, eax
test esi, esi
je 0x70b3cc
push 0x1f7
push esi
call fcn.0071caf6
add esp, 4
push eax
push esi
push ebx
push 0x10080ee0
call fcn.0071def6
add esp, 0x14
mov ecx, dword [esp + 0x24c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00750c33
add esp, 0x240
ret