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

Disassembly:
push 0xffffffffffffffff
push 0x10108f40
mov eax, dword fs:[0]
push eax
sub esp, 0x70
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x68], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [section..data]
xor eax, esp
push eax
lea eax, [esp + 0x84]
mov dword fs:[0], eax
mov dword [esp + 0x24], ecx
mov esi, dword [esp + 0x94]
lea eax, [esp + 0x20]
push eax
lea edx, [esp + 0x20]
mov dword [esp + 0x24], 0
mov ecx, esi
mov dword [esp + 0x20], 0
call fcn.10030ae0
add esp, 4
test al, al
je 0x10032009
xor ebx, ebx
cmp dword [esp + 0x20], ebx
jle 0x10031f58
jmp 0x10031c90
xor eax, eax
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x3c], 7
mov dword [esp + 0x38], 0
mov word [esp + 0x28], ax
mov dword [esp + 0x8c], eax
lea eax, [esp + 0x28]
push eax
lea edx, [esp + 0x20]
mov ecx, esi
call fcn.10030cc0
add esp, 4
test al, al
je 0x10031fd4
cmp dword [esp + 0x38], 0
je 0x10031fd4
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0
push eax
lea edx, [esp + 0x20]
mov ecx, esi
call fcn.10030ae0
add esp, 4
test al, al
je 0x10031fd4
mov ebp, dword [esp + 0x18]
xor edi, edi
test ebp, ebp
jle 0x10031f18
xor eax, eax
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x60], 7
mov dword [esp + 0x5c], 0
mov word [esp + 0x4c], ax
mov byte [esp + 0x8c], 1
lea eax, [esp + 0x4c]
push eax
lea edx, [esp + 0x20]
mov ecx, esi
call fcn.10030cc0
add esp, 4
test al, al
je case.default.0x10031d9a
cmp dword [esp + 0x5c], 0
je case.default.0x10031d9a
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0
push eax
lea edx, [esp + 0x20]
mov ecx, esi
call fcn.10030ae0
add esp, 4
test al, al
je case.default.0x10031d9a
mov eax, dword [esp + 0x18]
cmp eax, 3
ja case.default.0x10031d9a
jmp dword [eax*4 + 0x10032010]
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0
push eax
lea edx, [esp + 0x20]
mov ecx, esi
call fcn.10030ae0
add esp, 4
test al, al
je case.default.0x10031d9a
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x28]
push eax
call fcn.10034c40
lea ecx, [esp + 0x4c]
push ecx
mov ecx, eax
call fcn.10035020
push dword [esp + 0x18]
mov ecx, eax
call fcn.10030910
jmp case.0x10031d9a.0
xor eax, eax
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x78], 7
mov dword [esp + 0x74], 0
mov word [esp + 0x64], ax
mov byte [esp + 0x8c], 2
lea eax, [esp + 0x64]
push eax
lea edx, [esp + 0x20]
mov ecx, esi
call fcn.10030cc0
add esp, 4
test al, al
je 0x10031f7e
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x28]
push eax
call fcn.10034c40
lea ecx, [esp + 0x4c]
push ecx
mov ecx, eax
call fcn.10035020
lea ecx, [esp + 0x64]
push ecx
mov ecx, eax
call fcn.10030a10
mov byte [esp + 0x8c], 1
lea ecx, [esp + 0x64]
call fcn.10005fe0
jmp case.0x10031d9a.0
xorps xmm0, xmm0
mov dword [esp + 0x48], 0
movq qword [esp + 0x40], xmm0
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov byte [esp + 0x8c], 3
lea eax, [esp + 0x40]
push eax
lea edx, [esp + 0x20]
mov ecx, esi
call fcn.10030c30
add esp, 4
test al, al
je 0x10031f91
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x28]
push eax
call fcn.10034c40
lea ecx, [esp + 0x4c]
push ecx
mov ecx, eax
call fcn.10035020
lea ecx, [esp + 0x40]
push ecx
lea ecx, [eax + 4]
mov dword [eax], 3
call fcn.100349b0
mov byte [esp + 0x8c], 1
lea ecx, [esp + 0x40]
call fcn.10012670
mov byte [esp + 0x8c], 0
lea ecx, [esp + 0x4c]
call fcn.10005fe0
inc edi
cmp edi, ebp
jl 0x10031d15
mov dword [esp + 0x8c], 0xffffffff
cmp dword [esp + 0x3c], 8
jb 0x10031f36
push dword [esp + 0x28]
call fcn.1005d7c6
add esp, 4
xor eax, eax
mov dword [esp + 0x3c], 7
inc ebx
mov dword [esp + 0x38], 0
mov word [esp + 0x28], ax
cmp ebx, dword [esp + 0x20]
jl 0x10031c90
mov al, 1
mov ecx, dword [esp + 0x84]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x68]
xor ecx, esp
call fcn.1005d006
add esp, 0x7c
ret 4
mov byte [esp + 0x8c], 1
lea ecx, [esp + 0x64]
call fcn.10005fe0
jmp case.default.0x10031d9a
mov byte [esp + 0x8c], 1
lea ecx, [esp + 0x40]
call fcn.10012670
mov byte [esp + 0x8c], 0
cmp dword [esp + 0x60], 8
jb 0x10031fbd
push dword [esp + 0x4c]
call fcn.1005d7c6
add esp, 4
xor eax, eax
mov dword [esp + 0x60], 7
mov dword [esp + 0x5c], 0
mov word [esp + 0x4c], ax
mov dword [esp + 0x8c], 0xffffffff
cmp dword [esp + 0x3c], 8
jb 0x10031ff2
push dword [esp + 0x28]
call fcn.1005d7c6
add esp, 4
xor eax, eax
mov dword [esp + 0x3c], 7
mov dword [esp + 0x38], 0
mov word [esp + 0x28], ax
xor al, al
jmp 0x10031f5a