Function at 0x14004dfe0
Capabilities:
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 - 0x458]
sub rsp, 0x530
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 [0x1401430c0]
xor rax, rsp
mov qword [rbp + 0x380], rax
xor r15d, r15d
mov r12d, r15d
mov dword [rbp - 8], r15d
lea rdx, [rbp + 0x148]
call fcn.14004cae0
mov rax, qword [0x1401836e0]
mov rax, qword [rax + 0x4b10]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.1400089a0
mov r14, rax
movss xmm0, dword [0x14016c368]
movss xmm1, dword [0x140183708]
movss xmm2, dword [0x14018371c]
mov r8, qword [0x1401836e0]
movss dword [rsp + 0x48], xmm0
movss dword [rsp + 0x4c], xmm1
movss dword [rsp + 0x50], xmm2
movss xmm0, dword [r8 + 0x38e8]
mulss xmm0, dword [0x14012f814]
movss dword [rsp + 0x54], xmm0
lea rcx, [rsp + 0x48]
call fcn.140004ae0
mov r13d, eax
movss xmm0, dword [0x14012f85c]
movss dword [rbp - 0x2c], xmm0
movss dword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], r15
mov rcx, qword [0x1401837a0]
mov esi, dword [rcx]
mov ecx, dword [reloc.WLDAP32.dll_Ordinal_200]
add ecx, 0xffffffe2
add esi, ecx
xorps xmm14, xmm14
movss xmm11, dword [0x14012f64c]
movss dword [rbp - 4], xmm11
movss xmm13, dword [0x14012f69c]
movss xmm7, dword [0x14012f6d8]
movss dword [rbp - 0x28], xmm7
movdqa xmm6, xmmword [0x14012fc50]
cmp byte [0x140183760], r15b
je 0x14004e1e2
cmp byte [reloc.WS2_32.dll_accept], r12b
je 0x14004e2b8
mov rax, qword [r8 + 0x4b10]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.1400089a0
mov rbx, rax
movzx ecx, r13b
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm11
movss dword [rsp + 0x48], xmm0
mov ecx, r13d
shr ecx, 8
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm11
movss dword [rsp + 0x4c], xmm0
mov ecx, r13d
shr ecx, 0x10
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm11
movss dword [rsp + 0x50], xmm0
mov eax, r13d
shr eax, 0x18
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm11
movss dword [rsp + 0x54], xmm0
lea rcx, [rsp + 0x48]
jmp 0x14004e212
cmp byte [reloc.WS2_32.dll_accept], r12b
je 0x14004e2b8
mov rax, qword [r8 + 0x4b10]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.1400089a0
mov rbx, rax
movups xmmword [rbp - 0x18], xmm6
lea rcx, [rbp - 0x18]
call fcn.140004ae0
mov edi, eax
mov eax, dword [0x14018376c]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
mov eax, dword [0x140183770]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
movd xmm2, esi
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
test edi, 0xff000000
cvtdq2ps xmm2, xmm2
movss dword [rsp + 0x44], xmm1
movss dword [rsp + 0x40], xmm0
je 0x14004e2b1
comiss xmm13, xmm2
ja 0x14004e2b1
mov dword [rsp + 0x28], Ordinal_200
movss xmm0, dword [0x14012f7a4]
movss dword [rsp + 0x20], xmm0
xorps xmm3, xmm3
subss xmm2, xmm13
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.140028b40
movss dword [rsp + 0x28], xmm7
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.140027160
mov dword [rbx + 0x78], r15d
mov r8, qword [0x1401836e0]
cmp byte [0x140183763], r12b
je 0x14004e5b0
movdqa xmm0, xmmword [0x14012fba0]
movups xmmword [rbp - 0x18], xmm0
lea rcx, [rbp - 0x18]
call fcn.140004ae0
mov ecx, eax
xorps xmm6, xmm6
cvtsi2ss xmm6, rcx
mov rax, qword [r8 + 0x4b10]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.1400089a0
mov r10, rax
mov rcx, qword [0x1401836e0]
movss dword [rsp + 0x48], xmm6
mov qword [rsp + 0x4c], r12
movss xmm0, dword [rcx + 0x38e8]
addss xmm0, xmm0
movss dword [rsp + 0x54], xmm0
lea rcx, [rsp + 0x48]
call fcn.140004ae0
mov r9d, eax
mov eax, dword [0x14018376c]
cdq
sub eax, edx
sar eax, 1
movd xmm2, eax
cvtdq2ps xmm2, xmm2
mov eax, dword [0x140183770]
cdq
sub eax, edx
sar eax, 1
lea ecx, [rax - 0xa]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm2
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rsp + 0x58], xmm1
movss dword [rsp + 0x5c], xmm2
movss dword [rsp + 0x20], xmm7
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x58]
mov rcx, r10
call fcn.140029330
mov rax, qword [0x1401836e0]
mov rax, qword [rax + 0x4b10]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.1400089a0
mov r10, rax
mov rcx, qword [0x1401836e0]
movss dword [rsp + 0x48], xmm6
mov qword [rsp + 0x4c], r12
movss xmm0, dword [rcx + 0x38e8]
addss xmm0, xmm0
movss dword [rsp + 0x54], xmm0
lea rcx, [rsp + 0x48]
call fcn.140004ae0
mov r9d, eax
mov eax, dword [0x14018376c]
cdq
sub eax, edx
sar eax, 1
movd xmm2, eax
cvtdq2ps xmm2, xmm2
mov eax, dword [0x140183770]
cdq
sub eax, edx
sar eax, 1
lea ecx, [rax + 0xa]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm2
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rsp + 0x58], xmm1
movss dword [rsp + 0x5c], xmm2
movss dword [rsp + 0x20], xmm7
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x58]
mov rcx, r10
call fcn.140029330
mov rax, qword [0x1401836e0]
mov rax, qword [rax + 0x4b10]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.1400089a0
mov r10, rax
mov rcx, qword [0x1401836e0]
movss dword [rsp + 0x48], xmm6
mov qword [rsp + 0x4c], r12
movss xmm0, dword [rcx + 0x38e8]
addss xmm0, xmm0
movss dword [rsp + 0x54], xmm0
lea rcx, [rsp + 0x48]
call fcn.140004ae0
mov r9d, eax
mov eax, dword [0x14018376c]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
lea ecx, [rax - 0xa]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x140183770]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rsp + 0x40], xmm1
movss dword [rsp + 0x44], xmm0
movd xmm0, r8d
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x58], xmm1
movss dword [rsp + 0x5c], xmm0
movss dword [rsp + 0x20], xmm7
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x58]
mov rcx, r10
call fcn.140029330
mov rax, qword [0x1401836e0]
mov rax, qword [rax + 0x4b10]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.1400089a0
mov r10, rax
mov rcx, qword [0x1401836e0]
movss dword [rsp + 0x48], xmm6
mov qword [rsp + 0x4c], r12
movss xmm0, dword [rcx + 0x38e8]
addss xmm0, xmm0
movss dword [rsp + 0x54], xmm0
lea rcx, [rsp + 0x48]
call fcn.140004ae0
mov r9d, eax
mov eax, dword [0x14018376c]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
lea ecx, [rax + 0xa]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x140183770]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rsp + 0x40], xmm1
movss dword [rsp + 0x44], xmm0
movd xmm0, r8d
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x58], xmm1
movss dword [rsp + 0x5c], xmm0
movss dword [rsp + 0x20], xmm7
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x58]
mov rcx, r10
call fcn.140029330
mov r8, qword [0x1401836e0]
mov rax, qword [r8 + 0x4b10]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.1400089a0
mov r10, rax
mov rcx, qword [0x1401836e0]
mov dword [rsp + 0x48], 0x3e051eb8
mov dword [rsp + 0x4c], 0x3e051eb8
mov dword [rsp + 0x50], 0x3e051eb8
movss xmm0, dword [rcx + 0x38e8]
mulss xmm0, xmm14
movss dword [rsp + 0x54], xmm0
lea rcx, [rsp + 0x48]
call fcn.140004ae0
mov dword [rsp + 0x40], 0x435c0000
mov dword [rsp + 0x44], 0x437a0000
mov dword [rsp + 0x58], 0x41a00000
mov dword [rsp + 0x5c], 0x42480000
mov dword [rsp + 0x28], r15d
movss dword [rsp + 0x20], xmm14
mov r9d, eax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x58]
mov rcx, r10
call fcn.1400295a0
mov rax, qword [0x1401836e0]
mov rax, qword [rax + 0x4b10]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.1400089a0
mov rbx, rax
mov r8, qword [0x1401836e0]
mov dword [rsp + 0x48], 0x3f800000
mov dword [rsp + 0x4c], 0x3f800000
mov dword [rsp + 0x50], 0x3f800000
movss xmm0, dword [r8 + 0x38e8]
movss dword [rsp + 0x54], xmm0
lea rcx, [rsp + 0x48]
call fcn.140004ae0
mov edi, eax
mov dword [rsp + 0x40], 0x42f00000
mov dword [rsp + 0x44], 0x43160000
test eax, 0xff000000
je 0x14004e719
mov dword [rsp + 0x28], 0x3f
movss xmm0, dword [0x14012f79c]
movss dword [rsp + 0x20], xmm0
xorps xmm3, xmm3
movss xmm2, dword [0x14012f7f4]
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.140028b40
movss dword [rsp + 0x28], xmm14
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.140027160
mov dword [rbx + 0x78], r15d
mov r8, qword [0x1401836e0]
mov dword [rsp + 0x40], 0x42f00000
mov dword [rsp + 0x44], 0x43160000
mov rax, qword [r8 + 0x4b10]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.1400089a0
mov rbx, rax
mov rcx, qword [0x1401836e0]
mov dword [rsp + 0x48], 0x3f800000
mov dword [rsp + 0x4c], 0x3f800000
mov dword [rsp + 0x50], 0x3f800000
movss xmm0, dword [rcx + 0x38e8]
movss dword [rsp + 0x54], xmm0
lea rcx, [rsp + 0x48]
call fcn.140004ae0
mov edi, eax
movss xmm0, dword [0x14012f794]
test eax, 0xff000000
je 0x14004e7cc
mov dword [rsp + 0x28], recv
movss dword [rsp + 0x20], xmm0
xorps xmm3, xmm3
movss xmm2, dword [0x14012f728]
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.140028b40
mov r9d, edi
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.140028080
mov dword [rbx + 0x78], r15d
mov rcx, qword [0x140183af8]
cmp byte [0x140183762], r12b
je 0x14004e7e3
mov edx, reloc.WS2_32.dll_recvfrom
jmp 0x14004e7e5
xor edx, edx
call qword [sym.imp.USER32.dll_SetWindowDisplayAffinity]
mov r15, qword [0x140183c38]
mov rsi, qword [0x140183c40]
mov qword [rbp + 0x30], rsi
cmp r15, rsi
je 0x1400501e9
movdqa xmm15, xmmword [0x14012faf0]
movsd xmm12, qword [0x14012f730]
movsd xmm6, qword [0x14012f740]
xor r9d, r9d
mov r8, qword [r15 + 8]
lea rdx, [rbp - 0x70]
call fcn.14004d060
movups xmm9, xmmword [rbp - 0x70]
movaps xmmword [rsp + 0x60], xmm9
movsd xmm10, qword [rbp - 0x60]
movsd qword [rsp + 0x70], xmm10
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0xf8]
call fcn.14004cc60
movsd xmm0, qword [rax]
movsd qword [0x140183ba8], xmm0
movsd xmm1, qword [rax + 8]
movsd qword [0x140183bb0], xmm1
movaps xmm1, xmm10
addsd xmm1, xmm6
movaps xmm8, xmm9
unpckhpd xmm8, xmm9
movaps xmm0, xmm9
unpcklpd xmm0, xmm8
movaps xmmword [rbp - 0x70], xmm0
movsd qword [rsp + 0x70], xmm1
movsd qword [rbp - 0x60], xmm1
lea r8, [rbp - 0x70]
lea rdx, [rbp + 0x138]
call fcn.14004cc60
movsd xmm0, qword [rax]
movsd qword [0x140183c50], xmm0
movsd xmm1, qword [rax + 8]
movsd qword [0x140183c58], xmm1
movaps xmm1, xmm10
subsd xmm1, xmm12
movaps xmm0, xmm9
unpcklpd xmm0, xmm8
movaps xmmword [rbp - 0x70], xmm0
movsd qword [rsp + 0x70], xmm1
movsd qword [rbp - 0x60], xmm1
lea r8, [rbp - 0x70]
lea rdx, [rbp + 0x108]
call fcn.14004cc60
movsd xmm0, qword [rax]
movsd qword [0x140183b88], xmm0
movsd xmm1, qword [rax + 8]
movsd qword [0x140183b90], xmm1
mov r9d, 0x42
mov r8, qword [r15 + 8]
lea rdx, [rbp + 0xe0]
call fcn.14004d060
mov r9d, WSAGetLastError
mov r8, qword [r15 + 8]
lea rdx, [rbp - 0x50]
call fcn.14004d060
mov r9d, WSAGetLastError
mov r8, qword [r15 + 8]
lea rdx, [rbp + 0xe0]
call fcn.14004d060
movsd xmm7, qword [rax + 0x10]
mov r9d, WSAGetLastError
mov r8, qword [r15 + 8]
lea rdx, [rbp + 0x180]
call fcn.14004d060
movsd xmm6, qword [rax + 8]
mov r9d, WSAGetLastError
mov r8, qword [r15 + 8]
lea rdx, [rbp + 0x1a0]
call fcn.14004d060
movsd xmm0, qword [rax]
unpcklpd xmm0, xmm6
movaps xmmword [rbp - 0x70], xmm0
movsd qword [rsp + 0x70], xmm7
movsd qword [rbp - 0x60], xmm7
lea r8, [rbp - 0x70]
lea rdx, [rbp + 0x118]
call fcn.14004cc60
movups xmm6, xmmword [rbp - 0x50]
movups xmmword [rbp - 0x70], xmm6
movaps xmmword [rsp + 0x60], xmm6
movsd xmm7, qword [rbp - 0x40]
movsd qword [rbp + 0xd0], xmm7
movsd qword [rsp + 0x70], xmm7
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x128]
call fcn.14004cc60
movsd xmm0, qword [rax]
movsd qword [0x140183b78], xmm0
movsd xmm1, qword [rax + 8]
movsd qword [0x140183b80], xmm1
movaps xmm2, xmm7
addsd xmm2, xmm12
movaps xmm1, xmm6
unpckhpd xmm1, xmm6
movaps xmm0, xmm6
unpcklpd xmm0, xmm1
movaps xmmword [rbp - 0x50], xmm0
movsd qword [rbp + 0x1b0], xmm2
movsd qword [rbp - 0x40], xmm2
lea r8, [rbp - 0x50]
lea rdx, [rbp + 0x1e0]
call fcn.14004cc60
movsd xmm0, qword [rax]
movsd qword [0x140183b98], xmm0
movsd xmm1, qword [rax + 8]
movsd qword [0x140183ba0], xmm1
mov r9d, WSAGetLastError
mov r8, qword [r15 + 8]
lea rdx, [rbp + 0x148]
call fcn.14004d060
movsd xmm0, qword [0x140183b80]
subsd xmm0, qword [0x140183b90]
andps xmm0, xmmword [0x14012fca0]
cvtpd2ps xmm12, xmm0
mulss xmm12, dword [0x14012f68c]
subsd xmm8, qword [0x140183b48]
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm8
movss xmm7, dword [0x14012f700]
movaps xmm1, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm6, xmm0
subsd xmm9, qword [0x140183b40]
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm9
movaps xmm1, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
subsd xmm10, qword [0x140183b50]
cvtpd2ps xmm0, xmm10
movaps xmm1, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm6
ja 0x14004eaeb
xorps xmm0, xmm0
sqrtss xmm0, xmm6
jmp 0x14004eaf3
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
cvtss2sd xmm0, xmm0
divsd xmm0, qword [0x14012f768]
xorps xmm10, xmm10
cvtsd2ss xmm10, xmm0
mov ecx, 0x5b8
call fcn.140055ea0
comiss xmm10, dword [0x14012f818]
jbe 0x14004eb2e
mov rax, qword [0x140183aa8]
cmp qword [rax + 0x28], 0
jne 0x14004fdf7
cmp byte [0x140183760], 0
je 0x14004ebec
movzx eax, r13b
xorps xmm4, xmm4
cvtsi2ss xmm4, rax
mulss xmm4, xmm11
mov eax, r13d
shr eax, 8
movzx eax, al
xorps xmm3, xmm3
cvtsi2ss xmm3, rax
mulss xmm3, xmm11
mov eax, r13d
shr eax, 0x10
movzx eax, al
xorps xmm2, xmm2
cvtsi2ss xmm2, rax
mulss xmm2, xmm11
mov eax, r13d
shr eax, 0x18
xorps xmm1, xmm1
cvtsi2ss xmm1, rax
mulss xmm1, xmm11
movaps xmm0, xmm4
shufps xmm0, xmm0, 0xe1
movss xmm0, xmm3
shufps xmm0, xmm0, 0xc6
movss xmm0, xmm2
shufps xmm0, xmm0, 0x27
movss xmm0, xmm1
shufps xmm0, xmm0, 0x39
movups xmmword [rsp + 0x60], xmm0
movups xmmword [0x140183c68], xmm0
shufps xmm4, xmm4, 0xe1
movss xmm4, xmm3
shufps xmm4, xmm4, 0xc6
movss xmm4, xmm2
shufps xmm4, xmm4, 0x27
movss xmm4, xmm1
shufps xmm4, xmm4, 0x39
movups xmmword [rsp + 0x60], xmm4
movups xmmword [0x140183c78], xmm4
movss xmm8, dword [0x14012f664]
jmp 0x14004ee69
mov rbx, qword [r15 + 8]
lea rcx, [rbx + 0x2e8]
call fcn.140056320
movaps xmm6, xmm0
lea rcx, [rbx + 0x2f0]
call fcn.140056320
movss xmm8, dword [0x14012f664]
addss xmm0, xmm8
mov r8, qword [0x1401836e0]
comiss xmm0, xmm6
jb 0x14004ed1a
movss xmm0, dword [0x140181e10]
movss xmm1, dword [0x140181e14]
movss xmm2, dword [0x140181e18]
movss dword [rbp + 0xb0], xmm0
movss dword [rbp + 0xb4], xmm1
movss dword [rbp + 0xb8], xmm2
movss xmm0, dword [r8 + 0x38e8]
movss dword [rbp + 0xbc], xmm0
lea rcx, [rbp + 0xb0]
call fcn.140004ae0
movzx ecx, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm11
movss dword [0x140183c68], xmm0
mov ecx, eax
shr ecx, 8
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm11
movss dword [0x140183c6c], xmm0
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm11
movss dword [0x140183c70], xmm0
shr eax, 0x18
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm11
movss dword [0x140183c74], xmm0
mov qword [rbp + 0xc0], 0
mov dword [rbp + 0xc8], 0
movss xmm0, dword [r8 + 0x38e8]
mulss xmm0, dword [0x14012f67c]
movss dword [rbp + 0xcc], xmm0
lea rcx, [rbp + 0xc0]
jmp 0x14004edfa
movss xmm0, dword [0x140181e00]
movss xmm1, dword [0x140181e04]
movss xmm2, dword [0x140181e08]
movss dword [rbp + 0xa0], xmm0
movss dword [rbp + 0xa4], xmm1
movss dword [rbp + 0xa8], xmm2
movss xmm0, dword [r8 + 0x38e8]
movss dword [rbp + 0xac], xmm0
lea rcx, [rbp + 0xa0]
call fcn.140004ae0
movzx ecx, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm11
movss dword [0x140183c68], xmm0
mov ecx, eax
shr ecx, 8
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm11
movss dword [0x140183c6c], xmm0
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
mulss xmm0, xmm11
movss dword [0x140183c70], xmm0
shr eax, 0x18
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm11
movss dword [0x140183c74], xmm0
mov qword [rbp - 0x18], 0
mov dword [rbp - 0x10], 0
movss xmm0, dword [r8 + 0x38e8]
mulss xmm0, dword [0x14012f67c]
movss dword [rbp - 0xc], xmm0
lea rcx, [rbp - 0x18]
call fcn.140004ae0
xorps xmm0, xmm0
movzx ecx, al
cvtsi2ss xmm0, rcx
mulss xmm0, xmm11
mov ecx, eax
movss dword [0x140183c78], xmm0
shr ecx, 8
xorps xmm0, xmm0
movzx ecx, cl
cvtsi2ss xmm0, rcx
mulss xmm0, xmm11
mov ecx, eax
movss dword [0x140183c7c], xmm0
shr ecx, 0x10
xorps xmm0, xmm0
movzx ecx, cl
cvtsi2ss xmm0, rcx
mulss xmm0, xmm11
movss dword [0x140183c80], xmm0
xorps xmm0, xmm0
shr eax, 0x18
cvtsi2ss xmm0, rax
mulss xmm0, xmm11
movss dword [0x140183c84], xmm0
cmp byte [0x1401836de], 0
je 0x14004ef2f
mov eax, dword [0x140183770]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd xmm2, qword [0x140183b78]
subsd xmm2, xmm0
mov eax, dword [0x14018376c]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd xmm1, qword [0x140183b80]
subsd xmm1, xmm0
mulsd xmm1, xmm1
mulsd xmm2, xmm2
addsd xmm1, xmm2
cvtpd2ps xmm3, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm3
ja 0x14004eed5
xorps xmm7, xmm7
sqrtss xmm7, xmm3
jmp 0x14004eee0
movaps xmm0, xmm3
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm7, xmm0
mov rbx, qword [r15 + 8]
lea rcx, [rbx + 0x2e8]
call fcn.140056320
movaps xmm6, xmm0
lea rcx, [rbx + 0x2f0]
call fcn.140056320
addss xmm0, xmm8
comiss xmm0, xmm6
jb 0x14004ef2f
movd xmm0, dword [reloc.WLDAP32.dll_Ordinal_200]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm7
jbe 0x14004ef2f
movss xmm0, dword [rbp - 0x30]
comiss xmm0, xmm7
jbe 0x14004ef2f
movss dword [rbp - 0x30], xmm7
mov rax, qword [r15]
mov qword [rbp - 0x20], rax
cmp byte [0x14018375a], 0
je 0x14004f19f
cmp byte [0x14018375c], 0
je 0x14004f19f
mulss xmm12, xmm13
movsd xmm9, qword [0x140183ba0]
cvtpd2ps xmm9, xmm9
cvtps2pd xmm1, xmm12
movsd xmm0, qword [0x140183b98]
subsd xmm0, xmm1
cvtpd2ps xmm8, xmm0
movss dword [rbp + 0x60], xmm8
movss dword [rbp + 0x64], xmm9
movsd xmm7, qword [0x140183bb0]
cvtpd2ps xmm7, xmm7
addsd xmm1, qword [0x140183ba8]
cvtpd2ps xmm6, xmm1
movss dword [rbp + 0x58], xmm6
movss dword [rbp + 0x5c], xmm7
cmp byte [0x140183759], 0
je 0x14004efd6
lea rcx, [0x140183c78]
call fcn.140004ae0
mov r9d, eax
mov dword [rsp + 0x28], 0xf0
movss dword [rsp + 0x20], xmm14
lea r8, [rbp + 0x58]
lea rdx, [rbp + 0x60]
mov rcx, r14
call fcn.1400295a0
mov edi, dword [reloc.WS2_32.dll_accept]
cmp byte [0x14018370e], 0
je 0x14004f0d6
movups xmmword [rsp + 0x60], xmm15
lea rcx, [rsp + 0x60]
call fcn.140004ae0
mov ebx, eax
test eax, 0xff000000
je 0x14004f0d6
movaps xmm3, xmm9
addss xmm3, xmm13
movaps xmm2, xmm8
addss xmm2, xmm13
movaps xmm1, xmm7
movaps xmm0, xmm6
mov dword [rsp + 0x20], 0xf0
mov rcx, r14
test byte [r14 + 0x30], 1
je 0x14004f058
subss xmm1, xmm13
subss xmm0, xmm13
movss dword [rbp + 0x68], xmm0
movss dword [rbp + 0x6c], xmm1
movss dword [rbp + 0x70], xmm2
movss dword [rbp + 0x74], xmm3
lea r8, [rbp + 0x68]
lea rdx, [rbp + 0x70]
jmp 0x14004f08d
subss xmm1, dword [0x14012f698]
subss xmm0, dword [0x14012f698]
movss dword [rbp + 0x78], xmm0
movss dword [rbp + 0x7c], xmm1
movss dword [rbp + 0x80], xmm2
movss dword [rbp + 0x84], xmm3
lea r8, [rbp + 0x78]
lea rdx, [rbp + 0x80]
movaps xmm3, xmm14
call fcn.140028f70
movd xmm0, edi
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [0x14012f708]
cvtpd2ps xmm0, xmm0
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 1
mov r9d, ebx
mov r8d, dword [r14 + 0x78]
mov rdx, qword [r14 + 0x80]
mov rcx, r14
call fcn.140027160
mov dword [r14 + 0x78], 0
lea rcx, [0x140183c68]
call fcn.140004ae0
mov ebx, eax
test eax, 0xff000000
je 0x14004f19f
addss xmm9, xmm13
addss xmm8, xmm13
mov dword [rsp + 0x20], 0xf0
movaps xmm3, xmm14
mov rcx, r14
test byte [r14 + 0x30], 1
je 0x14004f139
subss xmm7, xmm13
subss xmm6, xmm13
movss dword [rbp], xmm6
movss dword [rbp + 4], xmm7
movss dword [rbp + 8], xmm8
movss dword [rbp + 0xc], xmm9
lea r8, [rbp]
lea rdx, [rbp + 8]
jmp 0x14004f167
subss xmm7, dword [0x14012f698]
subss xmm6, dword [0x14012f698]
movss dword [rbp + 0x10], xmm6
movss dword [rbp + 0x14], xmm7
movss dword [rbp + 0x18], xmm8
movss dword [rbp + 0x1c], xmm9
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x18]
call fcn.140028f70
movd xmm0, edi
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 1
mov r9d, ebx
mov r8d, dword [r14 + 0x78]
mov rdx, qword [r14 + 0x80]
mov rcx, r14
call fcn.140027160
xor edi, edi
mov dword [r14 + 0x78], edi
jmp 0x14004f1a1
xor edi, edi
cmp byte [0x14018375e], 0
je 0x14004f316
cmp byte [0x14018375c], 0
je 0x14004f316
mov r8, qword [r15 + 0x18]
lea rdx, [rbp + 0x148]
call fcn.14004beb0
nop
lea rcx, [rbp + 0x148]
mov rdx, qword [rbp + 0x148]
mov r8, qword [rbp + 0x160]
cmp r8, 0xf
cmova rcx, rdx
mov rax, qword [0x1401836e0]
test rcx, rcx
jne 0x14004f1fb
movaps xmm1, xmm14
jmp 0x14004f25b
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rcx
movss xmm0, dword [0x14012f87c]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rbp - 0x2c]
movss xmm2, dword [rax + 0x3d38]
lea rdx, [rbp + 0x20]
mov rcx, qword [rax + 0x3d30]
call fcn.14002de50
movss xmm0, dword [rbp + 0x20]
addss xmm0, dword [0x14012f6d0]
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0x20], xmm1
mov r8, qword [rbp + 0x160]
mov rdx, qword [rbp + 0x148]
lea rax, [rbp + 0x148]
cmp r8, 0xf
cmova rax, rdx
movsd xmm0, qword [0x140183ba0]
subsd xmm0, qword [0x14012f738]
cvttsd2si r8d, xmm0
mulss xmm1, xmm13
xorps xmm0, xmm0
cvtss2sd xmm0, xmm1
movsd xmm1, qword [0x140183b98]
subsd xmm1, xmm0
cvttsd2si edx, xmm1
movups xmm9, xmmword [0x14012fc50]
movdqa xmmword [rsp + 0x60], xmm9
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rsp + 0x60]
movss xmm6, dword [0x14012f7bc]
movaps xmm0, xmm6
movd ecx, xmm0
call fcn.14004b6c0
nop
mov rdx, qword [rbp + 0x160]
cmp rdx, 0xf
jbe 0x14004f326
inc rdx
mov rcx, qword [rbp + 0x148]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004f30f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004fea1
call fcn.1400c2000
jmp 0x14004f326
movss xmm6, dword [0x14012f7bc]
movups xmm9, xmmword [0x14012fc50]
cmp byte [0x14018375f], 0
je 0x14004f544
cmp byte [0x14018375c], 0
je 0x14004f544
cvttss2si edx, xmm10
lea rcx, [rbp + 0x1a0]
call fcn.140055910
or r12d, 2
mov r8d, 3
lea rdx, [0x14012efb8]
lea rcx, [rbp + 0x1a0]
call fcn.1400552a0
xorps xmm0, xmm0
movups xmmword [rbp + 0x148], xmm0
mov qword [rbp + 0x158], rdi
mov qword [rbp + 0x160], rdi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x148], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x158], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
or r12d, 4
mov rdx, qword [rbp + 0x1b8]
cmp rdx, 0xf
jbe 0x14004f3ef
inc rdx
mov rcx, qword [rbp + 0x1a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004f3ea
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004fea8
call fcn.1400c2000
mov qword [rbp + 0x1b0], rdi
mov qword [rbp + 0x1b8], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x1a0], 0
lea rcx, [rbp + 0x148]
mov rdx, qword [rbp + 0x148]
mov r8, qword [rbp + 0x160]
cmp r8, 0xf
cmova rcx, rdx
mov rax, qword [0x1401836e0]
test rcx, rcx
jne 0x14004f437
movaps xmm1, xmm14
jmp 0x14004f497
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rcx
movss xmm0, dword [0x14012f87c]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rbp - 0x2c]
movss xmm2, dword [rax + 0x3d38]
lea rdx, [rbp + 0x28]
mov rcx, qword [rax + 0x3d30]
call fcn.14002de50
movss xmm0, dword [rbp + 0x28]
addss xmm0, dword [0x14012f6d0]
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0x28], xmm1
mov r8, qword [rbp + 0x160]
mov rdx, qword [rbp + 0x148]
lea rax, [rbp + 0x148]
cmp r8, 0xf
cmova rax, rdx
movd xmm0, dword [0x140183768]
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [0x140183bb0]
cvttsd2si r8d, xmm0
mulss xmm1, xmm13
xorps xmm0, xmm0
cvtss2sd xmm0, xmm1
movsd xmm1, qword [0x140183ba8]
subsd xmm1, xmm0
cvttsd2si edx, xmm1
movdqa xmmword [rsp + 0x60], xmm9
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rsp + 0x60]
movaps xmm0, xmm6
movd ecx, xmm0
call fcn.14004b6c0
nop
mov rdx, qword [rbp + 0x160]
cmp rdx, 0xf
jbe 0x14004f544
inc rdx
mov rcx, qword [rbp + 0x148]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004f53f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004feaf
call fcn.1400c2000
cmp byte [0x14018375d], 0
je 0x14004f8b1
mov dword [0x140183768], 0x19
mov rcx, qword [r15 + 0x18]
movsd xmm8, qword [0x140183ba8]
movsd xmm6, qword [0x140183bb0]
xorps xmm0, xmm0
movups xmmword [rbp + 0x148], xmm0
mov qword [rbp + 0x158], rdi
mov qword [rbp + 0x160], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x148], 0
or r12d, 1
mov dword [rbp - 8], r12d
add rcx, 0x438
call fcn.140055ea0
lea rdx, [rbp + 0x280]
mov rcx, rax
call fcn.140055f80
lea rdx, [rbp + 0x280]
lea rcx, [rbp + 0x1a0]
call fcn.1400547e0
nop
lea rdx, [rbp + 0x1a0]
cmp qword [rbp + 0x1b8], 7
cmova rdx, qword [rbp + 0x1a0]
mov rax, qword [rbp + 0x1b0]
lea r8, [rdx + rax*2]
lea rdx, [rbp + 0x1a0]
cmova rdx, qword [rbp + 0x1a0]
lea r9, [rbp - 0x80]
lea rcx, [rbp + 0x180]
call fcn.1400560b0
nop
lea rcx, [rbp + 0x180]
mov rdi, qword [rbp + 0x180]
mov rsi, qword [rbp + 0x198]
cmp rsi, 0xf
cmova rcx, rdi
mov rbx, qword [rbp + 0x190]
cmp rbx, 3
jne 0x14004f65b
mov r8, rbx
lea rdx, [0x14012ef48]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14004f65b
mov r8d, 4
lea rdx, str.Xbox
jmp 0x14004f772
lea rcx, [rbp + 0x180]
cmp rsi, 0xf
cmova rcx, rdi
cmp rbx, 3
jne 0x14004f695
mov r8, rbx
lea rdx, [0x14012ef54]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14004f695
mov r8d, reloc.WS2_32.dll_listen
lea rdx, str.PlayStation_4
jmp 0x14004f772
lea rcx, [rbp + 0x180]
cmp rsi, 0xf
cmova rcx, rdi
cmp rbx, 3
jne 0x14004f6cf
mov r8, rbx
lea rdx, [0x14012ef68]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14004f6cf
mov r8d, reloc.WS2_32.dll_listen
lea rdx, str.PlayStation_5
jmp 0x14004f772
lea rcx, [rbp + 0x180]
cmp rsi, 0xf
cmova rcx, rdi
cmp rbx, 3
jne 0x14004f706
mov r8, rbx
lea rdx, [0x14012ef80]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14004f706
mov r8d, reloc.WS2_32.dll_listen
lea rdx, str.Xbox_Series_X
jmp 0x14004f772
lea rcx, [rbp + 0x180]
cmp rsi, 0xf
cmova rcx, rdi
cmp rbx, 3
jne 0x14004f73d
mov r8, rbx
lea rdx, [0x14012ef98]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14004f73d
mov r8d, reloc.WS2_32.dll_ntohs
lea rdx, str.Nintendo_Switch
jmp 0x14004f772
lea rcx, [rbp + 0x180]
cmp rsi, 0xf
cmova rcx, rdi
cmp rbx, 3
jne 0x14004f77f
mov r8, rbx
lea rdx, [0x14012efb0]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14004f77f
mov r8d, 2
lea rdx, [0x14012efb4]
lea rcx, [rbp + 0x148]
call fcn.140055680
nop
cmp rsi, 0xf
jbe 0x14004f7b7
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x14004f7ae
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004feb6
mov rcx, rdi
call fcn.1400c2000
nop
mov rdx, qword [rbp + 0x1b8]
cmp rdx, 7
jbe 0x14004f7fd
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x1a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004f7f8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004febd
call fcn.1400c2000
xor edi, edi
mov qword [rbp + 0x1b0], rdi
mov qword [rbp + 0x1b8], 7
mov word [rbp + 0x1a0], di
addsd xmm6, qword [0x14012f710]
cvtpd2ps xmm7, xmm6
cvtpd2ps xmm6, xmm8
lea rdx, [rbp + 0x148]
cmp qword [rbp + 0x160], 0xf
cmova rdx, qword [rbp + 0x148]
lea rcx, [rbp + 0x180]
call fcn.1400514b0
movdqa xmmword [rsp + 0x60], xmm9
mov r9, rax
lea r8, [rsp + 0x60]
unpcklps xmm6, xmm7
movq rdx, xmm6
call fcn.14004c2c0
and r12d, 0xfffffffe
mov rdx, qword [rbp + 0x160]
cmp rdx, 0xf
jbe 0x14004f8ad
inc rdx
mov rcx, qword [rbp + 0x148]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004f8a8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004fec4
call fcn.1400c2000
mov rsi, qword [rbp + 0x30]
cmp byte [0x14018370f], 0
je 0x14004fc39
cmp byte [0x14018375c], 0
je 0x14004fc39
movss xmm0, dword [0x14012f7e4]
comiss xmm0, xmm10
jb 0x14004fc39
lea rax, [fcn.140002240]
mov qword [rsp + 0x20], rax
lea r9, [0x14004adf0]
mov edx, reloc.WS2_32.dll_recv
mov r8d, edx
lea rcx, [rbp + 0x280]
call fcn.1400c24b0
nop
movdqa xmm0, xmmword [0x14012f9b0]
movdqu xmmword [rbp + 0x1a0], xmm0
movdqa xmm0, xmmword [0x14012f9d0]
movdqu xmmword [rbp + 0x1b0], xmm0
movdqa xmm0, xmmword [0x14012fa20]
movdqu xmmword [rbp + 0x1c0], xmm0
movdqa xmm0, xmmword [0x14012fa10]
movdqu xmmword [rbp + 0x1d0], xmm0
mov rbx, rdi
lea rdi, [rbp + 0x280]
nop
mov r9d, dword [rbp + rbx*4 + 0x1a0]
mov r8, qword [r15 + 8]
lea rdx, [rbp + 0x148]
call fcn.14004d060
movups xmm0, xmmword [rax]
movaps xmmword [rbp - 0x50], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp - 0x40], xmm1
lea r8, [rbp - 0x50]
lea rdx, [rbp + 0x88]
call fcn.14004cc60
movups xmm0, xmmword [rax]
movups xmmword [rdi], xmm0
inc rbx
lea rdi, [rdi + 0x10]
cmp rbx, 0x10
jl 0x14004f950
movdqa xmm0, xmmword [0x14012f980]
movdqu xmmword [rbp + 0x200], xmm0
movdqa xmm0, xmmword [0x14012f970]
movdqu xmmword [rbp + 0x210], xmm0
movdqa xmm0, xmmword [0x14012f9a0]
movdqu xmmword [rbp + 0x220], xmm0
movdqa xmm0, xmmword [0x14012f940]
movdqu xmmword [rbp + 0x230], xmm0
movdqa xmm0, xmmword [0x14012f9c0]
movdqu xmmword [rbp + 0x240], xmm0
movdqa xmm0, xmmword [0x14012f9e0]
movdqu xmmword [rbp + 0x250], xmm0
movdqa xmm0, xmmword [0x14012f9f0]
movdqu xmmword [rbp + 0x260], xmm0
mov qword [rbp + 0x270], reloc.WS2_32.dll_ntohs
xor edi, edi
mov rax, qword [0x1401836e0]
mov rax, qword [rax + 0x4b10]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.1400089a0
mov rcx, qword [rax + 0x38]
movss xmm1, dword [rcx + 0x28]
movss xmm0, dword [rcx + 0x24]
movss dword [rbp + 0x38], xmm0
movss dword [rbp + 0x3c], xmm1
movss xmm2, dword [rcx + 0x20]
movss xmm0, dword [rcx + 0x1c]
movss dword [rbp + 0x40], xmm0
movss dword [rbp + 0x44], xmm2
xor r9d, r9d
lea r8, [rbp + 0x38]
lea rdx, [rbp + 0x40]
mov rcx, rax
call fcn.140026d60
lea rbx, [rbp + 0x200]
movss xmm11, dword [0x14012f7c8]
movsxd rcx, dword [rbx]
mov rax, rcx
add rax, rax
movsd xmm1, qword [rbp + rax*8 + 0x288]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + rax*8 + 0x280]
cvtpd2ps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm1
movsxd rax, dword [rbx + 4]
add rax, rax
movsd xmm1, qword [rbp + rax*8 + 0x288]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + rax*8 + 0x280]
cvtpd2ps xmm0, xmm0
movss dword [rsp + 0x58], xmm0
movss dword [rsp + 0x5c], xmm1
cmp ecx, 0x6e
jne 0x14004faf3
addss xmm1, xmm11
movss dword [rsp + 0x5c], xmm1
cmp byte [0x14018375b], dil
je 0x14004fb59
mov rax, qword [0x1401836e0]
mov rax, qword [rax + 0x4b10]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.1400089a0
mov r10, rax
mov ecx, dword [reloc.WS2_32.dll_accept]
add ecx, 2
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
movups xmmword [rsp + 0x60], xmm15
lea rcx, [rsp + 0x60]
call fcn.140004ae0
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x40]
mov rcx, r10
call fcn.140029330
mov rax, qword [0x1401836e0]
mov rax, qword [rax + 0x4b10]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.1400089a0
mov r10, rax
movd xmm6, dword [reloc.WS2_32.dll_accept]
cvtdq2ps xmm6, xmm6
lea rcx, [0x140183c68]
call fcn.140004ae0
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x40]
mov rcx, r10
call fcn.140029330
add rbx, 8
lea rax, [rbp + 0x278]
cmp rbx, rax
jne 0x14004fa87
movss xmm11, dword [rbp - 4]
mov rax, qword [0x1401836e0]
mov rax, qword [rax + 0x4b10]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.1400089a0
mov rdx, rax
mov eax, dword [rax + 0x58]
sub eax, 1
mov dword [rdx + 0x58], eax
jne 0x14004fbfe
mov rcx, qword [rdx + 0x38]
add rcx, 0x1c
jmp 0x14004fc0b
dec eax
movsxd rcx, eax
shl rcx, 4
add rcx, qword [rdx + 0x60]
movups xmm0, xmmword [rcx]
movups xmmword [rdx + 0x88], xmm0
mov rcx, rdx
call fcn.140026b80
nop
lea r9, [fcn.140002240]
mov edx, reloc.WS2_32.dll_recv
mov r8d, edx
lea rcx, [rbp + 0x280]
call fcn.1400c23a4
cmp byte [0x140183758], 0
je 0x14004fcae
movsd xmm0, qword [0x140183b98]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x48], xmm0
movsd xmm1, qword [0x140183ba0]
cvtpd2ps xmm1, xmm1
movss dword [rbp + 0x4c], xmm1
movd xmm0, dword [reloc.WS2_32.dll_getpeername]
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x50], xmm0
movd xmm1, dword [reloc.WS2_32.dll_getpeername]
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0x54], xmm1
lea rcx, [0x140183c68]
call fcn.140004ae0
mov r9d, eax
movss xmm0, dword [rbp - 0x28]
movss dword [rsp + 0x20], xmm0
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x50]
mov rcx, r14
call fcn.140029330
mov rbx, qword [r15 + 8]
lea rcx, [rbx + 0x2e8]
call fcn.140056320
movaps xmm6, xmm0
lea rcx, [rbx + 0x2f0]
call fcn.140056320
movups xmm1, xmmword [rbp - 0x70]
movaps xmmword [rbp - 0x50], xmm1
movsd xmm2, qword [rbp + 0xd0]
movsd qword [rbp - 0x40], xmm2
addss xmm0, dword [0x14012f664]
comiss xmm0, xmm6
setae r8b
lea rcx, [rbp - 0x50]
call fcn.14004d7f0
cmp byte [0x1401836dc], 0
je 0x14004fdf7
mov ecx, dword [reloc.WS2_32.dll_WSASetLastError]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x14004fdf7
mov rax, qword [0x140183aa8]
mov rcx, qword [rax + 0x20]
add rcx, 0x18c8
call fcn.140055ea0
test rax, rax
je 0x14004fdf7
cmp byte [0x1401836da], 0
je 0x14004fd62
lea rcx, [rbp + 0xd8]
call fcn.140048ba0
mov rcx, qword [rax]
mov qword [0x140183700], rcx
mov byte [0x1401836da], 0
lea rcx, [rsp + 0x48]
call fcn.140048ba0
mov rcx, qword [rax]
mov qword [0x140183720], rcx
sub rcx, qword [0x140183700]
movabs rax, 0x431bde82d7b634db
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [0x140183764], edx
mov eax, dword [reloc.WS2_32.dll_accept]
lea ecx, [rax + rax*4]
add ecx, ecx
cmp edx, ecx
jl 0x14004fdf7
movd xmm0, dword [reloc.WLDAP32.dll_Ordinal_30]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm10
jb 0x14004fdf7
mov qword [rsp + 0x20], rdi
mov r9d, 2
xor r8d, r8d
xor edx, edx
mov ecx, r9d
call qword [sym.imp.USER32.dll_mouse_event]
mov qword [rsp + 0x20], rdi
mov r9d, 4
xor r8d, r8d
xor edx, edx
mov ecx, r9d
call qword [sym.imp.USER32.dll_mouse_event]
mov byte [0x1401836da], 1
add r15, 0x48
cmp r15, rsi
jne 0x14004e80f
mov rbx, qword [rbp - 0x20]
test rbx, rbx
je 0x1400501e9
cmp byte [0x1401836de], 0
je 0x1400501e9
lea rcx, [rbx + 0x318]
call fcn.140055ea0
mov rdi, rax
lea rcx, [rbx + 0x198]
call fcn.140055ea0
lea rsi, [rbp + 0x458]
mov rbx, qword [rsi]
xor r14d, r14d
mov qword [rsi], r14
xorps xmm0, xmm0
movups xmmword [rbp + 0x1e0], xmm0
xorps xmm9, xmm9
movsd qword [rbp + 0x1f0], xmm9
lea rcx, [rax + 0x168]
mov r8d, Ordinal_27
lea rdx, [rbp + 0x1e0]
call fcn.14004b430
mov qword [rsi], rbx
xorps xmm7, xmm7
movsd qword [rbp + 0x98], xmm9
mov eax, dword [0x140183744]
test eax, eax
jne 0x14004fecb
mov r9d, WSAGetLastError
lea rdx, [rbp + 0x148]
jmp 0x14004fef1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
cmp eax, 1
jne 0x14004fedf
mov r9d, 0x42
lea rdx, [rbp + 0x1a0]
jmp 0x14004fef1
cmp eax, 2
jne 0x14004ff0d
mov r9d, 7
lea rdx, [rbp + 0x180]
mov r8, rdi
call fcn.14004d060
movups xmm7, xmmword [rax]
movsd xmm8, qword [rax + 0x10]
movsd qword [rbp + 0x98], xmm8
jmp 0x14004ff2a
cmp eax, 3
jne 0x14004ff21
mov r9d, 2
lea rdx, [rbp + 0xe0]
jmp 0x14004fef1
movsd xmm8, qword [rbp + 0x98]
movss xmm10, dword [0x14012f700]
cmp byte [0x1401836dd], r14b
je 0x140050102
movaps xmm8, xmm7
unpckhpd xmm8, xmm7
movaps xmm0, xmm8
subsd xmm0, qword [0x140183b48]
cvtsd2ss xmm0, xmm0
movaps xmm1, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm6, xmm0
movaps xmm0, xmm7
subsd xmm0, qword [0x140183b40]
cvtsd2ss xmm0, xmm0
movaps xmm1, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
movsd xmm1, qword [rbp + 0x98]
subsd xmm1, qword [0x140183b50]
cvtpd2ps xmm0, xmm1
movaps xmm1, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm6
ja 0x14004ffb3
xorps xmm1, xmm1
sqrtss xmm1, xmm6
jmp 0x14004ffbe
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm1, xmm0
divss xmm1, dword [0x14012f844]
xorps xmm3, xmm3
cvtss2sd xmm3, xmm1
movsd xmm4, qword [rbp + 0x1e0]
mulsd xmm4, xmm3
addsd xmm7, xmm4
movsd xmm2, qword [rbp + 0x1e8]
mulsd xmm2, xmm3
addsd xmm2, xmm8
movss xmm0, dword [0x14012f894]
andps xmm0, xmmword [0x14012fc90]
mulss xmm0, xmm13
mulss xmm1, xmm1
mulss xmm0, xmm1
cvtps2pd xmm1, xmm0
movsd xmm0, qword [rbp + 0x1f0]
mulsd xmm0, xmm3
addsd xmm1, xmm0
addsd xmm1, qword [rbp + 0x98]
unpcklpd xmm7, xmm2
movsd qword [rbp - 0x40], xmm1
movaps xmm6, xmm1
movaps xmm8, xmm1
mov rax, qword [0x1401836e0]
mov rcx, qword [rax + 0x4b10]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rcx]
call fcn.1400089a0
mov rbx, rax
movaps xmmword [rbp - 0x50], xmm7
movsd qword [rbp - 0x40], xmm6
lea r8, [rbp - 0x50]
lea rdx, [rbp - 0x18]
call fcn.14004cc60
movsd xmm0, qword [rbp - 0x18]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x20], xmm0
movsd xmm1, qword [rbp - 0x10]
cvtpd2ps xmm1, xmm1
movss dword [rbp - 0x1c], xmm1
movdqa xmm0, xmmword [0x14012fb00]
movups xmmword [rbp - 0x70], xmm0
lea rcx, [rbp - 0x70]
call fcn.140004ae0
mov edi, eax
test eax, 0xff000000
je 0x140050102
mov dword [rsp + 0x28], recv
movss xmm0, dword [0x14012f794]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm14
movss xmm2, dword [0x14012f784]
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.140028b40
movss xmm0, dword [rbp - 0x28]
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.140027160
mov dword [rbx + 0x78], r14d
movaps xmmword [rbp - 0x50], xmm7
movsd qword [rbp - 0x40], xmm8
lea r8, [rbp - 0x50]
lea rdx, [rbp - 0x70]
call fcn.14004cc60
ucomisd xmm7, xmm9
jp 0x1400501c6
jne 0x1400501c6
movaps xmm1, xmm7
unpckhpd xmm1, xmm7
ucomisd xmm1, xmm9
jp 0x14005013e
je 0x1400501e9
mov eax, dword [0x14018376c]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss xmm1, dword [0x14012f700]
call fcn.1400c3a30
movaps xmm6, xmm0
mov eax, dword [0x140183770]
cdq
sub eax, edx
sar eax, 1
movd xmm2, eax
cvtdq2pd xmm2, xmm2
subsd xmm2, xmm7
cvtpd2ps xmm0, xmm2
movaps xmm1, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm1, xmm0
addss xmm1, xmm6
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x1400501a5
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1400501ad
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movd xmm0, dword [reloc.WLDAP32.dll_Ordinal_200]
cvtdq2pd xmm0, xmm0
comisd xmm0, xmm1
jb 0x1400501e9
mov ecx, dword [reloc.WS2_32.dll_bind]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1400501e9
movups xmm0, xmmword [rbp - 0x70]
movdqa xmmword [rbp - 0x70], xmm0
lea rdx, [rbp - 0x70]
call fcn.14004d270
mov rcx, qword [rbp + 0x380]
xor rcx, rsp
call fcn.1400c1d40
lea r11, [rsp + 0x530]
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