Function at 0x180007720
Capabilities:
Create thread

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdi
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xb0
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
movaps xmmword [rax - 0x38], xmm8
movaps xmmword [rax - 0x48], xmm9
mov rax, qword [0x180069040]
xor rax, rsp
mov qword [rbp + 0xf], rax
mov edi, dword [0x180093b88]
movsxd rax, dword [0x180093bf8]
xor edx, edx
cmp eax, 0x7b
ja 0x180007776
lea rdx, str.Keybind
mov rdx, qword [rdx + rax*8]
xorps xmm0, xmm0
movups xmmword [rbp - 0x11], xmm0
movdqa xmm1, xmmword [0x180060fb0]
movdqu xmmword [rbp - 1], xmm1
mov byte [rbp - 0x11], 0
test rdx, rdx
jne 0x1800077a2
mov r8d, 0xa
lea rdx, str.Select_Key
jmp 0x1800077ba
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x1800077b0
lea rcx, [rbp - 0x11]
call fcn.18000b110
cmp edi, 1
jne 0x1800077de
mov r8d, 0xd
lea rdx, str.Press_the_Key
lea rcx, [rbp - 0x11]
call fcn.18000b110
mov rbx, qword [0x180093ae8]
mov dword [rbp - 0x29], 0x15
movups xmm0, xmmword [rbx + 0x39fc]
movups xmmword [rbp - 0x25], xmm0
lea rcx, [rbx + 0x4818]
lea rdx, [rbp - 0x29]
call fcn.1800269f0
movups xmm0, xmmword [0x180093368]
movups xmmword [rbx + 0x39fc], xmm0
movss xmm8, dword [0x180093370]
movss xmm1, dword [0x180060e10]
mulss xmm8, xmm1
movss xmm6, dword [0x18009336c]
mulss xmm6, xmm1
movss xmm9, dword [0x180093368]
mulss xmm9, xmm1
movss xmm7, dword [0x180093374]
mov rbx, qword [0x180093ae8]
mov dword [rbp - 0x29], 0x16
movups xmm0, xmmword [rbx + 0x3a0c]
movups xmmword [rbp - 0x25], xmm0
lea rcx, [rbx + 0x4818]
lea rdx, [rbp - 0x29]
call fcn.1800269f0
shufps xmm9, xmm9, 0xe1
movss xmm9, xmm6
shufps xmm9, xmm9, 0xc6
movss xmm9, xmm8
shufps xmm9, xmm9, 0x27
movss xmm9, xmm7
shufps xmm9, xmm9, 0x39
movups xmmword [rbp - 0x29], xmm9
movups xmmword [rbx + 0x3a0c], xmm9
movss xmm8, dword [0x180093370]
movss xmm0, dword [0x180060dec]
mulss xmm8, xmm0
movss xmm6, dword [0x18009336c]
mulss xmm6, xmm0
movss xmm9, dword [0x180093368]
mulss xmm9, xmm0
movss xmm7, dword [0x180093374]
mov rbx, qword [0x180093ae8]
mov dword [rbp - 0x29], 0x17
movups xmm0, xmmword [rbx + 0x3a1c]
movups xmmword [rbp - 0x25], xmm0
lea rcx, [rbx + 0x4818]
lea rdx, [rbp - 0x29]
call fcn.1800269f0
shufps xmm9, xmm9, 0xe1
movss xmm9, xmm6
shufps xmm9, xmm9, 0xc6
movss xmm9, xmm8
shufps xmm9, xmm9, 0x27
movss xmm9, xmm7
shufps xmm9, xmm9, 0x39
movups xmmword [rbp - 0x29], xmm9
movups xmmword [rbx + 0x3a1c], xmm9
mov dword [rbp - 0x29], 0x42fa0000
mov dword [rbp - 0x25], 0x41c80000
lea rcx, [rbp - 0x11]
cmp qword [rbp + 7], 0xf
cmova rcx, qword [rbp - 0x11]
lea rdx, [rbp - 0x29]
call fcn.18003c5a0
test al, al
je 0x180007985
test edi, edi
jne 0x180007985
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], edi
xor r9d, r9d
lea r8, [0x1800076d0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov r9d, 3
mov r8, qword [0x180093ae8]
mov eax, dword [r8 + 0x4818]
cmp eax, r9d
jge 0x1800079b0
mov r9d, eax
test eax, eax
jle 0x1800079e9
nop word [rax + rax]
cdqe
lea rdx, [rax + rax*4]
mov rcx, qword [r8 + 0x4820]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
movups xmm0, xmmword [rcx + rdx*4 - 0x10]
movups xmmword [r8 + rax*8 + 0x38ac], xmm0
dec dword [r8 + 0x4818]
mov eax, dword [r8 + 0x4818]
dec r9d
test r9d, r9d
jg 0x1800079b0
mov rdx, qword [rbp + 7]
cmp rdx, 0xf
jbe 0x180007a27
inc rdx
mov rcx, qword [rbp - 0x11]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180007a22
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180007a22
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180056024
mov rcx, qword [rbp + 0xf]
xor rcx, rsp
call fcn.180055b80
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop rbp
ret