Function at 0x10075020
Capabilities:
Terminate process

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xa0
mov eax, dword [0x10259d1c]
xor eax, esp
mov dword [esp + 0x9c], eax
mov ebp, dword [0x10259f60]
mov eax, dword [ebp + 0x19e4]
mov byte [eax + 0x7c], 1
mov esi, dword [ebp + 0x19e4]
cmp byte [esi + 0x7f], 0
je 0x10075071
xor ebx, ebx
mov ecx, dword [esp + 0x9c]
xor ecx, esp
call fcn.10155bf1
mov eax, ebx
add esp, 0xa0
pop esi
pop edi
pop ebx
pop ebp
ret
mov ebx, dword [esp + 0xc0]
mov eax, dword [esp + 0xbc]
mov edi, dword [esp + 0xb4]
test al, 2
je 0x10075098
cmp dword [esi + 0x1bc], 0
je 0x10075098
call fcn.10057410
mov ecx, esi
push 0
push edi
call fcn.1004b2b0
mov dword [esp], eax
lea eax, [esp + 0x94]
push 0xbf800000
push 1
push 0
push edi
push eax
call fcn.10049ee0
add esp, 0x14
movss xmm0, dword [esp + 0x98]
addss xmm0, dword [0x101a8ae8]
mov eax, dword [esi + 0xc8]
movss xmm3, dword [esi + 0xcc]
addss xmm3, dword [esi + 0xf0]
movd xmm4, eax
movss xmm1, dword [esp + 0x94]
unpcklps xmm1, xmm0
mov dword [esp + 0x84], eax
movss dword [esp + 0x88], xmm3
movsd xmm0, qword [ebx]
xorps xmm2, xmm2
cmpneqps xmm2, xmm0
andps xmm0, xmm2
andnps xmm2, xmm1
orps xmm2, xmm0
movdqu xmmword [esp + 0x38], xmm4
movdqa xmm1, xmm4
movups xmmword [esp + 8], xmm3
punpckldq xmm1, xmm3
movups xmmword [esp + 0x18], xmm2
movaps xmm0, xmm2
movdqu xmmword [esp + 0x48], xmm1
addps xmm0, xmm1
movlps qword [esp + 0x8c], xmm0
lea eax, [esp + 0x84]
push 0
push eax
call fcn.1004bf60
add esp, 8
movss xmm0, dword [esi + 0x3c]
movups xmmword [esp + 0x28], xmm0
mov eax, dword [esp + 0xbc]
lea edi, [esp + 0x74]
test al, 2
jne 0x10075179
push edi
call fcn.1004c9d0
jmp 0x1007517f
push edi
call fcn.1005ad90
add esp, 4
movss xmm5, dword [edi]
movss xmm0, dword [ebx]
movss xmm1, dword [ebx + 4]
xorps xmm2, xmm2
ucomiss xmm2, xmm0
cmpneqss xmm2, xmm1
movd eax, xmm2
setp cl
setne dl
or dl, cl
test dword [esp + 0xbc], 0x2000
sete cl
and cl, dl
movups xmm6, xmmword [esp + 0x38]
movups xmm7, xmmword [esp + 0x28]
jne 0x100751f0
movss xmm2, dword [esi + 0xc]
addss xmm2, xmm5
subss xmm2, xmm7
subss xmm2, xmm6
movss xmm3, dword [esp + 0x94]
movaps xmm0, xmm2
cmpless xmm0, xmm3
movaps xmm4, xmm0
andnps xmm4, xmm2
andps xmm0, xmm3
orps xmm0, xmm4
movss dword [esp + 4], xmm5
addss xmm0, xmm6
movzx ecx, cl
movaps xmm2, xmmword [0x101afbe0]
unpcklps xmm2, xmm1
movups xmm1, xmmword [esp + 0x18]
movss xmm1, xmm7
movd xmm3, ecx
pinsrw xmm3, eax, 2
pslld xmm3, 0x1f
psrad xmm3, 0x1f
andps xmm2, xmm3
andnps xmm3, xmm1
orps xmm3, xmm2
movups xmm1, xmmword [esp + 8]
unpcklps xmm0, xmm1
movsd xmm1, qword [ebp + 0x1548]
addps xmm0, xmm3
movaps xmm2, xmmword [0x101a8710]
mulps xmm2, xmm1
cvttps2dq xmm2, xmm2
cvtdq2ps xmm2, xmm2
movups xmm3, xmmword [esp + 0x48]
subps xmm3, xmm2
subps xmm1, xmm2
addps xmm1, xmm0
movlhps xmm3, xmm1
movups xmmword [esp + 0x74], xmm3
lea eax, [esp + 0x74]
push 0
mov edi, dword [esp + 4]
push edi
push eax
call fcn.1004bfb0
add esp, 0xc
test al, al
je 0x100753e1
mov ebx, dword [esp + 0xbc]
mov eax, ebx
and eax, 0x400
mov ecx, ebx
shr ecx, 9
and ecx, 0xc
lea eax, [ecx + eax*2]
mov ecx, ebx
and ecx, 8
sete byte [esp + 8]
shl ecx, 5
lea edx, [eax + ecx]
test bl, 4
lea eax, [ecx + eax + 0x12]
cmove eax, edx
lea ecx, [esp + 0x72]
lea edx, [esp + 0x73]
push eax
push ecx
push edx
push edi
lea eax, [esp + 0x84]
push eax
call fcn.10072190
add esp, 0x14
mov ebx, eax
test al, al
jne 0x100752de
cmp byte [esp + 0x73], 0
je 0x10075313
cmp byte [ebp + 0x1b57], 0
jne 0x10075313
cmp dword [ebp + 0x1af4], esi
jne 0x10075313
mov eax, dword [ebp + 0x1b4c]
cmp eax, dword [esi + 0x134]
jne 0x10075313
mov byte [ebp + 0x1b56], 1
push dword [esi + 0x134]
push edi
call fcn.1004ba60
add esp, 8
test bl, bl
je 0x10075320
push edi
call fcn.1004bcc0
add esp, 4
cmp byte [esp + 0x73], 0
je 0x1007539d
mov edi, dword [esi + 0x274]
movss xmm0, dword [ebp + 0x1500]
movsd xmm1, qword [0x101afbf0]
movsd qword [esp + 0x60], xmm1
mov dword [esp + 0x68], 0x3e0c8c8d
movss dword [esp + 0x6c], xmm0
lea eax, [esp + 0x60]
push eax
call fcn.10048d50
add esp, 4
mov ecx, edi
push 0xf
push 0
push eax
lea eax, [esp + 0x88]
push eax
lea eax, [esp + 0x84]
push eax
call fcn.10061e40
call fcn.1004d5c0
mov eax, dword [eax + 0x8c]
cmp dword [eax + 0x34], 1
jle 0x1007555a
mov eax, dword [eax + 0x3c]
push dword [eax + 4]
call fcn.1005a8c0
add esp, 4
mov dword [esp], ebx
movzx ebx, byte [esp + 8]
and bl, byte [esp + 0xb8]
mov ecx, dword [esi + 0x274]
movups xmm0, xmmword [esp + 0x74]
sub esp, 0x14
movups xmmword [esp], xmm0
mov dword [esp + 0x10], 1
call fcn.1005fd30
mov edi, dword [esi + 0x274]
mov eax, ebx
test bl, bl
jne 0x1007540c
movss xmm0, dword [0x101afb70]
jmp 0x10075414
mov eax, dword [esp + 0xbc]
test al, 2
je 0x10075054
cmp dword [esi + 0x1bc], 0
je 0x10075054
push 0xffffffffffffffff
call fcn.1005cf00
add esp, 4
jmp 0x10075054
movss xmm0, dword [0x101fd454]
movss xmm1, dword [ebp + 0x1500]
movq xmm2, qword [0x101fd44c]
movzx eax, al
movd xmm3, eax
pshufd xmm3, xmm3, 0x50
pslld xmm3, 0x1f
psrad xmm3, 0x1f
pand xmm2, xmm3
pandn xmm3, xmmword [0x101afae0]
por xmm3, xmm2
movq qword [esp + 0x60], xmm3
movss dword [esp + 0x68], xmm0
movss dword [esp + 0x6c], xmm1
lea ebp, [esp + 0x60]
push ebp
call fcn.10048d50
add esp, 4
movups xmm2, xmmword [esp + 0x18]
shufps xmm2, xmm2, 0x55
movss xmm0, dword [0x101a72c0]
mulss xmm2, xmm0
mulss xmm0, dword [esp + 0x98]
subss xmm2, xmm0
addss xmm2, dword [0x101a8ae8]
movsd xmm0, qword [esp + 0x74]
movaps xmm1, xmmword [0x101afc00]
unpcklps xmm1, xmm2
addps xmm1, xmm0
movlps qword [esp + 0x58], xmm1
lea edx, [esp + 0x58]
mov ecx, edi
push 0
push dword [esp + 0xb8]
push eax
push edx
call fcn.10062de0
mov ecx, dword [esi + 0x274]
call fcn.1005fe80
cmp byte [esp + 0x73], 0
mov ebx, dword [esp]
je 0x100754db
call fcn.1005aa60
mov eax, dword [esp + 0xbc]
test al, 2
je 0x1007551e
cmp dword [esi + 0x1bc], 0
je 0x1007551e
push 0xffffffffffffffff
call fcn.1005cf00
add esp, 4
push ebp
call fcn.1004c9d0
add esp, 4
movss xmm0, dword [esp + 0x60]
subss xmm0, dword [esp + 4]
movss xmm1, dword [esp + 0x7c]
subss xmm1, xmm0
movss dword [esp + 0x7c], xmm1
test bl, bl
je 0x10075056
mov eax, dword [esp + 0xbc]
test al, 1
jne 0x10075056
mov eax, 0x4000000
and eax, dword [esi + 8]
je 0x10075056
test byte [esi + 0x168], 0x20
jne 0x10075056
call fcn.1005c0c0
jmp 0x10075056
push 0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3