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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x10263b7d
mov eax, dword fs:[0]
push eax
sub esp, 0xa0
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x98], eax
push ebx
push esi
push edi
mov eax, dword [section..data]
xor eax, esp
push eax
lea eax, [esp + 0xb0]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [esp + 0x5c], ebx
mov eax, dword [ebp + 0x24]
mov esi, dword [ebp + 8]
mov dword [esp + 0x50], eax
mov eax, dword [ebp + 0x28]
mov dword [esp + 0x40], eax
mov eax, dword [ebp + 0x2c]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x3c]
mov dword [esp + 0x54], eax
mov eax, dword [ebp + 0x20]
shr eax, 0x16
and eax, 1
mov dword [esp + 0x64], esi
push 4
mov dword [ebp + 0x20], eax
call dword [0x102ab9dc]
push dword [ebp + 0x1c]
mov dword [esp + 0x1c], eax
mov ecx, 0x1029b23c
lea eax, [esp + 0x7c]
push eax
call fcn.100d5542
xor eax, eax
mov dword [esp + 0x30], 0x10040f2c
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0xb8], eax
test esi, esi
je 0x101b716f
mov eax, dword [esi + 4]
push eax
call dword [0x102ab054]
push eax
lea ecx, [esp + 0x34]
call fcn.10273aed
and dword [esp + 0x48], 0
mov dword [esp + 0x44], 0x10005fc8
mov byte [esp + 0xb8], 1
mov ecx, dword [ebp + 0x18]
sub ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 0x14]
sub eax, dword [ebp + 0xc]
push ecx
push eax
push dword [esi + 4]
call dword [0x102ab098]
push eax
lea ecx, [esp + 0x48]
call fcn.10274d53
push dword [esp + 0x48]
push dword [esp + 0x38]
call fcn.10273c3c
mov edx, dword [ebp + 0x18]
sub edx, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x14]
sub ecx, dword [ebp + 0xc]
push 0xcc0020
mov dword [esp + 0x5c], eax
xor eax, eax
push eax
push eax
push dword [esi + 4]
push edx
push ecx
push eax
push eax
push dword [esp + 0x54]
call dword [0x102ab0a0]
mov eax, dword [ebp + 0x1c]
shr eax, 0x18
and eax, 1
cmp dword [ebx + 0xba20], 0x14
mov dword [esp + 0x4c], eax
jge 0x101b72df
mov eax, dword [ebp + 0x34]
test eax, eax
je 0x101b7216
mov ecx, dword [ebx + 0x8ae0]
jmp 0x101b721c
mov ecx, dword [ebx + 0x8ae8]
mov dword [esp + 0x14], ecx
test eax, eax
je 0x101b722c
mov edx, dword [ebx + 0x8ae4]
jmp 0x101b7232
mov edx, dword [ebx + 0x8aec]
lea esi, [ebp + 0xc]
mov eax, dword [ebp + 0xc]
lea edi, [esp + 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea esi, [ebx + 0x2408]
lea edi, [esp + 0x68]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
add eax, dword [esp + 0x68]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x6c]
add dword [esp + 0x24], eax
mov eax, dword [esp + 0x70]
sub dword [esp + 0x28], eax
mov eax, dword [esp + 0x74]
sub dword [esp + 0x2c], eax
lea eax, [esp + 0x30]
mov dword [esp + 0x68], 0x1000bf6c
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x20]
push 0x32
push 0
push eax
push edx
push edx
push eax
sub esp, 0x10
mov byte [esp + 0xe0], 2
mov edi, esp
lea ecx, [esp + 0x90]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.100c4071
xor eax, eax
mov byte [esp + 0xb8], 1
cmp dword [ebp + 0x34], eax
lea esi, [ebp + 0xc]
push 0xff
sete al
lea ecx, [ebx + 0x22cc]
mov edx, dword [ecx]
push eax
sub esp, 0x10
lea eax, [esp + 0x48]
mov edi, esp
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [edx + 0x1c]
jmp 0x101b7309
xor eax, eax
lea esi, [ebp + 0xc]
cmp dword [ebp + 0x34], eax
lea ecx, [ebx + 0x22cc]
mov edx, dword [ecx]
push 0xff
sete al
push eax
sub esp, 0x10
lea eax, [esp + 0x48]
mov edi, esp
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [edx + 0x18]
mov ecx, dword [esp + 0x4c]
lea esi, [ebp + 0xc]
lea edi, [esp + 0x20]
neg ecx
movsd dword es:[edi], dword [esi]
sbb ecx, ecx
and ecx, dword [esp + 0x7c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x24]
mov esi, dword [ebp + 0xc]
add edi, ecx
mov ecx, dword [esp + 0x28]
add esi, dword [esp + 0x78]
sub ecx, dword [esp + 0x78]
cmp dword [esp + 0x1c], 0
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], ecx
je 0x101b73c7
push 0x32
call dword [0x102ab9dc]
push 0x31
mov dword [esp + 0x18], eax
call dword [0x102ab9dc]
mov ecx, dword [esp + 0x2c]
mov edx, eax
mov eax, dword [esp + 0x18]
sub ecx, edi
add eax, esi
mov dword [esp + 0x60], edx
sub eax, esi
add ecx, edi
mov dword [esp + 0x68], eax
sub eax, edx
cdq
sub eax, edx
sar eax, 1
jns 0x101b7381
xor eax, eax
sub ecx, dword [esp + 0x14]
add eax, esi
mov dword [esp + 0x18], eax
sub ecx, edi
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
jns 0x101b7398
xor eax, eax
push 3
push 0
push 0
push dword [esp + 0x20]
add eax, edi
push dword [esp + 0x70]
push dword [esp + 0x30]
push eax
push dword [esp + 0x34]
push dword [esp + 0x54]
call dword [0x102abab4]
add esi, dword [esp + 0x68]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x20], esi
mov eax, dword [esp + 0x54]
mov dword [esp + 0x14], ecx
mov eax, dword [eax + 4]
mov dword [esp + 0x18], eax
test eax, eax
je 0x101b74d9
lea eax, [esp + 0x18]
push eax
call fcn.100a2e20
mov edi, eax
xor ecx, ecx
mov dword [esp + 0x1c], ecx
cmp dword [edi + 4], ecx
je 0x101b7404
cmp dword [edi + 8], ecx
je 0x101b7411
mov dword [esp + 0x1c], 1
jmp 0x101b7411
cmp dword [edi + 8], ecx
je 0x101b7411
mov dword [esp + 0x1c], 2
mov eax, dword [edi + 0x1c]
mov esi, ecx
sub eax, 0x13
je 0x101b7452
sub eax, 7
je 0x101b7437
dec eax
jne 0x101b7457
mov esi, dword [ebp + 0x1c]
shr esi, 0x15
and esi, 0x100
or esi, 0xf020
jmp 0x101b7457
mov esi, dword [ebp + 0x1c]
and esi, 0x1000000
neg esi
sbb esi, esi
and esi, 0xf0
add esi, 0xf030
jmp 0x101b7457
mov esi, 0xf060
mov eax, dword [edi]
lea ecx, [esp + 0x68]
push ecx
mov ecx, edi
call dword [eax + 0x14]
cmp dword [esp + 0x4c], 0
je 0x101b747d
push dword [esp + 0x7c]
lea eax, [esp + 0x6c]
push dword [esp + 0x7c]
push eax
call dword [0x102ababc]
push 0
push dword [ebp + 0x34]
lea eax, [esp + 0x70]
mov ecx, ebx
push 0
push dword [esp + 0x28]
push esi
push eax
lea eax, [esp + 0x48]
push eax
call fcn.101b6c00
mov eax, dword [edi]
lea ecx, [esp + 0x88]
push ecx
mov ecx, edi
call dword [eax + 0x14]
mov ecx, dword [esp + 0x14]
cmp ecx, dword [eax]
jl 0x101b74c6
mov eax, dword [edi]
lea ecx, [esp + 0x98]
push ecx
mov ecx, edi
call dword [eax + 0x14]
mov eax, dword [eax]
mov dword [esp + 0x14], eax
cmp dword [esp + 0x18], 0
jne 0x101b73de
mov esi, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x50]
mov eax, dword [eax]
cmp dword [eax - 0xc], 0
jne 0x101b74f1
mov eax, dword [esp + 0x40]
mov eax, dword [eax]
cmp dword [eax - 0xc], 0
je 0x101b755f
cmp esi, ecx
jge 0x101b755f
lea eax, [ebx + 0x8ac8]
push eax
lea ecx, [esp + 0x34]
call fcn.10273c95
mov ecx, dword [esp + 0x14]
lea esi, [esp + 0x20]
push 0xffffffffffffffff
push 0
push 0
push dword [ebp + 0x38]
lea edi, [esp + 0x88]
mov ebx, eax
push dword [ebp + 0x20]
movsd dword es:[edi], dword [esi]
lea eax, [esp + 0x8c]
push dword [ebp + 0x34]
dec ecx
push dword [ebp + 0x30]
movsd dword es:[edi], dword [esi]
push dword [esp + 0x5c]
push dword [esp + 0x70]
movsd dword es:[edi], dword [esi]
push eax
lea eax, [esp + 0x58]
push eax
movsd dword es:[edi], dword [esi]
mov dword [esp + 0xac], ecx
mov ecx, dword [esp + 0x88]
call fcn.101b6dca
push ebx
lea ecx, [esp + 0x34]
call fcn.10273c95
mov ecx, dword [ebp + 0x18]
xor ebx, ebx
sub ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 0x14]
sub eax, dword [ebp + 0xc]
push 0xcc0020
push ebx
push ebx
push dword [esp + 0x40]
push ecx
push eax
push dword [ebp + 0x10]
mov eax, dword [esp + 0x80]
push dword [ebp + 0xc]
push dword [eax + 4]
call dword [0x102ab0a0]
mov eax, dword [esp + 0x58]
test eax, eax
jne 0x101b759c
mov eax, ebx
jmp 0x101b759f
mov eax, dword [eax + 4]
push eax
push dword [esp + 0x38]
call fcn.10273c3c
mov byte [esp + 0xb8], bl
lea ecx, [esp + 0x44]
mov dword [esp + 0x44], 0x10005fc8
call fcn.10097cc7
or dword [esp + 0xb8], 0xffffffff
lea ecx, [esp + 0x30]
call fcn.10273b6c
mov ecx, dword [esp + 0xb0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x98]
xor ecx, esp
call fcn.1028105c
mov esp, ebp
pop ebp
ret 0x38