Function at 0x14004a490
Capabilities:
Contain obfuscated stackstrings
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x318]
sub rsp, 0x3f0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x140075040]
xor rax, rsp
mov qword [rbp + 0x240], rax
movss xmm0, dword [0x14006ac30]
movss dword [rbp + 0x170], xmm0
xor ebx, ebx
mov edi, ebx
mov qword [rsp + 0x40], rbx
mov rcx, qword [0x140079458]
add rcx, 0x488
mov qword [rbp + 0x1a0], rbx
mov r8d, 8
lea rdx, [rbp + 0x1a0]
call fcn.140001270
mov r15d, 6
mov r8d, r15d
mov rsi, qword [rbp + 0x1a0]
mov rdx, rsi
lea rcx, [rsp + 0x50]
call fcn.140045700
movss xmm15, dword [rsp + 0x50]
movaps xmm0, xmm15
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__isnanf]
test eax, eax
jne 0x14004a5b0
movss xmm10, dword [rsp + 0x54]
movss dword [rsp + 0x48], xmm10
movaps xmm0, xmm10
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__isnanf]
test eax, eax
jne 0x14004a5b0
movss xmm12, dword [rsp + 0x58]
movss dword [rsp + 0x60], xmm12
movaps xmm0, xmm12
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__isnanf]
test eax, eax
je 0x14004a5ca
xorps xmm15, xmm15
xorps xmm10, xmm10
movss dword [rsp + 0x48], xmm10
xorps xmm12, xmm12
movss dword [rsp + 0x60], xmm12
xorps xmm9, xmm9
xorps xmm11, xmm11
movsd qword [rbp + 0x30], xmm11
mov rcx, qword [0x140079458]
add rcx, 0x15b4
mov dword [rbp + 0x1bc], ebx
mov r8d, 4
lea rdx, [rbp + 0x1bc]
call fcn.140001270
mov r9d, dword [rbp + 0x1bc]
cmp r9d, 0x64
cmova r9d, ebx
mov dword [rbp + 0x38], r9d
movss xmm0, dword [0x1400785d0]
movss xmm2, dword [0x14006abd8]
mulss xmm0, xmm2
cvttss2si rax, xmm0
mov dword [rbp + 0x50], eax
movss xmm0, dword [0x1400785d4]
mulss xmm0, xmm2
cvttss2si rax, xmm0
mov dword [rbp + 0x54], eax
movss xmm1, dword [0x1400785d8]
mulss xmm1, xmm2
cvttss2si rax, xmm1
mov dword [rbp + 0x58], eax
mov dword [rbp + 0x5c], 0xff
movss xmm0, dword [0x1400785e0]
mulss xmm0, xmm2
cvttss2si rax, xmm0
mov dword [rbp + 0x1c0], eax
movss xmm1, dword [0x1400785e4]
mulss xmm1, xmm2
cvttss2si rax, xmm1
mov dword [rbp + 0x1c4], eax
movss xmm0, dword [0x1400785e8]
mulss xmm0, xmm2
cvttss2si rax, xmm0
mov dword [rbp + 0x1c8], eax
mov dword [rbp + 0x1cc], 0xff
movss xmm0, dword [0x140078610]
mulss xmm0, xmm2
cvttss2si rax, xmm0
mov dword [rbp + 0x1d0], eax
movss xmm1, dword [0x140078614]
mulss xmm1, xmm2
cvttss2si rax, xmm1
mov dword [rbp + 0x1d4], eax
movss xmm0, dword [0x140078618]
mulss xmm0, xmm2
cvttss2si rax, xmm0
mov dword [rbp + 0x1d8], eax
mov dword [rbp + 0x1dc], 0xff
mov r13d, ebx
mov rcx, qword [0x140079598]
mov r8, qword [0x140079590]
sub rcx, r8
movabs rax, 0x6666666666666667
imul rcx
sar rdx, 5
mov rax, rdx
shr rax, 0x3f
mov r14d, 1
movss xmm13, dword [0x14006abb4]
movss xmm14, dword [0x14006aa88]
add rdx, rax
je 0x14004b9eb
mov r9, rbx
movss xmm11, dword [0x14006ab7c]
movss xmm8, dword [0x14006ab80]
nop dword [rax]
lea rax, [r9 + r9*4]
add rax, rax
movups xmm6, xmmword [r8 + rax*8]
movaps xmmword [rbp + 0x100], xmm6
movups xmm0, xmmword [r8 + rax*8 + 0x10]
movaps xmmword [rbp + 0x110], xmm0
movups xmm14, xmmword [r8 + rax*8 + 0x20]
movaps xmmword [rbp + 0x120], xmm14
movups xmm7, xmmword [r8 + rax*8 + 0x30]
movaps xmmword [rbp + 0x130], xmm7
movups xmm0, xmmword [r8 + rax*8 + 0x40]
movaps xmmword [rbp + 0x140], xmm0
mov qword [rbp + 0x1b0], rbx
mov r14, qword [r8 + rax*8 + 8]
lea rcx, [r14 + 0x488]
mov r8d, 8
lea rdx, [rbp + 0x1b0]
call fcn.140001270
mov dword [rbp + 0x188], 0
mov rdi, qword [rbp + 0x1b0]
lea rcx, [rdi + 0x748]
mov r8d, 4
lea rdx, [rbp + 0x188]
call fcn.140001270
mov dword [rbp + 0x1b0], 0
lea rcx, [rdi + 0x750]
mov r8d, 4
lea rdx, [rbp + 0x1b0]
call fcn.140001270
movss xmm0, dword [rbp + 0x1b0]
addss xmm0, dword [0x14006aa58]
comiss xmm0, dword [rbp + 0x188]
setae r12b
movd eax, xmm6
cmp eax, 1
jne 0x14004b4e6
mov rcx, r14
call fcn.140044380
movaps xmm6, xmm0
movss dword [rbp + 0x188], xmm6
mov dword [rbp + 0x1b8], 0
lea rcx, [r14 + 0x17a0]
mov r8d, 4
lea rdx, [rbp + 0x1b8]
call fcn.140001270
ucomiss xmm6, xmm9
jp 0x14004a895
jne 0x14004a895
movss xmm0, dword [0x14006aa64]
comiss xmm0, dword [rbp + 0x1b8]
ja 0x14004b951
xor r8d, r8d
mov rdx, rdi
lea rcx, [rsp + 0x50]
call fcn.140045700
mov r8d, r15d
mov rdx, rdi
lea rcx, [rbp + 0x40]
call fcn.140045700
movss xmm8, dword [rbp + 0x48]
movss xmm6, dword [rbp + 0x44]
movss xmm7, dword [rbp + 0x40]
ucomiss xmm15, xmm9
jp 0x14004a8cc
je 0x14004a920
movaps xmm1, xmm6
subss xmm1, xmm10
movaps xmm2, xmm7
subss xmm2, xmm15
movaps xmm0, xmm8
subss xmm0, xmm12
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm0, xmm0
addss xmm2, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x14004a90a
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x14004a912
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
divss xmm0, xmm13
cvtss2sd xmm0, xmm0
movsd qword [rbp + 0x30], xmm0
movsd xmm0, qword [rsp + 0x50]
movsd qword [rbp + 0x60], xmm0
mov esi, dword [rsp + 0x58]
mov dword [rbp + 0x68], esi
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0xa0]
call fcn.1400458c0
cvtps2pd xmm0, xmm6
addsd xmm0, qword [0x14006aaf8]
cvtpd2ps xmm1, xmm0
movaps xmm0, xmm7
unpcklps xmm0, xmm1
movsd qword [rbp + 0x70], xmm0
movss dword [rbp + 0x78], xmm8
lea rdx, [rbp + 0x70]
lea rcx, [rbp + 0xe0]
call fcn.1400458c0
movaps xmm0, xmm7
unpcklps xmm0, xmm6
movsd qword [rbp + 0x40], xmm0
movsd qword [rbp + 0xf0], xmm0
movss dword [rbp + 0xf8], xmm8
lea rdx, [rbp + 0xf0]
lea rcx, [rbp + 0x90]
call fcn.1400458c0
movss xmm8, dword [rbp + 0xa4]
movaps xmm11, xmm8
movss xmm10, dword [rbp + 0xe4]
subss xmm11, xmm10
movaps xmm9, xmm11
divss xmm9, dword [0x14006ab10]
xorps xmm0, xmm0
movups xmmword [rbp + 0x200], xmm0
movups xmmword [rbp + 0x210], xmm0
movups xmmword [rbp + 0x220], xmm0
lea rcx, [r14 + 0x1690]
mov qword [rbp + 0x160], rbx
mov r8d, 8
lea rdx, [rbp + 0x160]
call fcn.140001270
lea rcx, [0x1400750d0]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
jne 0x14004b9bf
cmp dword [0x14007511c], 0x7fffffff
je 0x14004b9ab
mov rax, qword [0x1400793c8]
mov byte [rax + 2], 3
mov ecx, dword [0x1400793d0]
mov rax, qword [0x1400793c8]
mov qword [rax + 8], rcx
mov rcx, qword [rbp + 0x160]
mov rax, qword [0x1400793c8]
mov qword [rax + 0x10], rcx
lea rcx, [rbp + 0x200]
mov rax, qword [0x1400793c8]
mov qword [rax + 0x18], rcx
mov rax, qword [0x1400793c8]
mov qword [rax + 0x20], 0x30
call fcn.140001330
lea rcx, [0x1400750d0]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
lea rbx, [rbp + 0x1d0]
lea rax, [rbp + 0x1c0]
test r12b, r12b
cmove rbx, rax
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x160], xmm0
movss xmm1, dword [0x1400785a8]
cvtps2pd xmm1, xmm1
movss xmm7, dword [rsp + 0x54]
movss xmm6, dword [rsp + 0x50]
movss xmm12, dword [rbp + 0x94]
movss xmm13, dword [rbp + 0x90]
comisd xmm1, xmmword [rbp + 0x30]
jbe 0x14004ab79
cmp byte [0x140079568], 0
je 0x14004ab79
movaps xmm2, xmm7
subss xmm2, dword [rsp + 0x48]
movaps xmm0, xmm6
subss xmm0, xmm15
movd xmm1, esi
subss xmm1, dword [rsp + 0x60]
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm0
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x14004ab27
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x14004ab2f
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
mulss xmm0, dword [0x14006aa40]
movss xmm1, dword [0x14006ab70]
divss xmm1, xmm0
cvttss2si r8d, xmm1
cvttss2si edx, xmm12
cvttss2si ecx, xmm13
lea r9, [rbp + 0x160]
call fcn.140044240
movups xmm0, xmmword [rbx]
movaps xmmword [rbp - 0x70], xmm0
movss xmm2, dword [0x14006ab14]
lea rdx, [rbp - 0x70]
mov rcx, rdi
call fcn.140045b80
movss xmm0, dword [0x1400785b0]
cvtps2pd xmm0, xmm0
comisd xmm0, xmmword [rbp + 0x30]
jbe 0x14004b934
cmp byte [0x14007950e], 0
je 0x14004acb8
subss xmm6, xmm15
movaps xmm0, xmm6
movss xmm1, dword [0x14006b440]
andps xmm0, xmm1
movss xmm2, dword [0x14006ac1c]
comiss xmm2, xmm0
jbe 0x14004acb8
subss xmm7, dword [rsp + 0x48]
movaps xmm0, xmm7
andps xmm0, xmm1
comiss xmm2, xmm0
jbe 0x14004acb8
mov r8d, dword [0x140079508]
cmp r8d, 0x5a0
jne 0x14004ac08
mov ecx, 0xd9
mov dword [0x140079478], ecx
mov edx, 0xd0
mov dword [0x140079430], edx
mov eax, 0x1d4c
mov dword [0x140079448], eax
jmp 0x14004ac46
cmp r8d, 0x438
jne 0x14004ac34
mov ecx, 0xa3
mov dword [0x140079478], ecx
mov edx, 0x9c
mov dword [0x140079430], edx
mov eax, 0x2710
mov dword [0x140079448], eax
jmp 0x14004ac46
mov ecx, dword [0x140079478]
mov edx, dword [0x140079430]
mov eax, dword [0x140079448]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
divss xmm6, xmm1
mulss xmm6, dword [0x14006aba8]
mov eax, dword [0x140079504]
sub eax, ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm6, xmm0
divss xmm7, xmm1
mulss xmm7, dword [0x14006aba8]
sub r8d, edx
movd xmm0, r8d
cvtdq2ps xmm0, xmm0
addss xmm7, xmm0
cvttss2si ebx, xmm7
cvttss2si edi, xmm6
lea r9, [0x1400782e0]
mov r8d, r15d
mov edx, ebx
mov ecx, edi
call fcn.140044240
lea r9, [0x140078140]
mov r8d, 4
mov edx, ebx
mov ecx, edi
call fcn.140044240
movss xmm7, dword [rbp + 0xa0]
cmp byte [0x14007950c], 0
je 0x14004af5c
mov ecx, dword [0x14007956c]
cmp ecx, 1
ja 0x14004adf4
cmp byte [0x14007954d], 0
je 0x14004adb1
cvttss2si edi, xmm11
cvttss2si esi, xmm9
cvttss2si ebx, xmm10
movaps xmm0, xmm9
mulss xmm0, dword [0x14006aa88]
movaps xmm6, xmm7
subss xmm6, xmm0
movaps xmm0, xmm6
addss xmm0, dword [0x14006aac4]
cvttss2si ecx, xmm0
lea rax, [0x1400782e0]
mov qword [rsp + 0x28], rax
mov r9d, edi
mov r8d, esi
mov edx, ebx
call fcn.140043760
movaps xmm0, xmm6
subss xmm0, dword [0x14006aac4]
cvttss2si ecx, xmm0
lea rax, [0x1400782e0]
mov qword [rsp + 0x28], rax
mov r9d, edi
mov r8d, esi
mov edx, ebx
call fcn.140043760
cvttss2si ebx, xmm6
movaps xmm0, xmm10
addss xmm0, dword [0x14006aac4]
cvttss2si edx, xmm0
lea rax, [0x1400782e0]
mov qword [rsp + 0x28], rax
mov r9d, edi
mov r8d, esi
mov ecx, ebx
call fcn.140043760
movaps xmm0, xmm10
subss xmm0, dword [0x14006aac4]
cvttss2si edx, xmm0
lea rax, [0x1400782e0]
mov qword [rsp + 0x28], rax
mov r9d, edi
mov r8d, esi
mov ecx, ebx
call fcn.140043760
cvttss2si r9d, xmm11
cvttss2si r8d, xmm9
cvttss2si edx, xmm10
movaps xmm1, xmm9
movss xmm6, dword [0x14006aa88]
mulss xmm1, xmm6
movaps xmm0, xmm7
subss xmm0, xmm1
cvttss2si ecx, xmm0
lea rax, [rbp + 0x160]
mov qword [rsp + 0x28], rax
call fcn.140043760
mov ecx, dword [0x14007956c]
jmp 0x14004adfc
movss xmm6, dword [0x14006aa88]
lea eax, [rcx - 2]
cmp eax, 1
ja 0x14004af16
cmp byte [0x14007954d], 0
je 0x14004aed9
cvttss2si edi, xmm11
cvttss2si esi, xmm9
cvttss2si ebx, xmm10
movaps xmm0, xmm9
mulss xmm0, xmm6
movaps xmm6, xmm7
subss xmm6, xmm0
movaps xmm0, xmm6
addss xmm0, dword [0x14006aac4]
cvttss2si ecx, xmm0
lea rax, [0x1400782e0]
mov qword [rsp + 0x28], rax
mov r9d, edi
mov r8d, esi
mov edx, ebx
call fcn.140043880
movaps xmm0, xmm6
subss xmm0, dword [0x14006aac4]
cvttss2si ecx, xmm0
lea rax, [0x1400782e0]
mov qword [rsp + 0x28], rax
mov r9d, edi
mov r8d, esi
mov edx, ebx
call fcn.140043880
cvttss2si ebx, xmm6
movaps xmm0, xmm10
addss xmm0, dword [0x14006aac4]
cvttss2si edx, xmm0
lea rax, [0x1400782e0]
mov qword [rsp + 0x28], rax
mov r9d, edi
mov r8d, esi
mov ecx, ebx
call fcn.140043880
movaps xmm0, xmm10
subss xmm0, dword [0x14006aac4]
cvttss2si edx, xmm0
lea rax, [0x1400782e0]
mov qword [rsp + 0x28], rax
mov r9d, edi
mov r8d, esi
mov ecx, ebx
call fcn.140043880
cvttss2si r9d, xmm11
cvttss2si r8d, xmm9
cvttss2si edx, xmm10
movaps xmm1, xmm9
mulss xmm1, dword [0x14006aa88]
movaps xmm0, xmm7
subss xmm0, xmm1
cvttss2si ecx, xmm0
lea rax, [rbp + 0x160]
mov qword [rsp + 0x28], rax
call fcn.140043880
mov ecx, dword [0x14007956c]
lea eax, [rcx - 1]
test eax, 0xfffffffd
jne 0x14004af5c
cvttss2si r9d, xmm11
cvttss2si r8d, xmm9
cvttss2si edx, xmm10
movss xmm10, dword [0x14006aa88]
mulss xmm9, xmm10
movaps xmm0, xmm7
subss xmm0, xmm9
cvttss2si ecx, xmm0
lea rax, [0x140078550]
mov qword [rsp + 0x20], rax
call fcn.1400431b0
jmp 0x14004af65
movss xmm10, dword [0x14006aa88]
cmp byte [0x140079565], 0
je 0x14004b034
mov eax, dword [0x140079560]
mov ebx, 1
test eax, eax
jne 0x14004afb9
cvttss2si r9d, xmm8
cvttss2si r8d, xmm7
mov eax, dword [0x140079504]
cdq
sub eax, edx
sar eax, 1
mov ecx, eax
mov dword [rsp + 0x28], ebx
lea rax, [rbp + 0x160]
mov qword [rsp + 0x20], rax
mov edx, dword [0x140079508]
call fcn.140043050
mov eax, dword [0x140079560]
cmp eax, 1
jne 0x14004aff2
cvttss2si r9d, xmm8
cvttss2si r8d, xmm7
mov eax, dword [0x140079504]
cdq
sub eax, edx
sar eax, 1
mov ecx, eax
mov dword [rsp + 0x28], ebx
lea rax, [rbp + 0x160]
mov qword [rsp + 0x20], rax
xor edx, edx
call fcn.140043050
mov eax, dword [0x140079560]
cmp eax, 2
jne 0x14004b034
cvttss2si r9d, xmm8
cvttss2si r8d, xmm7
mov eax, dword [0x140079508]
cdq
sub eax, edx
sar eax, 1
mov r10d, eax
mov eax, dword [0x140079504]
cdq
sub eax, edx
sar eax, 1
mov ecx, eax
mov dword [rsp + 0x28], ebx
lea rax, [rbp + 0x160]
mov qword [rsp + 0x20], rax
mov edx, r10d
call fcn.140043050
cmp byte [0x14007950f], 0
je 0x14004b1bc
movd edx, xmm14
test edx, edx
je 0x14004b13c
lea rcx, [rbp + 0x1e0]
call fcn.1400488e0
nop
lea r8, [rbp + 0x1e0]
cmp qword [rbp + 0x1f8], 0xf
cmova r8, qword [rbp + 0x1e0]
mov word [rbp - 0x7f], 0x73
mov byte [rbp - 0x80], 0x25
mov byte [rbp - 0x7d], 0
lea rdx, [rbp - 0x80]
mov rcx, qword [0x140079510]
call fcn.14001c830
movaps xmm0, xmm8
addss xmm0, dword [0x14006aba0]
cvttss2si r8d, xmm0
cvttss2si edx, xmm7
mov rax, qword [0x140079510]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [0x140078340]
movss xmm11, dword [0x14006ab7c]
movaps xmm0, xmm11
movd ecx, xmm0
call fcn.1400439d0
nop
mov rdx, qword [rbp + 0x1f8]
cmp rdx, 0xf
jbe 0x14004b11a
inc rdx
mov rcx, qword [rbp + 0x1e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004b115
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004b9a4
call fcn.1400577bc
mov qword [rbp + 0x1f0], 0
mov qword [rbp + 0x1f8], 0xf
mov byte [rbp + 0x1e0], 0
jmp 0x14004b1c5
mov word [rbp - 0x4d], 0x4c
mov word [rbp - 0x50], 0x554e
mov byte [rbp - 0x4e], 0x4c
mov byte [rbp - 0x4b], 0
mov word [rbp - 0x7b], 0x73
mov byte [rbp - 0x7c], 0x25
mov byte [rbp - 0x79], 0
lea r8, [rbp - 0x50]
lea rdx, [rbp - 0x7c]
mov rcx, qword [0x140079510]
call fcn.14001c830
movaps xmm0, xmm8
addss xmm0, dword [0x14006aba0]
cvttss2si r8d, xmm0
cvttss2si edx, xmm7
mov rax, qword [0x140079510]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [0x140078340]
movss xmm11, dword [0x14006ab7c]
movaps xmm0, xmm11
movd ecx, xmm0
call fcn.1400439d0
jmp 0x14004b1c5
movss xmm11, dword [0x14006ab7c]
cmp byte [0x14007950d], 0
je 0x14004b247
mov dword [rbp], 0x20006d
mov dword [rbp - 8], 0x20532520
mov dword [rbp - 4], 0x662e3025
mov byte [rbp + 4], 0
movsd xmm3, qword [rbp + 0x30]
movq r9, xmm3
lea r8, [rbp + 0x200]
lea rdx, [rbp - 8]
mov rcx, qword [0x140079510]
call fcn.14001c830
movaps xmm0, xmm8
addss xmm0, dword [0x14006ab90]
cvttss2si r8d, xmm0
cvttss2si edx, xmm7
mov rax, qword [0x140079510]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [0x140078340]
movaps xmm0, xmm11
movd ecx, xmm0
call fcn.1400439d0
cmp byte [0x14007954e], 0
je 0x14004b2c9
mov dword [rbp + 0x12], 0x64322e
mov dword [rbp + 8], 0x6d616554
mov dword [rbp + 0xc], 0x3a204449
mov word [rbp + 0x10], 0x2520
mov byte [rbp + 0x16], 0
psrldq xmm14, 4
movd r8d, xmm14
lea rdx, [rbp + 8]
mov rcx, qword [0x140079510]
call fcn.14001c830
movaps xmm0, xmm8
addss xmm0, dword [0x14006ab94]
cvttss2si r8d, xmm0
cvttss2si edx, xmm7
mov rax, qword [0x140079510]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [0x140078340]
movaps xmm0, xmm11
movd ecx, xmm0
call fcn.1400439d0
cmp byte [0x14007954f], 0
je 0x14004b42a
mov rcx, qword [0x140079510]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x14004b2e4
imul ebx, eax, 7
add ebx, 0x1e
mov dword [rbp - 0x10], 0x642520
mov dword [rbp - 0x18], 0x6c616548
mov dword [rbp - 0x14], 0x3a206874
mov byte [rbp - 0xc], 0
cvttss2si r8d, dword [rbp + 0x188]
lea rdx, [rbp - 0x18]
call fcn.14001c830
movaps xmm0, xmm8
movss xmm9, dword [0x14006abac]
addss xmm0, xmm9
cvttss2si r8d, xmm0
cvttss2si edx, xmm7
mov rax, qword [0x140079510]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [0x140078340]
movaps xmm0, xmm11
movd ecx, xmm0
call fcn.1400439d0
movss xmm2, dword [0x14006abb4]
movaps xmm1, xmm2
minss xmm1, dword [rbp + 0x188]
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
divss xmm0, xmm2
cvttss2si r8d, xmm0
movss xmm0, dword [0x14006abb0]
comiss xmm1, xmm0
jb 0x14004b3ab
mov eax, ebx
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
lea rax, [0x1400782c0]
jmp 0x14004b3e8
comiss xmm0, xmm1
movss xmm0, dword [0x14006ab9c]
jbe 0x14004b3d1
comiss xmm1, xmm0
jbe 0x14004b3d1
mov eax, ebx
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
lea rax, [0x140078140]
jmp 0x14004b3e8
comiss xmm0, xmm1
jb 0x14004b42a
mov eax, ebx
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
lea rax, [0x1400782f0]
addss xmm8, dword [0x140079520]
movss xmm1, dword [0x140079524]
cvtdq2ps xmm0, xmm0
addss xmm8, xmm9
mulss xmm1, xmm10
subss xmm7, xmm0
cvttss2si r10d, xmm8
addss xmm7, xmm1
mov qword [rsp + 0x20], rax
mov r9d, 5
mov edx, r10d
cvttss2si ecx, xmm7
call fcn.1400431b0
mov eax, dword [0x140079504]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm13, xmm0
mov eax, dword [0x140079508]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm12, xmm0
mulss xmm12, xmm12
mulss xmm13, xmm13
addss xmm12, xmm13
xorps xmm0, xmm0
ucomiss xmm0, xmm12
ja 0x14004b47a
xorps xmm0, xmm0
sqrtss xmm0, xmm12
jmp 0x14004b483
movaps xmm0, xmm12
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
cmp byte [0x14007958c], 0
je 0x14004b93d
movss xmm1, dword [0x1400785b4]
comiss xmm1, xmm0
jbe 0x14004b93d
movss xmm8, dword [rbp + 0x170]
comiss xmm8, xmm0
jbe 0x14004b93d
movss xmm13, dword [0x14006abb4]
movss xmm8, dword [0x14006ab80]
xor ebx, ebx
test r12b, r12b
je 0x14004b951
movss dword [rbp + 0x170], xmm0
mov rdi, r14
mov qword [rsp + 0x40], r14
jmp 0x14004b956
cmp eax, 2
jne 0x14004b664
cmp byte [0x140079564], 0
je 0x14004b951
xorps xmm6, xmm6
mov qword [rbp + 0x178], 0
mov dword [rbp + 0x180], 0
lea rcx, [r14 + 0x2c0]
mov r8d, 0xc
lea rdx, [rbp + 0x178]
call fcn.140001270
movsd xmm0, qword [rbp + 0x178]
movsd qword [rbp + 0xb0], xmm0
mov ebx, dword [rbp + 0x180]
mov dword [rbp + 0xb8], ebx
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0xc0]
call fcn.1400458c0
ucomiss xmm15, xmm9
jp 0x14004b564
je 0x14004b5bc
movss xmm1, dword [rbp + 0x17c]
subss xmm1, xmm10
movss xmm2, dword [rbp + 0x178]
subss xmm2, xmm15
movd xmm0, ebx
subss xmm0, xmm12
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm0, xmm0
addss xmm2, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x14004b5ac
xorps xmm6, xmm6
sqrtss xmm6, xmm2
jmp 0x14004b5b7
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm6, xmm0
divss xmm6, xmm13
movss xmm1, dword [0x14007813c]
comiss xmm1, xmm6
jbe 0x14004b94f
mov dword [rbp - 0x20], 0x6d66
mov dword [rbp - 0x28], 0x7c207325
mov dword [rbp - 0x24], 0x2e302520
mov byte [rbp - 0x1c], 0
xorps xmm3, xmm3
cvtss2sd xmm3, xmm6
movq r9, xmm3
movq r8, xmm7
lea rdx, [rbp - 0x28]
mov rcx, qword [0x140079510]
call fcn.14001c830
movss xmm0, dword [rbp + 0xc4]
cvttss2si edx, dword [rbp + 0xc0]
psrldq xmm7, 8
movd eax, xmm7
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm1, xmm8
subss xmm0, xmm1
cvttss2si r8d, xmm0
mov rax, qword [0x140079510]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rbp + 0x13c]
movaps xmm0, xmm11
movd ecx, xmm0
call fcn.1400439d0
jmp 0x14004b94f
cmp eax, 3
jne 0x14004b7d6
cmp byte [0x140079566], 0
je 0x14004b951
xorps xmm6, xmm6
mov rbx, qword [0x140079440]
mov qword [rbp + 0x160], 0
lea rcx, [r14 + 0x300]
mov r8d, 8
lea rdx, [rbp + 0x160]
call fcn.140001270
mov rdx, qword [rbp + 0x160]
mov rcx, qword [0x140079438]
call rbx
mov qword [rbp + 0x190], 0
mov dword [rbp + 0x198], 0
lea rcx, [rax + 0x2c0]
mov r8d, 0xc
lea rdx, [rbp + 0x190]
call fcn.140001270
movsd xmm0, qword [rbp + 0x190]
movsd qword [rbp + 0x80], xmm0
mov ebx, dword [rbp + 0x198]
mov dword [rbp + 0x88], ebx
lea rdx, [rbp + 0x80]
lea rcx, [rbp + 0xd0]
call fcn.1400458c0
ucomiss xmm15, xmm9
jp 0x14004b71d
je 0x14004b775
movss xmm2, dword [rbp + 0x194]
subss xmm2, xmm10
movss xmm0, dword [rbp + 0x190]
subss xmm0, xmm15
movd xmm1, ebx
subss xmm1, xmm12
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm0
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x14004b765
xorps xmm6, xmm6
sqrtss xmm6, xmm2
jmp 0x14004b770
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm6, xmm0
divss xmm6, xmm13
movss xmm1, dword [0x1400785ac]
comiss xmm1, xmm6
jbe 0x14004b94f
mov dword [rbp - 0x30], 0x6d66
mov dword [rbp - 0x38], 0x7c207325
mov dword [rbp - 0x34], 0x302e2520
mov byte [rbp - 0x2c], 0
xorps xmm3, xmm3
cvtss2sd xmm3, xmm6
movq r9, xmm3
movq r8, xmm7
lea rdx, [rbp - 0x38]
mov rcx, qword [0x140079510]
call fcn.14001c830
cvttss2si r8d, dword [rbp + 0xd4]
cvttss2si edx, dword [rbp + 0xd0]
jmp 0x14004b635
cmp eax, 4
jne 0x14004b951
cmp byte [0x140079567], 0
je 0x14004b951
mov rbx, qword [0x140079440]
mov qword [rbp + 0x160], 0
lea rcx, [r14 + 0x300]
mov r8d, 8
lea rdx, [rbp + 0x160]
call fcn.140001270
mov rdx, qword [rbp + 0x160]
mov rcx, qword [0x140079438]
call rbx
mov qword [rbp + 0x150], 0
mov dword [rbp + 0x158], 0
lea rcx, [rax + 0x2c0]
mov r8d, 0xc
lea rdx, [rbp + 0x150]
call fcn.140001270
xorps xmm6, xmm6
movsd xmm0, qword [rbp + 0x150]
movsd qword [rbp + 0x20], xmm0
mov ebx, dword [rbp + 0x158]
mov dword [rbp + 0x28], ebx
lea rdx, [rbp + 0x20]
lea rcx, [rsp + 0x70]
call fcn.1400458c0
ucomiss xmm15, xmm9
jp 0x14004b884
je 0x14004b8dc
movss xmm1, dword [rbp + 0x154]
subss xmm1, xmm10
movss xmm2, dword [rbp + 0x150]
subss xmm2, xmm15
movd xmm0, ebx
subss xmm0, xmm12
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm0, xmm0
addss xmm2, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x14004b8cc
xorps xmm6, xmm6
sqrtss xmm6, xmm2
jmp 0x14004b8d7
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm6, xmm0
divss xmm6, xmm13
movss xmm1, dword [0x140078138]
comiss xmm1, xmm6
jbe 0x14004b94f
mov dword [rbp - 0x40], 0xa6d66
mov dword [rbp - 0x48], 0x7c207325
mov dword [rbp - 0x44], 0x302e2520
mov byte [rbp - 0x3c], 0
xorps xmm3, xmm3
cvtss2sd xmm3, xmm6
movq r9, xmm3
movq r8, xmm7
lea rdx, [rbp - 0x48]
mov rcx, qword [0x140079510]
call fcn.14001c830
movss xmm0, dword [rsp + 0x74]
cvttss2si edx, dword [rsp + 0x70]
jmp 0x14004b617
movss xmm11, dword [0x14006ab7c]
movss xmm8, dword [0x14006ab80]
movss xmm13, dword [0x14006abb4]
xor ebx, ebx
mov rdi, qword [rsp + 0x40]
inc r13d
mov r9d, r13d
mov rcx, qword [0x140079598]
mov r8, qword [0x140079590]
sub rcx, r8
movabs rax, 0x6666666666666667
imul rcx
sar rdx, 5
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r9, rdx
jae 0x14004b9cb
xorps xmm9, xmm9
movss xmm10, dword [rsp + 0x48]
movss xmm12, dword [rsp + 0x60]
jmp 0x14004a760
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov dword [0x14007511c], 0x7ffffffe
mov ecx, r15d
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov ecx, 5
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
movss xmm14, dword [0x14006aa88]
movsd xmm11, qword [rbp + 0x30]
mov r9d, dword [rbp + 0x38]
mov rsi, qword [rbp + 0x1a0]
mov r14d, 1
cmp byte [0x14007954c], 0
je 0x14004ba68
mov dword [rbp - 0x64], 0x206425
mov dword [rbp - 0x70], 0x63657053
mov dword [rbp - 0x6c], 0x6f746174
mov dword [rbp - 0x68], 0x203a2072
mov byte [rbp - 0x60], 0
mov r8d, r9d
lea rdx, [rbp - 0x70]
mov rcx, qword [0x140079510]
call fcn.14001c830
mov eax, dword [0x140079508]
cdq
sub eax, edx
sar eax, 1
mov r10d, eax
mov eax, dword [0x140079504]
cdq
sub eax, edx
sar eax, 1
mov ecx, eax
mov rdx, qword [0x140079510]
mov qword [rsp + 0x20], rdx
lea r9, [0x140078180]
lea r8, [0x140078510]
lea edx, [r10 - 0x1f4]
call fcn.1400462b0
test rdi, rdi
je 0x14004c2cc
cmp byte [0x14007958c], 0
je 0x14004c0df
mov ecx, dword [0x14007955c]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x14004c0df
xorps xmm13, xmm13
xorps xmm12, xmm12
mov eax, dword [0x140079588]
test eax, eax
jne 0x14004baae
mov dword [0x1400795b8], r15d
jmp 0x14004baee
cmp eax, 1
jne 0x14004bac2
mov r15d, 5
mov dword [0x1400795b8], r15d
jmp 0x14004baee
cmp eax, 2
jne 0x14004bad3
mov r15d, r14d
mov dword [0x1400795b8], r14d
jmp 0x14004baee
cmp eax, 3
jne 0x14004bae7
mov r15d, 4
mov dword [0x1400795b8], r15d
jmp 0x14004baee
mov r15d, dword [0x1400795b8]
mov qword [rbp + 0x160], rbx
lea rcx, [rdi + 0x488]
mov r8d, 8
lea rdx, [rbp + 0x160]
call fcn.140001270
mov r8d, r15d
mov rdx, qword [rbp + 0x160]
lea rcx, [rsp + 0x50]
call fcn.140045700
movsd xmm6, qword [rsp + 0x50]
movsd qword [rsp + 0x70], xmm6
mov ebx, dword [rsp + 0x58]
mov dword [rsp + 0x78], ebx
movaps xmm0, xmm15
movss xmm7, dword [rsp + 0x48]
unpcklps xmm0, xmm7
movsd qword [rbp + 0x20], xmm0
movss xmm8, dword [rsp + 0x60]
movss dword [rbp + 0x28], xmm8
mov r9, rdi
lea r8, [rsp + 0x70]
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x1a0]
call fcn.140048f00
movsd qword [rsp + 0x70], xmm6
mov dword [rsp + 0x78], ebx
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x178]
call fcn.1400458c0
ucomiss xmm15, xmm13
jp 0x14004bb90
je 0x14004bbea
movss xmm1, dword [rsp + 0x54]
subss xmm1, xmm7
movss xmm2, dword [rsp + 0x50]
subss xmm2, xmm15
movd xmm0, ebx
subss xmm0, xmm8
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm0, xmm0
addss xmm2, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x14004bbd5
xorps xmm12, xmm12
sqrtss xmm12, xmm2
jmp 0x14004bbe1
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm12, xmm0
divss xmm12, dword [0x14006abb4]
mov qword [rbp + 0x160], 0
lea rcx, [rsi + 0xdd8]
mov r8d, 8
lea rdx, [rbp + 0x160]
call fcn.140001270
mov qword [rbp + 0x150], 0
mov dword [rbp + 0x158], 0
mov rbx, qword [rbp + 0x160]
lea rcx, [rbx + 0x7fc]
mov r8d, 0xc
lea rdx, [rbp + 0x150]
call fcn.140001270
mov qword [rbp + 0x190], 0
mov dword [rbp + 0x198], 0
lea rcx, [rbx + 0xa9c]
mov r8d, 0xc
lea rdx, [rbp + 0x190]
call fcn.140001270
cmp byte [0x14007956a], 0
je 0x14004bcaf
movsd xmm0, qword [rbp + 0x1a0]
movsd qword [rsp + 0x70], xmm0
mov eax, dword [rbp + 0x1a8]
mov dword [rsp + 0x78], eax
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0xe0]
call fcn.1400458c0
movsd xmm0, qword [rax]
movsd qword [rbp + 0x178], xmm0
cmp byte [0x14007956b], 0
je 0x14004bebc
movss xmm8, dword [rbp + 0x150]
addss xmm8, dword [rbp + 0x190]
movss xmm6, dword [rbp + 0x154]
addss xmm6, dword [rbp + 0x194]
movss xmm7, dword [rbp + 0x158]
addss xmm7, dword [rbp + 0x198]
movss xmm9, dword [rbp + 0x1a0]
movss xmm10, dword [rbp + 0x1a4]
movss xmm11, dword [rbp + 0x1a8]
mov qword [rbp + 0x150], 0
mov dword [rbp + 0x158], 0
mov rcx, qword [0x140079480]
add rcx, 0x1054
mov r8d, 0xc
lea rdx, [rbp + 0x150]
call fcn.140001270
mov dword [rbp + 0x170], 0
mov rcx, qword [0x140079480]
add rcx, 0x107c
mov r8d, 4
lea rdx, [rbp + 0x170]
call fcn.140001270
xorps xmm0, xmm0
unpcklps xmm0, xmm13
movsd qword [rsp + 0x70], xmm0
movss dword [rsp + 0x78], xmm13
unpcklps xmm8, xmm6
movsd qword [rbp + 0x20], xmm8
movss dword [rbp + 0x28], xmm7
lea r8, [rsp + 0x70]
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x200]
call fcn.140042910
movups xmm2, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
movups xmm8, xmmword [rax + 0x20]
subss xmm9, dword [rbp + 0x150]
subss xmm10, dword [rbp + 0x154]
subss xmm11, dword [rbp + 0x158]
movaps xmm1, xmm2
mulss xmm1, xmm9
movaps xmm0, xmm2
shufps xmm0, xmm2, 0x55
mulss xmm0, xmm10
addss xmm1, xmm0
shufps xmm2, xmm2, 0xaa
mulss xmm2, xmm11
addss xmm1, xmm2
movss xmm15, dword [0x14006aac4]
maxss xmm15, xmm1
mov edi, dword [0x140079504]
mov eax, edi
cdq
sub eax, edx
sar eax, 1
movd xmm6, eax
cvtdq2ps xmm6, xmm6
movss xmm0, dword [rbp + 0x170]
mulss xmm0, dword [0x14006ab40]
divss xmm0, dword [0x14006abe4]
call sub.api_ms_win_crt_math_l1_1_0.dll_tanf
movaps xmm3, xmm6
divss xmm3, xmm0
movaps xmm4, xmm7
mulss xmm4, xmm9
movaps xmm0, xmm7
shufps xmm0, xmm7, 0x55
mulss xmm0, xmm10
addss xmm4, xmm0
shufps xmm7, xmm7, 0xaa
mulss xmm7, xmm11
addss xmm4, xmm7
mulss xmm4, xmm3
divss xmm4, xmm15
addss xmm4, xmm6
mov ecx, dword [0x140079508]
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movaps xmm1, xmm8
mulss xmm1, xmm9
movaps xmm0, xmm8
shufps xmm0, xmm8, 0x55
mulss xmm0, xmm10
addss xmm1, xmm0
shufps xmm8, xmm8, 0xaa
mulss xmm8, xmm11
addss xmm1, xmm8
mulss xmm1, xmm3
divss xmm1, xmm15
subss xmm2, xmm1
unpcklps xmm4, xmm2
movsd qword [rbp + 0x178], xmm4
jmp 0x14004bec8
mov ecx, dword [0x140079508]
mov edi, dword [0x140079504]
movss xmm8, dword [rbp + 0x17c]
movss xmm9, dword [rbp + 0x178]
ucomiss xmm9, xmm13
jp 0x14004beee
jne 0x14004beee
ucomiss xmm8, xmm13
jp 0x14004beee
je 0x14004c2cc
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
mov ebx, eax
mov eax, edi
cdq
sub eax, edx
sar eax, 1
mov edi, eax
movd xmm0, ebx
cvtdq2pd xmm0, xmm0
cvtps2pd xmm1, xmm8
subsd xmm0, xmm1
movsd xmm1, qword [0x14006ab18]
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm7, xmm0
movd xmm0, edi
cvtdq2pd xmm0, xmm0
cvtps2pd xmm2, xmm9
subsd xmm0, xmm2
movsd xmm1, qword [0x14006ab18]
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm7, xmm0
xorps xmm1, xmm1
ucomisd xmm1, xmm7
ja 0x14004bf53
xorps xmm0, xmm0
sqrtsd xmm0, xmm7
jmp 0x14004bf5b
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movss xmm1, dword [0x1400785b4]
cvtps2pd xmm1, xmm1
comisd xmm1, xmm0
jb 0x14004c2cc
movss xmm0, dword [0x1400785b8]
comiss xmm0, xmm12
jbe 0x14004c2cc
cvttss2si r9d, xmm8
cvttss2si r8d, xmm9
mov dword [rsp + 0x28], r14d
lea rax, [rbp + 0x50]
mov qword [rsp + 0x20], rax
mov edx, ebx
mov ecx, edi
call fcn.140043050
cvtps2pd xmm6, xmm8
cvtps2pd xmm7, xmm9
mov rax, qword [0x1400793f0]
movss xmm0, dword [rax + 0x10]
mulss xmm0, xmm14
cvtps2pd xmm5, xmm0
movss xmm1, dword [rax + 0x14]
mulss xmm1, xmm14
cvtps2pd xmm4, xmm1
xorps xmm10, xmm10
xorps xmm3, xmm3
xorps xmm2, xmm2
movss xmm8, dword [0x1400785bc]
movsd xmm9, qword [0x14006b450]
ucomisd xmm7, xmm10
jp 0x14004bff1
je 0x14004c044
comisd xmm7, xmm5
jbe 0x14004c021
movaps xmm3, xmm5
subsd xmm3, xmm7
xorps xmm3, xmm9
cvtps2pd xmm0, xmm8
divsd xmm3, xmm0
movaps xmm1, xmm5
addsd xmm1, xmm3
movaps xmm0, xmm5
addsd xmm0, xmm5
comisd xmm1, xmm0
jbe 0x14004c021
xorps xmm3, xmm3
comisd xmm5, xmm7
jbe 0x14004c044
movaps xmm3, xmm7
subsd xmm3, xmm5
cvtps2pd xmm0, xmm8
divsd xmm3, xmm0
addsd xmm5, xmm3
comisd xmm10, xmm5
jbe 0x14004c044
xorps xmm3, xmm3
ucomisd xmm6, xmm10
jp 0x14004c04d
je 0x14004c0a0
comisd xmm6, xmm4
jbe 0x14004c07d
movaps xmm2, xmm4
subsd xmm2, xmm6
xorps xmm2, xmm9
cvtps2pd xmm0, xmm8
divsd xmm2, xmm0
movaps xmm1, xmm4
addsd xmm1, xmm2
movaps xmm0, xmm4
addsd xmm0, xmm4
comisd xmm1, xmm0
jbe 0x14004c07d
xorps xmm2, xmm2
comisd xmm4, xmm6
jbe 0x14004c0a0
movaps xmm2, xmm6
subsd xmm2, xmm4
cvtps2pd xmm0, xmm8
divsd xmm2, xmm0
addsd xmm4, xmm2
comisd xmm10, xmm4
jbe 0x14004c0a0
xorps xmm2, xmm2
mov rax, qword [0x1400793c8]
mov byte [rax + 2], 0xa
cvttsd2si rcx, xmm3
mov rax, qword [0x1400793c8]
mov dword [rax + 0x40], ecx
cvttsd2si rcx, xmm2
mov rax, qword [0x1400793c8]
mov dword [rax + 0x44], ecx
mov rax, qword [0x1400793c8]
mov word [rax + 0x48], r14w
call fcn.140001330
jmp 0x14004c2cc
mov eax, dword [0x140079588]
test eax, eax
jne 0x14004c0f2
mov dword [0x1400795b8], r15d
jmp 0x14004c132
cmp eax, 1
jne 0x14004c106
mov r15d, 5
mov dword [0x1400795b8], r15d
jmp 0x14004c132
cmp eax, 2
jne 0x14004c117
mov r15d, r14d
mov dword [0x1400795b8], r14d
jmp 0x14004c132
cmp eax, 3
jne 0x14004c12b
mov r15d, 4
mov dword [0x1400795b8], r15d
jmp 0x14004c132
mov r15d, dword [0x1400795b8]
mov qword [rbp + 0x160], rbx
lea rcx, [rdi + 0x488]
mov r8d, 8
lea rdx, [rbp + 0x160]
call fcn.140001270
mov r8d, r15d
mov rdx, qword [rbp + 0x160]
lea rcx, [rsp + 0x50]
call fcn.140045700
movsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x70], xmm0
mov ebx, dword [rsp + 0x58]
mov dword [rsp + 0x78], ebx
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x20]
call fcn.1400458c0
xorps xmm13, xmm13
ucomiss xmm15, xmm13
jp 0x14004c194
je 0x14004c1f3
movss xmm1, dword [rsp + 0x54]
subss xmm1, dword [rsp + 0x48]
movss xmm2, dword [rsp + 0x50]
subss xmm2, xmm15
movd xmm0, ebx
subss xmm0, dword [rsp + 0x60]
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm2, xmm1
mulss xmm0, xmm0
addss xmm2, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x14004c1da
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x14004c1e2
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
divss xmm0, dword [0x14006abb4]
xorps xmm11, xmm11
cvtss2sd xmm11, xmm0
movss xmm8, dword [rbp + 0x24]
movss xmm9, dword [rbp + 0x20]
ucomiss xmm9, xmm13
jp 0x14004c213
jne 0x14004c213
ucomiss xmm8, xmm13
jp 0x14004c213
je 0x14004c2cc
mov eax, dword [0x140079508]
cdq
sub eax, edx
sar eax, 1
mov ebx, eax
mov eax, dword [0x140079504]
cdq
sub eax, edx
sar eax, 1
mov edi, eax
movd xmm0, ebx
cvtdq2pd xmm0, xmm0
cvtps2pd xmm1, xmm8
subsd xmm0, xmm1
movsd xmm1, qword [0x14006ab18]
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm7, xmm0
movd xmm0, edi
cvtdq2pd xmm0, xmm0
cvtps2pd xmm2, xmm9
subsd xmm0, xmm2
movsd xmm1, qword [0x14006ab18]
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm7, xmm0
xorps xmm1, xmm1
ucomisd xmm1, xmm7
ja 0x14004c280
xorps xmm0, xmm0
sqrtsd xmm0, xmm7
jmp 0x14004c288
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movss xmm1, dword [0x1400785b4]
cvtps2pd xmm1, xmm1
comisd xmm1, xmm0
jb 0x14004c2cc
movss xmm0, dword [0x1400785b8]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm11
jbe 0x14004c2cc
cvttss2si r9d, xmm8
cvttss2si r8d, xmm9
mov dword [rsp + 0x28], r14d
lea rax, [rbp + 0x50]
mov qword [rsp + 0x20], rax
mov edx, ebx
mov ecx, edi
call fcn.140043050
mov rcx, qword [rbp + 0x240]
xor rcx, rsp
call fcn.140057760
lea r11, [rsp + 0x3f0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret