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

Disassembly:
sub esp, 0x84
mov eax, dword [0x10a78b80]
xor eax, esp
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x94]
or ecx, 0xffffffff
mov edx, dword [esp + 0x90]
push ebx
push ebp
mov ebp, dword [esp + 0x94]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0xa8]
push esi
mov esi, dword [esp + 0xb0]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0xb4]
push edi
mov edi, dword [esp + 0x98]
mov dword [esp + 0x30], eax
mov eax, dword [ebp + 0x31c4]
mov dword [esp + 0x1c], ecx
xor ecx, ecx
mov dword [esp + 0x10], eax
mov al, byte [edi + 0x3abf0]
test al, al
mov dword [esp + 0x14], edi
mov dword [esp + 0x20], edx
sete cl
mov dword [esp + 0x28], esi
xor ebx, ebx
mov dword [esp + 0x18], closesocket
test al, al
lea eax, [edi + 0x3adc8]
mov dword [esp + 0x2c], eax
lea ecx, [ecx*8 + 0xc]
setne bl
mov dword [esp + 0x3c], ecx
mov ecx, dword [edi + 0x3e678]
mov dword [esp + 0x38], ecx
lea ebx, [ebx*8 - 0x14]
push ebx
push dword [esp + 0xb0]
lea eax, [esp + 0x70]
push dword [esp + 0xb0]
push eax
push esi
push edx
push ebp
push edi
call fcn.101130b0
mov eax, dword [edi + 0x3ade8]
push dword [esp + 0xcc]
push dword [esp + 0xcc]
movzx esi, byte [eax + 0x1070eea0]
mov eax, dword [esp + 0xd0]
cdq
idiv esi
push dword [esp + 0x4c]
mov ecx, eax
mov eax, dword [esp + 0xd8]
cdq
idiv esi
imul ecx, dword [edi + 0x3ade4]
push dword [esp + 0x58]
add ecx, eax
mov eax, dword [esp + 0x44]
imul edi, ecx, 0xa4
mov eax, dword [eax + 0x3addc]
mov esi, dword [edi + eax + 8]
call fcn.1009f4e0
push dword [esp + 0xdc]
push dword [esp + 0xdc]
push dword [esp + 0x58]
push ebp
push dword [esp + 0x54]
push dword [esp + 0x74]
call fcn.1009f770
mov eax, dword [esp + 0x5c]
add esp, 0x48
mov eax, dword [eax + 0x3addc]
mov dword [edi + eax + 8], esi
mov esi, dword [esp + 0x24]
push esi
call fcn.10080bb0
add esp, 4
mov dword [ebp + 0x25ad8], eax
test eax, eax
jne 0x10112f89
push str.Failed_to_allocate_PC_TREE
push 2
push dword [ebp + 0x1ba4]
call fcn.1006e850
add esp, 0xc
movups xmm0, xmmword [esp + 0x68]
push 0
push 1
push 0
push dword [esp + 0x34]
push dword [ebp + 0x25ad8]
sub esp, 0x28
mov eax, esp
movups xmmword [eax], xmm0
movups xmm0, xmmword [esp + 0xb4]
movups xmmword [eax + 0x10], xmm0
movq xmm0, qword [esp + 0xc4]
movq qword [eax + 0x20], xmm0
lea eax, [esp + 0xa4]
push eax
push esi
push dword [esp + 0xf0]
push dword [esp + 0xf0]
push dword [esp + 0x80]
push dword [esp + 0x70]
push ebp
push dword [esp + 0x6c]
call fcn.10454f60
mov eax, dword [esp + 0x74]
add esp, 0x5c
cmp eax, dword [esp + 0x7c]
jg 0x10113031
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x1c]
jl 0x10113007
cmp edi, esi
ja 0x10113031
mov eax, dword [esp + 0x10]
sub eax, dword [ebp + 0x31c4]
cdq
mov ecx, eax
mov eax, ebx
xor ecx, edx
sub ecx, edx
cdq
xor eax, edx
sub eax, edx
cmp eax, ecx
jge 0x10113072
cmp edi, esi
jne 0x10113072
mov eax, dword [esp + 0x18]
cmp eax, dword [esp + 0x7c]
jne 0x10113072
movups xmm0, xmmword [esp + 0x68]
mov eax, dword [ebp + 0x31c4]
add eax, ebx
movups xmmword [esp + 0x40], xmm0
mov dword [esp + 0x10], eax
movups xmm0, xmmword [esp + 0x78]
movups xmmword [esp + 0x50], xmm0
mov ecx, dword [esp + 0x54]
movq xmm0, qword [esp + 0x88]
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x50]
movq qword [esp + 0x60], xmm0
mov dword [esp + 0x1c], ecx
jmp 0x10113076
mov eax, dword [esp + 0x10]
add ebx, dword [esp + 0x38]
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
mov esi, dword [esp + 0x28]
cmp ebx, dword [esp + 0x3c]
jle 0x10112eb4
mov ecx, dword [esp + 0x90]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.105116c0
add esp, 0x84
ret