Function at 0x100109c0
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100a18bd
mov eax, dword fs:[0]
push eax
sub esp, 0x30
push ebx
push esi
push edi
mov eax, dword [0x10104a40]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x30], esi
mov ecx, dword [0x101c84fc]
mov ebx, dword [ebp + 8]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov ecx, dword [0x101c8500]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
call edx
mov edx, eax
mov dword [ebp - 0x18], edx
test edx, edx
je 0x10010db3
mov ecx, dword [0x101c8670]
mov eax, dword [ecx + ebx]
mov edi, dword [ecx + edx]
mov dword [ebp - 0x14], eax
cmp edi, eax
jne 0x10010a43
cmp edx, ebx
je 0x10010a43
cmp byte [0x100d28f8], 0
mov cl, 1
mov byte [ebp - 0x10], cl
jne 0x10010a83
mov byte [ebp - 0x10], 0
jmp 0x10010a83
mov al, 1
xor cl, cl
mov dword [ebp - 0x10], eax
cmp edx, ebx
jne 0x10010a66
cmp byte [0x100d28bf], cl
je 0x10010a5e
cmp byte [0x100d2678], cl
jne 0x10010a66
mov byte [ebp - 0x10], 0
xor cl, cl
jmp 0x10010a83
cmp edi, dword [ebp - 0x14]
je 0x10010a83
cmp byte [0x100d28d4], 0
mov dword [ebp - 0x10], 0
movzx eax, al
cmove eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], eax
mov edx, dword [esi + 4]
mov dword [ebp - 0x1c], edx
test edx, edx
je 0x10010db3
mov ebx, dword [esi + 0x14]
test ebx, ebx
mov dword [ebp - 0x20], ebx
mov ebx, dword [ebp + 8]
je 0x10010db3
mov edx, dword [esi + 0x10]
test edx, edx
mov dword [ebp - 0x24], edx
mov edx, dword [ebp - 0x18]
je 0x10010db3
mov eax, dword [esi + 0xc]
test eax, eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x14]
je 0x10010db3
mov esi, dword [esi + 8]
mov dword [ebp - 0x2c], esi
test esi, esi
je 0x10010db3
xor esi, esi
mov dword [ebp + 8], esi
mov dword [ebp - 0x14], esi
cmp edx, ebx
jne 0x10010b16
mov eax, dword [0x101c86bc]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x14], edi
mov dword [ebp + 8], esi
cmp byte [eax + edx], 0
je 0x10010b42
movd xmm1, dword [0x100d27e0]
movss xmm0, dword [0x100a53bc]
cvtdq2ps xmm1, xmm1
mov dword [ebp + 8], esi
mov dword [ebp - 0x14], edi
comiss xmm0, xmm1
ja 0x10010db3
jmp 0x10010b42
test cl, cl
je 0x10010b22
mov esi, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
jmp 0x10010b2c
cmp edi, eax
je 0x10010b42
mov esi, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x14], eax
mov ecx, esi
mov eax, dword [esi]
push 1
push 0x8000
mov dword [ebp + 8], esi
mov eax, dword [eax + 0x74]
call eax
mov ecx, dword [0x101c84fc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x6c]
call eax
test al, al
je 0x10010db3
mov ecx, dword [0x101c84fc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x68]
call eax
test al, al
je 0x10010db3
mov ecx, dword [0x101c84fc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov ecx, dword [0x101c8500]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
call edx
test eax, eax
je 0x10010c59
mov ecx, dword [0x101c8658]
cmp dword [ecx + eax], 0
jle 0x10010c59
mov edx, dword [0x101c8670]
mov ecx, dword [edx + ebx]
cmp ecx, dword [edx + eax]
je 0x10010c59
cmp byte [0x100d2991], 0
je 0x10010c59
push ebx
lea eax, [ebp - 0x3c]
mov ecx, 0x101b54d8
push eax
call fcn.1000c9e0
mov edi, dword [ebp - 0x38]
mov eax, 0x5e5d422b
mov esi, dword [ebp - 0x3c]
mov ecx, edi
sub ecx, esi
mov dword [ebp - 4], 0
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x10010cac
mov dword [ebp - 4], 0xffffffff
test esi, esi
je 0x10010c59
mov ecx, dword [ebp - 0x34]
mov eax, 0x5e5d422b
sub ecx, esi
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
imul ecx, eax, 0x2b68
mov eax, esi
cmp ecx, 0x1000
jb 0x10010c3a
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010dc7
push ecx
push esi
call fcn.100733d0
mov dword [ebp - 0x34], 0
add esp, 8
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x3c], 0
cmp dword [ebp - 0x18], ebx
je 0x10010d73
cmp byte [ebp - 0x10], 0
je 0x10010db3
mov ecx, dword [0x101c851c]
push 0
push 0
push dword [ebp + 8]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebx + 4]
add ebx, 4
push 0xff
push 1
mov ecx, ebx
mov eax, dword [eax + 0x24]
call eax
mov ecx, dword [0x101c851c]
push 0
push 0
push 0
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
jmp 0x10010d7c
push 0
mov eax, 0x2b68
lea esi, [edi - 0x2b68]
call fcn.100734d0
mov edi, esp
mov ecx, 0xada
rep movsd dword es:[edi], dword [esi]
push ebx
mov ecx, 0x101b54d8
call fcn.1000caf0
mov eax, dword [ebp - 0x38]
push ecx
mov ecx, 0x101b54d8
movss xmm0, dword [eax - 0x2b00]
movss dword [esp], xmm0
push ebx
call fcn.1000ba30
mov ecx, dword [0x101c851c]
mov edx, dword [ebp - 0x30]
push 0
push 0
mov eax, dword [ecx]
push dword [edx + 0x18]
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebx + 4]
lea ecx, [ebx + 4]
push 0xff
push 1
mov eax, dword [eax + 0x24]
call eax
push ebx
mov ecx, 0x101b54d8
call fcn.1000d150
mov esi, dword [ebp - 0x3c]
mov dword [ebp - 4], 0xffffffff
test esi, esi
je 0x10010c59
mov ecx, dword [ebp - 0x34]
mov eax, 0x5e5d422b
sub ecx, esi
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
imul ecx, eax, 0x2b68
mov eax, esi
cmp ecx, 0x1000
jb 0x10010c3a
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010dc7
jmp 0x10010c3a
add ebx, 4
cmp byte [ebp - 0x10], 0
je 0x10010db3
mov ecx, dword [0x101c851c]
push 0
push 0
push dword [ebp - 0x14]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebx]
mov ecx, ebx
push 0xff
push 1
mov eax, dword [eax + 0x24]
call eax
mov ecx, dword [0x101c851c]
push 0
push 0
push 0
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
call fcn.10078f4f
int3