Function at 0x10064a40
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x54
push ebx
mov ebx, dword [0x1017bfd8]
push esi
push edi
mov edi, ecx
mov byte [ebp - 1], dl
mov eax, dword [ebx + 0x19e4]
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x10], ebx
mov byte [eax + 0x7c], 1
mov eax, dword [ebx + 0x19e4]
mov dword [ebp - 8], eax
cmp byte [eax + 0x7f], 0
jne 0x10065115
push ecx
push edi
mov ecx, eax
call fcn.100448e0
mov esi, dword [0x1017bfd8]
mov ecx, edi
mov dword [ebp - 0xc], eax
cmp edi, 0xffffffff
jae 0x10064aa6
mov dl, byte [ecx]
test dl, dl
je 0x10064aa6
cmp dl, 0x23
jne 0x10064aa0
cmp byte [ecx + 1], dl
je 0x10064aa6
inc ecx
cmp ecx, 0xffffffff
jb 0x10064a90
movss xmm1, dword [esi + 0x1900]
cmp edi, ecx
jne 0x10064ab7
xorps xmm7, xmm7
jmp 0x10064af1
push ecx
push ecx
push edi
push ecx
mov ecx, dword [esi + 0x18fc]
lea eax, [ebp - 0x40]
mov dword [esp], 0xbf800000
movaps xmm2, xmm1
push eax
call fcn.1005fe90
movss xmm0, dword [ebp - 0x40]
addss xmm0, dword [0x10145038]
movss xmm1, dword [ebp - 0x3c]
cvttss2si eax, xmm0
movd xmm7, eax
cvtdq2ps xmm7, xmm7
movss xmm2, dword [esi + 0x153c]
xorps xmm0, xmm0
comiss xmm7, xmm0
mov eax, dword [ebp - 8]
movss xmm5, dword [ebx + 0x153c]
addss xmm2, xmm2
movss xmm3, dword [eax + 0xc8]
movss xmm6, dword [eax + 0xcc]
movaps xmm4, xmm3
movss dword [ebp - 0x24], xmm7
movss dword [ebp - 0x30], xmm3
addss xmm2, dword [esi + 0x1900]
movss dword [ebp - 0x2c], xmm6
addss xmm4, xmm2
movss dword [ebp - 0x14], xmm2
movss dword [ebp - 0x28], xmm4
movaps xmm4, xmm6
addss xmm4, xmm2
movss dword [ebp - 0x34], xmm4
movaps xmm4, xmm5
addss xmm4, xmm5
addss xmm4, xmm1
jbe 0x10064b6c
movaps xmm1, xmm7
addss xmm1, dword [ebx + 0x1550]
jmp 0x10064b6f
xorps xmm1, xmm1
addss xmm1, xmm2
movss dword [ebp - 0x50], xmm3
movaps xmm2, xmm6
movss dword [ebp - 0x4c], xmm6
addss xmm2, xmm4
lea ecx, [ebp - 0x40]
movaps xmm0, xmm1
movss dword [ebp - 0x40], xmm1
addss xmm0, xmm3
movaps xmm1, xmm5
movss dword [ebp - 0x44], xmm2
subss xmm2, xmm6
movss dword [ebp - 0x48], xmm0
movss dword [ebp - 0x3c], xmm2
call fcn.10044ce0
mov ebx, dword [ebp - 0xc]
lea ecx, [ebp - 0x50]
push 0
mov edx, ebx
call fcn.10044e10
add esp, 4
test al, al
je 0x10065115
movss xmm0, dword [ebp - 0x30]
lea eax, [ebp - 2]
addss xmm0, dword [ebp - 0x28]
movss xmm1, dword [0x10144fec]
lea ecx, [ebp - 0x50]
push 0
push eax
lea eax, [ebp - 3]
mov edx, ebx
mulss xmm0, xmm1
push eax
cvttss2si esi, xmm0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
addss xmm0, xmm1
movss dword [ebp - 0x40], xmm0
movss xmm0, dword [ebp - 0x2c]
addss xmm0, dword [ebp - 0x34]
mulss xmm0, xmm1
cvttss2si edi, xmm0
movd xmm0, edi
cvtdq2ps xmm0, xmm0
addss xmm0, xmm1
movss dword [ebp - 0x3c], xmm0
movss xmm0, dword [ebp - 0x14]
subss xmm0, dword [0x10145040]
mulss xmm0, xmm1
movss dword [ebp - 0xc], xmm0
call fcn.10062930
add esp, 0xc
mov byte [ebp - 4], al
test al, al
je 0x10064c80
mov eax, dword [0x1017bfd8]
mov ecx, dword [eax + 0x1a04]
cmp ecx, ebx
je 0x10064c6c
test ecx, ecx
je 0x10064c6c
cmp byte [eax + 0x1cc0], 0
jne 0x10064c6c
push 0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
mov byte [eax + 0x1a17], 1
mov eax, dword [eax + 0x19e4]
or dword [eax + 0x110], 4
push 1
mov edx, ebx
lea ecx, [ebp - 0x50]
call fcn.10043cf0
mov edx, dword [ebp - 8]
add esp, 4
cmp byte [ebp - 2], 0
mov al, byte [ebp - 3]
mov ebx, dword [edx + 0x274]
je 0x10064cac
test al, al
je 0x10064cac
mov ecx, 0xb
jmp 0x10064cb6
xor ecx, ecx
test al, al
setne cl
add ecx, 9
movss xmm1, dword [0x10145040]
call fcn.100429f0
mov dword [ebp - 0x34], eax
test eax, 0xff000000
je 0x10064d01
movss xmm2, dword [ebp - 0xc]
lea eax, [ebp - 0x40]
push 0xf
push ecx
mov dword [esp], 0x40bc7edd
mov ecx, ebx
push eax
call fcn.1005c4b0
push dword [ebp - 0x34]
mov ecx, ebx
push dword [ebx + 0x54]
push dword [ebx + 0x5c]
call fcn.1005bfd0
mov edx, dword [ebp - 8]
mov dword [ebx + 0x54], 0
cmp byte [ebp - 1], 0
movss xmm5, dword [0x10145264]
movss xmm4, dword [0x10145040]
je 0x10064e39
movss xmm0, dword [ebp - 0x14]
mulss xmm0, dword [0x10144f84]
mov edx, dword [edx + 0x274]
mov dword [ebp - 0x34], edx
cvttss2si eax, xmm0
xorps xmm0, xmm0
movd xmm6, eax
mov eax, dword [0x1017bfd8]
cvtdq2ps xmm6, xmm6
movups xmm1, xmmword [eax + 0x16ec]
maxss xmm6, xmm4
comiss xmm0, xmm1
movaps xmm2, xmm1
shufps xmm2, xmm1, 0xff
mulss xmm2, dword [eax + 0x1500]
movups xmmword [ebp - 0x20], xmm1
jbe 0x10064d6c
xorps xmm1, xmm1
jmp 0x10064d70
minss xmm1, xmm4
movss xmm3, dword [0x10144fec]
mulss xmm1, xmm5
addss xmm1, xmm3
cvttss2si ecx, xmm1
movss xmm1, dword [ebp - 0x1c]
comiss xmm0, xmm1
jbe 0x10064d93
xorps xmm1, xmm1
jmp 0x10064d97
minss xmm1, xmm4
mulss xmm1, xmm5
addss xmm1, xmm3
cvttss2si eax, xmm1
movss xmm1, dword [ebp - 0x18]
shl eax, 8
or ecx, eax
comiss xmm0, xmm1
jbe 0x10064db7
xorps xmm1, xmm1
jmp 0x10064dbb
minss xmm1, xmm4
mulss xmm1, xmm5
addss xmm1, xmm3
cvttss2si eax, xmm1
shl eax, 0x10
or ecx, eax
comiss xmm0, xmm2
jbe 0x10064dd6
xorps xmm2, xmm2
jmp 0x10064dda
minss xmm2, xmm4
mulss xmm2, xmm5
addss xmm2, xmm3
cvttss2si ebx, xmm2
shl ebx, 0x18
or ebx, ecx
test ebx, 0xff000000
je 0x10064e44
movss xmm2, dword [ebp - 0xc]
lea eax, [ebp - 0x40]
push 0xf
push ecx
subss xmm2, xmm6
mov dword [esp], 0x40bc7edd
push eax
mov ecx, edx
call fcn.1005c4b0
push ebx
mov ebx, dword [ebp - 0x34]
mov ecx, ebx
push dword [ebx + 0x54]
push dword [ebx + 0x5c]
call fcn.1005bfd0
movss xmm4, dword [0x10145040]
movss xmm5, dword [0x10145264]
mov dword [ebx + 0x54], 0
movss xmm3, dword [0x10144fec]
xorps xmm0, xmm0
mov edx, dword [ebp - 0x10]
movss xmm1, dword [edx + 0x1544]
comiss xmm1, xmm0
movss dword [ebp - 0x30], xmm1
jbe 0x1006509b
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x274]
mov dword [ebp - 0x34], eax
mov eax, dword [0x1017bfd8]
movups xmm1, xmmword [eax + 0x162c]
comiss xmm0, xmm1
movaps xmm2, xmm1
shufps xmm2, xmm1, 0xff
mulss xmm2, dword [eax + 0x1500]
movups xmmword [ebp - 0x20], xmm1
jbe 0x10064e92
xorps xmm1, xmm1
jmp 0x10064e96
minss xmm1, xmm4
mulss xmm1, xmm5
addss xmm1, xmm3
cvttss2si ecx, xmm1
movss xmm1, dword [ebp - 0x1c]
comiss xmm0, xmm1
jbe 0x10064eb1
xorps xmm1, xmm1
jmp 0x10064eb5
minss xmm1, xmm4
mulss xmm1, xmm5
addss xmm1, xmm3
cvttss2si eax, xmm1
movss xmm1, dword [ebp - 0x18]
shl eax, 8
or ecx, eax
comiss xmm0, xmm1
jbe 0x10064ed5
xorps xmm1, xmm1
jmp 0x10064ed9
minss xmm1, xmm4
mulss xmm1, xmm5
addss xmm1, xmm3
cvttss2si eax, xmm1
shl eax, 0x10
or ecx, eax
comiss xmm0, xmm2
jbe 0x10064ef4
xorps xmm2, xmm2
jmp 0x10064ef8
minss xmm2, xmm4
movd xmm1, esi
cvtdq2ps xmm1, xmm1
mulss xmm2, xmm5
addss xmm1, dword [0x10145074]
addss xmm2, xmm3
movss dword [ebp - 0x18], xmm1
movd xmm1, edi
cvttss2si ebx, xmm2
cvtdq2ps xmm1, xmm1
shl ebx, 0x18
or ebx, ecx
addss xmm1, dword [0x10145074]
movss dword [ebp - 0x14], xmm1
test ebx, 0xff000000
je 0x10064f8f
movss xmm2, dword [ebp - 0xc]
lea eax, [ebp - 0x18]
mov esi, dword [ebp - 0x34]
subss xmm2, xmm3
push 0xf
push ecx
mov dword [esp], 0x40bc7edd
mov ecx, esi
push eax
call fcn.1005c4b0
movss xmm0, dword [ebp - 0x30]
push ecx
movss dword [esp], xmm0
mov ecx, esi
push 1
push ebx
push dword [esi + 0x54]
push dword [esi + 0x5c]
call fcn.1005b4f0
movss xmm3, dword [0x10144fec]
movss xmm5, dword [0x10145264]
mov edx, dword [ebp - 0x10]
mov dword [esi + 0x54], 0
mov eax, dword [ebp - 8]
movss xmm0, dword [edx + 0x1544]
movss xmm4, dword [0x10145040]
movss dword [ebp - 0x34], xmm0
xorps xmm0, xmm0
mov edi, dword [eax + 0x274]
mov eax, dword [0x1017bfd8]
movups xmm2, xmmword [eax + 0x161c]
comiss xmm0, xmm2
movaps xmm1, xmm2
shufps xmm1, xmm2, 0xff
mulss xmm1, dword [eax + 0x1500]
movups xmmword [ebp - 0x20], xmm2
jbe 0x10064fd9
xorps xmm2, xmm2
jmp 0x10064fdd
minss xmm2, xmm4
mulss xmm2, xmm5
addss xmm2, xmm3
cvttss2si ecx, xmm2
movss xmm2, dword [ebp - 0x1c]
comiss xmm0, xmm2
jbe 0x10064ff8
xorps xmm2, xmm2
jmp 0x10064ffc
minss xmm2, xmm4
mulss xmm2, xmm5
addss xmm2, xmm3
cvttss2si eax, xmm2
movss xmm2, dword [ebp - 0x18]
shl eax, 8
or ecx, eax
comiss xmm0, xmm2
jbe 0x1006501c
xorps xmm2, xmm2
jmp 0x10065020
minss xmm2, xmm4
mulss xmm2, xmm5
addss xmm2, xmm3
cvttss2si eax, xmm2
shl eax, 0x10
or ecx, eax
comiss xmm0, xmm1
jbe 0x1006503b
xorps xmm1, xmm1
jmp 0x1006503f
minss xmm1, xmm4
mulss xmm1, xmm5
addss xmm1, xmm3
cvttss2si esi, xmm1
shl esi, 0x18
or esi, ecx
test esi, 0xff000000
je 0x1006509b
movss xmm2, dword [ebp - 0xc]
lea eax, [ebp - 0x40]
push 0xf
push ecx
subss xmm2, xmm3
mov dword [esp], 0x40bc7edd
push eax
mov ecx, edi
call fcn.1005c4b0
movss xmm0, dword [ebp - 0x34]
push ecx
movss dword [esp], xmm0
mov ecx, edi
push 1
push esi
push dword [edi + 0x54]
push dword [edi + 0x5c]
call fcn.1005b4f0
mov edx, dword [ebp - 0x10]
mov dword [edi + 0x54], 0
cmp byte [edx + 0x2cbc], 0
je 0x100650c5
cmp byte [ebp - 1], 0
lea ecx, [ebp - 0x50]
mov eax, 0x1014239c
mov edx, 0x10142398
push 0
cmove edx, eax
call fcn.10052690
mov edx, dword [ebp - 0x10]
add esp, 4
movss xmm1, dword [ebp - 0x24]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x1006510b
movss xmm0, dword [ebp - 0x28]
addss xmm0, dword [edx + 0x1550]
mov ecx, dword [ebp - 0x38]
movss dword [ebp - 0x40], xmm0
movss xmm0, dword [ebp - 0x2c]
addss xmm0, dword [edx + 0x153c]
xor edx, edx
movss dword [ebp - 0x3c], xmm0
push dword [ebp - 0x3c]
push dword [ebp - 0x40]
push 1
call fcn.10042c70
add esp, 0xc
mov al, byte [ebp - 4]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret