Function at 0x180046c00
Capabilities:
Encode data using xor
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], rbx
push rbp
lea rbp, [rax - 0x308]
sub rsp, 0x400
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
movaps xmmword [rax - 0x38], xmm8
mov rax, qword [0x1800dd080]
xor rax, rsp
mov qword [rbp + 0x260], rax
mov rax, qword [0x1800de880]
cmp byte [rax + 0x14c], 0
je 0x180046ef2
cmp byte [0x1800cef99], 0
movups xmm0, xmmword [0x1800cef80]
movzx eax, word [0x1800cef98]
mov word [rbp + 0x58], ax
movups xmmword [rbp + 0x40], xmm0
movsd xmm0, qword [0x1800cef90]
movsd qword [rbp + 0x50], xmm0
je 0x180046e24
xor r8d, r8d
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x180046ddd
movdqa xmm0, xmmword [0x1800cfe10]
lea rcx, [rbp + 0x44]
movdqa xmm5, xmmword [0x1800cfd60]
mov eax, reloc.WLDAP32.dll_Ordinal_26
movdqa xmm4, xmmword [0x1800d0010]
movdqa xmm7, xmmword [0x1800cfe00]
movdqa xmmword [rbp - 0x70], xmm0
mov edx, dword [rbp - 0x70]
movd xmm6, eax
mov eax, Ordinal_33
movd xmm8, eax
nop word [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 8]
paddd xmm2, xmm5
movd xmm3, eax
movdqa xmm1, xmm2
pshufd xmm3, xmm3, 0
punpckldq xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
paddd xmm3, xmm5
pmuldq xmm0, xmm4
add r8d, 8
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x1800cfdc0]
packuswb xmm2, xmm2
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 0xc]
xorps xmm2, xmm0
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movd dword [rcx - 0xc], xmm2
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, edx
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800cfdc0]
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rcx - 8]
xorps xmm2, xmm0
movd dword [rcx - 8], xmm2
cmp r8d, 0x18
jl 0x180046cd0
cmp r8d, 0x1a
jge 0x180046e24
movsxd rax, r8d
lea r9, [rbp + 0x40]
add r9, rax
nop word [rax + rax]
mov eax, 0x8b6e9c61
lea r9, [r9 + 1]
imul r8d
add edx, r8d
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x7c
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x38
xor byte [r9 - 1], al
cmp r8d, 0x1a
jl 0x180046df0
xor r9d, r9d
lea r8, [rbp + 0x40]
xor edx, edx
call fcn.180057bb0
test rax, rax
je 0x180046ec8
xor edx, edx
mov qword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
lea ecx, [rdx + 2]
call qword [sym.imp.USER32.dll_mouse_event]
mov byte [0x1800de1b0], 1
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x180046e7a
imul rax, rax, 0x64
jmp 0x180046e98
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
movabs rcx, 0x7ffffffffff0bdbf
cmp rax, rcx
jge 0x180046eaf
add rax, 0xf4240
jmp 0x180046eb9
movabs rax, 0x7fffffffffffffff
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x50], rax
call fcn.180047b40
cmp byte [0x1800de1b0], 0
je 0x180046ef2
xor edx, edx
mov qword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
lea ecx, [rdx + 4]
call qword [sym.imp.USER32.dll_mouse_event]
mov byte [0x1800de1b0], 0
mov rax, qword [0x1800de880]
cmp byte [rax + 0x134], 0
je 0x180047b0c
mov rax, qword [0x1800de960]
mov qword [rsp + 0x418], rdi
movaps xmmword [rsp + 0x3c0], xmm9
movaps xmmword [rsp + 0x3b0], xmm10
mov rcx, qword [rax + 0x10]
movaps xmmword [rsp + 0x3a0], xmm11
movaps xmmword [rsp + 0x390], xmm12
movaps xmmword [rsp + 0x370], xmm14
mov rax, qword [rcx]
mov qword [rsp + 0x420], r14
test rax, rax
jne 0x180046f5b
xor r14d, r14d
jmp 0x180046f5f
mov r14, qword [rax + 8]
mov qword [rsp + 0x410], rsi
call fcn.180046890
movss xmm14, dword [0x1800cfb28]
mov rdi, rax
mov rax, qword [0x1800de880]
xorps xmm12, xmm12
movss xmm11, dword [0x1800cfae0]
xorps xmm8, xmm8
xorps xmm9, xmm9
xorps xmm10, xmm10
cmp byte [rax + 0x13d], 0
je 0x180047084
mov rcx, qword [0x1800ddd40]
lea r8, str.Foreground
mov rdx, qword [rcx + 0x4890]
mov rcx, qword [rdx]
mov edx, 1
call fcn.180009b40
movaps xmm0, xmmword [0x1800cfe60]
lea rcx, [rbp - 0x70]
movups xmmword [rbp - 0x70], xmm0
mov rbx, rax
call fcn.1800067c0
mov rcx, qword [0x1800de938]
mov esi, eax
mov rax, qword [0x1800de880]
movss xmm0, dword [rcx]
movss xmm1, dword [rcx + 4]
movd xmm2, dword [rax + 0x164]
mulss xmm0, xmm11
mulss xmm1, xmm11
movss dword [rsp + 0x50], xmm0
cvtdq2ps xmm2, xmm2
movss dword [rsp + 0x54], xmm1
test esi, 0xff000000
je 0x18004708b
comiss xmm11, xmm2
ja 0x18004708b
movss xmm0, dword [0x1800cfba4]
subss xmm2, xmm11
mov dword [rsp + 0x28], 0x63
lea rdx, [rsp + 0x50]
xorps xmm3, xmm3
movss dword [rsp + 0x20], xmm0
mov rcx, rbx
call fcn.180027cf0
mov r8d, dword [rbx + 0x78]
mov r9d, esi
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
movss dword [rsp + 0x28], xmm14
mov dword [rsp + 0x20], 1
call fcn.180026270
mov dword [rbx + 0x78], 0
mov rax, qword [0x1800de880]
mov rcx, qword [0x1800de938]
test rdi, rdi
je 0x180047ac7
cmp byte [rax + 0x135], 0
movaps xmmword [rsp + 0x380], xmm13
movsd xmm13, qword [0x1800cfb60]
jne 0x1800473ba
lea rcx, str.FiveM_b2802_GTAProcess.exe
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
jne 0x180047260
lea rcx, str.FiveM_b2802_GameProcess.exe
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
jne 0x180047260
movups xmm0, xmmword [rdi + 0x60]
mov eax, dword [rdi + 0x438]
lea r8, [rbp - 0x40]
movups xmm1, xmmword [rdi + 0x70]
lea rdx, [rbp - 0x60]
mov dword [rbp - 0x58], eax
movups xmmword [rbp - 0x40], xmm0
lea rcx, [rbp - 0x80]
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rbp - 0x30], xmm1
movups xmm1, xmmword [rdi + 0x90]
movups xmmword [rbp - 0x20], xmm0
movsd xmm0, qword [rdi + 0x430]
movsd qword [rbp - 0x60], xmm0
movups xmmword [rbp - 0x10], xmm1
call qword [sym.imp.d3dx9_43.dll_D3DXVec3Transform]
mov rcx, qword [0x1800de880]
movss xmm8, dword [rbp - 0x80]
movss xmm9, dword [rbp - 0x7c]
movss xmm10, dword [rbp - 0x78]
mov ecx, dword [rcx + 0x160]
sub ecx, 1
je 0x180047223
sub ecx, 1
je 0x1800471e6
sub ecx, 1
je 0x1800471a9
cmp ecx, 1
jne 0x180047834
movups xmm0, xmmword [rdi + 0x60]
mov eax, dword [rdi + 0x498]
lea r8, [rbp]
movups xmm1, xmmword [rdi + 0x70]
movups xmmword [rbp], xmm0
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rbp + 0x10], xmm1
movups xmm1, xmmword [rdi + 0x90]
movups xmmword [rbp + 0x20], xmm0
movsd xmm0, qword [rdi + 0x490]
movups xmmword [rbp + 0x30], xmm1
jmp 0x180047386
movups xmm0, xmmword [rdi + 0x60]
mov eax, dword [rdi + 0x488]
lea r8, [rbp]
movups xmm1, xmmword [rdi + 0x70]
movups xmmword [rbp], xmm0
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rbp + 0x10], xmm1
movups xmm1, xmmword [rdi + 0x90]
movups xmmword [rbp + 0x20], xmm0
movsd xmm0, qword [rdi + 0x480]
movups xmmword [rbp + 0x30], xmm1
jmp 0x180047386
movups xmm0, xmmword [rdi + 0x60]
mov eax, dword [rdi + 0x4b8]
lea r8, [rbp]
movups xmm1, xmmword [rdi + 0x70]
movups xmmword [rbp], xmm0
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rbp + 0x10], xmm1
movups xmm1, xmmword [rdi + 0x90]
movups xmmword [rbp + 0x20], xmm0
movsd xmm0, qword [rdi + 0x4b0]
movups xmmword [rbp + 0x30], xmm1
jmp 0x180047386
movups xmm0, xmmword [rdi + 0x60]
mov eax, dword [rdi + 0x4a8]
lea r8, [rbp]
movups xmm1, xmmword [rdi + 0x70]
movups xmmword [rbp], xmm0
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rbp + 0x10], xmm1
movups xmm1, xmmword [rdi + 0x90]
movups xmmword [rbp + 0x20], xmm0
movsd xmm0, qword [rdi + 0x4a0]
movups xmmword [rbp + 0x30], xmm1
jmp 0x180047386
movups xmm0, xmmword [rdi + 0x60]
mov eax, dword [rdi + 0x488]
lea r8, [rbp]
movups xmm1, xmmword [rdi + 0x70]
lea rdx, [rbp - 0x60]
mov dword [rbp - 0x58], eax
movups xmmword [rbp], xmm0
lea rcx, [rbp - 0x80]
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rbp + 0x10], xmm1
movups xmm1, xmmword [rdi + 0x90]
movups xmmword [rbp + 0x20], xmm0
movsd xmm0, qword [rdi + 0x480]
movsd qword [rbp - 0x60], xmm0
movups xmmword [rbp + 0x30], xmm1
call qword [sym.imp.d3dx9_43.dll_D3DXVec3Transform]
mov rcx, qword [0x1800de880]
movss xmm8, dword [rbp - 0x80]
movss xmm9, dword [rbp - 0x7c]
movss xmm10, dword [rbp - 0x78]
mov ecx, dword [rcx + 0x160]
sub ecx, 1
je 0x18004734e
sub ecx, 1
je 0x18004732b
sub ecx, 1
je 0x180047308
cmp ecx, 1
jne 0x180047834
movups xmm0, xmmword [rdi + 0x60]
mov eax, dword [rdi + 0x468]
movups xmmword [rbp - 0x40], xmm0
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rbp - 0x20], xmm0
movsd xmm0, qword [rdi + 0x460]
jmp 0x18004736f
movups xmm0, xmmword [rdi + 0x60]
mov eax, dword [rdi + 0x478]
movups xmmword [rbp - 0x40], xmm0
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rbp - 0x20], xmm0
movsd xmm0, qword [rdi + 0x470]
jmp 0x18004736f
movups xmm0, xmmword [rdi + 0x60]
mov eax, dword [rdi + 0x498]
movups xmmword [rbp - 0x40], xmm0
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rbp - 0x20], xmm0
movsd xmm0, qword [rdi + 0x490]
jmp 0x18004736f
movups xmm0, xmmword [rdi + 0x60]
mov eax, dword [rdi + 0x618]
movups xmmword [rbp - 0x40], xmm0
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rbp - 0x20], xmm0
movsd xmm0, qword [rdi + 0x610]
movups xmm1, xmmword [rdi + 0x70]
lea r8, [rbp - 0x40]
movups xmmword [rbp - 0x30], xmm1
movups xmm1, xmmword [rdi + 0x90]
movups xmmword [rbp - 0x10], xmm1
lea rdx, [rsp + 0x68]
movsd qword [rsp + 0x68], xmm0
lea rcx, [rsp + 0x58]
mov dword [rsp + 0x70], eax
call qword [sym.imp.d3dx9_43.dll_D3DXVec3Transform]
movss xmm8, dword [rsp + 0x58]
movss xmm9, dword [rsp + 0x5c]
movss xmm10, dword [rsp + 0x60]
jmp 0x180047834
movss xmm7, dword [rcx]
lea rdx, [rsp + 0x78]
movss xmm6, dword [rcx + 4]
xor r9d, r9d
mov r8, rdi
mulss xmm7, xmm11
mulss xmm6, xmm11
call fcn.180041980
mov r9d, 7
lea rdx, [rbp - 0x50]
mov r8, rdi
call fcn.180041980
mov r9d, 8
lea rdx, [rbp + 0x100]
mov r8, rdi
call fcn.180041980
mov r9d, 1
lea rdx, [rbp + 0x108]
mov r8, rdi
call fcn.180041980
mov r9d, 2
lea rdx, [rbp + 0x110]
mov r8, rdi
call fcn.180041980
mov r9d, 6
lea rdx, [rsp + 0x68]
mov r8, rdi
call fcn.180041980
mov r9d, 5
lea rdx, [rbp - 0x60]
mov r8, rdi
call fcn.180041980
movss xmm0, dword [rsp + 0x7c]
cvtps2pd xmm1, xmm6
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
movaps xmm1, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm6, xmm0
movss xmm0, dword [rsp + 0x78]
cvtps2pd xmm1, xmm7
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
movaps xmm1, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm6, xmm0
xorps xmm1, xmm1
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm6
ucomiss xmm1, xmm0
ja 0x1800474a4
xorps xmm6, xmm6
sqrtss xmm6, xmm0
jmp 0x1800474ac
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm6, xmm0
movss xmm7, dword [0x1800cfbcc]
comiss xmm7, xmm6
jbe 0x180047834
movups xmm0, xmmword [rdi + 0x60]
mov eax, dword [rdi + 0x438]
lea r8, [rbp]
movups xmm1, xmmword [rdi + 0x70]
lea rdx, [rbp + 0x60]
mov dword [rbp + 0x68], eax
movups xmmword [rbp], xmm0
lea rcx, [rbp + 0xb0]
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rbp + 0x10], xmm1
movups xmm1, xmmword [rdi + 0x90]
movups xmmword [rbp + 0x20], xmm0
movsd xmm0, qword [rdi + 0x430]
movsd qword [rbp + 0x60], xmm0
movups xmmword [rbp + 0x30], xmm1
call qword [sym.imp.d3dx9_43.dll_D3DXVec3Transform]
comiss xmm7, xmm6
movss xmm8, dword [rbp + 0xb0]
movss xmm9, dword [rbp + 0xb4]
movss xmm10, dword [rbp + 0xb8]
jbe 0x180047834
movups xmm0, xmmword [rdi + 0x60]
mov eax, dword [rdi + 0x4a8]
lea r8, [rbp - 0x40]
movups xmm1, xmmword [rdi + 0x70]
lea rdx, [rbp + 0x70]
mov dword [rbp + 0x78], eax
movups xmmword [rbp - 0x40], xmm0
lea rcx, [rbp + 0xc0]
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rbp - 0x30], xmm1
movups xmm1, xmmword [rdi + 0x90]
movups xmmword [rbp - 0x20], xmm0
movsd xmm0, qword [rdi + 0x4a0]
movsd qword [rbp + 0x70], xmm0
movups xmmword [rbp - 0x10], xmm1
call qword [sym.imp.d3dx9_43.dll_D3DXVec3Transform]
comiss xmm7, xmm6
movss xmm8, dword [rbp + 0xc0]
movss xmm9, dword [rbp + 0xc4]
movss xmm10, dword [rbp + 0xc8]
jbe 0x180047834
movups xmm0, xmmword [rdi + 0x60]
mov eax, dword [rdi + 0x4b8]
lea r8, [rbp + 0x120]
movups xmm1, xmmword [rdi + 0x70]
lea rdx, [rbp + 0x80]
mov dword [rbp + 0x88], eax
movups xmmword [rbp + 0x120], xmm0
lea rcx, [rbp + 0xd0]
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rbp + 0x130], xmm1
movups xmm1, xmmword [rdi + 0x90]
movups xmmword [rbp + 0x140], xmm0
movsd xmm0, qword [rdi + 0x4b0]
movsd qword [rbp + 0x80], xmm0
movups xmmword [rbp + 0x150], xmm1
call qword [sym.imp.d3dx9_43.dll_D3DXVec3Transform]
comiss xmm7, xmm6
movss xmm8, dword [rbp + 0xd0]
movss xmm9, dword [rbp + 0xd4]
movss xmm10, dword [rbp + 0xd8]
jbe 0x180047834
movups xmm0, xmmword [rdi + 0x60]
mov eax, dword [rdi + 0x448]
lea r8, [rbp + 0x160]
movups xmm1, xmmword [rdi + 0x70]
lea rdx, [rbp + 0x90]
mov dword [rbp + 0x98], eax
movups xmmword [rbp + 0x160], xmm0
lea rcx, [rbp + 0xe0]
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rbp + 0x170], xmm1
movups xmm1, xmmword [rdi + 0x90]
movups xmmword [rbp + 0x180], xmm0
movsd xmm0, qword [rdi + 0x440]
movsd qword [rbp + 0x90], xmm0
movups xmmword [rbp + 0x190], xmm1
call qword [sym.imp.d3dx9_43.dll_D3DXVec3Transform]
comiss xmm7, xmm6
movss xmm8, dword [rbp + 0xe0]
movss xmm9, dword [rbp + 0xe4]
movss xmm10, dword [rbp + 0xe8]
jbe 0x180047834
movups xmm0, xmmword [rdi + 0x60]
mov eax, dword [rdi + 0x458]
lea r8, [rbp + 0x1a0]
movups xmm1, xmmword [rdi + 0x70]
lea rdx, [rbp + 0xa0]
mov dword [rbp + 0xa8], eax
movups xmmword [rbp + 0x1a0], xmm0
lea rcx, [rbp + 0xf0]
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rbp + 0x1b0], xmm1
movups xmm1, xmmword [rdi + 0x90]
movups xmmword [rbp + 0x1c0], xmm0
movsd xmm0, qword [rdi + 0x450]
movsd qword [rbp + 0xa0], xmm0
movups xmmword [rbp + 0x1d0], xmm1
call qword [sym.imp.d3dx9_43.dll_D3DXVec3Transform]
comiss xmm7, xmm6
movss xmm8, dword [rbp + 0xf0]
movss xmm9, dword [rbp + 0xf4]
movss xmm10, dword [rbp + 0xf8]
jbe 0x180047834
movups xmm0, xmmword [rdi + 0x60]
mov eax, dword [rdi + 0x498]
lea r8, [rbp + 0x1e0]
movups xmm1, xmmword [rdi + 0x70]
lea rdx, [rsp + 0x58]
mov dword [rsp + 0x60], eax
movups xmmword [rbp + 0x1e0], xmm0
lea rcx, [rbp + 0x40]
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rbp + 0x1f0], xmm1
movups xmm1, xmmword [rdi + 0x90]
movups xmmword [rbp + 0x200], xmm0
movsd xmm0, qword [rdi + 0x490]
movsd qword [rsp + 0x58], xmm0
movups xmmword [rbp + 0x210], xmm1
call qword [sym.imp.d3dx9_43.dll_D3DXVec3Transform]
comiss xmm7, xmm6
movss xmm8, dword [rbp + 0x40]
movss xmm9, dword [rbp + 0x44]
movss xmm10, dword [rbp + 0x48]
jbe 0x180047834
movups xmm0, xmmword [rdi + 0x60]
mov eax, dword [rdi + 0x488]
lea r8, [rbp + 0x220]
movups xmm1, xmmword [rdi + 0x70]
lea rdx, [rbp - 0x80]
mov dword [rbp - 0x78], eax
movups xmmword [rbp + 0x220], xmm0
lea rcx, [rbp - 0x70]
movups xmm0, xmmword [rdi + 0x80]
movups xmmword [rbp + 0x230], xmm1
movups xmm1, xmmword [rdi + 0x90]
movups xmmword [rbp + 0x240], xmm0
movsd xmm0, qword [rdi + 0x480]
movsd qword [rbp - 0x80], xmm0
movups xmmword [rbp + 0x250], xmm1
call qword [sym.imp.d3dx9_43.dll_D3DXVec3Transform]
movss xmm8, dword [rbp - 0x70]
movss xmm9, dword [rbp - 0x6c]
movss xmm10, dword [rbp - 0x68]
mov rax, qword [0x1800de880]
movd esi, xmm10
movaps xmm10, xmm8
unpcklps xmm10, xmm9
cmp byte [rax + 0x144], 0
je 0x180047961
mov rax, qword [0x1800de960]
lea r8, [rsp + 0x54]
mov rbx, qword [0x1800ddd40]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x40]
movsd qword [rsp + 0x40], xmm10
mov dword [rsp + 0x48], esi
mov qword [rsp + 0x50], 0
call qword [rax + gethostname]
movss xmm7, dword [rsp + 0x50]
mulss xmm7, dword [rbx + 0x10]
movss xmm6, dword [rsp + 0x54]
movaps xmm0, xmmword [0x1800cfe50]
mulss xmm6, dword [rbx + 0x14]
movaps xmmword [rbp - 0x70], xmm0
movss xmm0, dword [0x1800cfab4]
comiss xmm0, xmm7
movss dword [rsp + 0x50], xmm7
movss dword [rsp + 0x54], xmm6
ja 0x180047961
movsd xmm0, qword [0x1800cfb40]
cvtps2pd xmm1, xmm6
comisd xmm0, xmm1
ja 0x180047961
mov rax, qword [0x1800ddd40]
comiss xmm7, dword [rax + 0x10]
ja 0x180047961
comiss xmm6, dword [rax + 0x14]
ja 0x180047961
mov rax, qword [rax + 0x4890]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.180009b40
movaps xmm0, xmm7
movss dword [rbp - 0x50], xmm7
addss xmm0, dword [0x1800cfb94]
lea rcx, [rbp - 0x70]
movss dword [rbp - 0x4c], xmm6
mov r10, rax
movss dword [rsp + 0x78], xmm0
movaps xmm0, xmm6
addss xmm0, dword [0x1800cfb94]
movss dword [rsp + 0x7c], xmm0
call fcn.1800067c0
movss dword [rsp + 0x30], xmm14
lea rdx, [rbp - 0x50]
mov r9d, eax
movss dword [rsp + 0x20], xmm12
lea r8, [rsp + 0x78]
mov rcx, r10
call fcn.1800287f0
mov rcx, qword [0x1800de880]
mov ecx, dword [rcx + 0x168]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180047abe
mov rax, qword [0x1800de938]
lea r8, [rsp + 0x54]
mov rbx, qword [0x1800ddd40]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x40]
movss xmm8, dword [rax]
movss xmm6, dword [rax + 4]
mov rax, qword [0x1800de960]
mulss xmm8, xmm11
mov dword [rsp + 0x48], esi
mulss xmm6, xmm11
mov qword [rsp + 0x50], 0
movsd qword [rsp + 0x40], xmm10
call qword [rax + gethostname]
movss xmm0, dword [rsp + 0x54]
movaps xmm1, xmm13
mulss xmm0, dword [rbx + 0x14]
movss xmm7, dword [rsp + 0x50]
mulss xmm7, dword [rbx + 0x10]
movss dword [rsp + 0x54], xmm0
cvtps2pd xmm0, xmm0
cvtps2pd xmm2, xmm6
movss dword [rsp + 0x50], xmm7
subsd xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm6, xmm0
movaps xmm1, xmm13
cvtps2pd xmm0, xmm7
cvtps2pd xmm2, xmm8
subsd xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm6, xmm0
xorps xmm1, xmm1
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm6
ucomiss xmm1, xmm0
ja 0x180047a34
xorps xmm6, xmm6
sqrtss xmm6, xmm0
jmp 0x180047a3c
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm6, xmm0
mov rax, qword [0x1800de880]
cmp byte [rax + 0x158], 0
je 0x180047a85
mov rax, qword [0x1800de960]
mov r9d, 0xe0c26c4
mov r8b, 1
mov byte [rsp + 0x20], 0
mov rdx, rdi
mov rcx, r14
mov r10, qword [rax + 0xd0]
call r10
test al, al
mov rax, qword [0x1800de880]
setne cl
mov byte [reloc.WS2_32.dll_accept], cl
jmp 0x180047a8c
movzx ecx, byte [reloc.WS2_32.dll_accept]
movd xmm0, dword [rax + 0x164]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm6
jbe 0x180047abe
test cl, cl
je 0x180047abe
cmp byte [rax + 0x13c], 0
jne 0x180047abe
lea rdx, [rsp + 0x40]
movsd qword [rsp + 0x40], xmm10
mov dword [rsp + 0x48], esi
call fcn.180041a90
movaps xmm13, xmmword [rsp + 0x380]
mov rsi, qword [rsp + 0x410]
mov r14, qword [rsp + 0x420]
movaps xmm10, xmmword [rsp + 0x3b0]
movaps xmm9, xmmword [rsp + 0x3c0]
movaps xmm11, xmmword [rsp + 0x3a0]
mov rdi, qword [rsp + 0x418]
movaps xmm12, xmmword [rsp + 0x390]
movaps xmm14, xmmword [rsp + 0x370]
mov rcx, qword [rbp + 0x260]
xor rcx, rsp
call fcn.18009a2d0
lea r11, [rsp + 0x400]
mov rbx, qword [r11 + 0x28]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop rbp
ret