Function at 0x14004eac0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x16f0]
mov eax, 0x17f0
call fcn.14005a810
sub rsp, rax
movaps xmmword [rsp + 0x17e0], xmm6
movaps xmmword [rsp + 0x17d0], xmm7
movaps xmmword [rsp + 0x17c0], xmm8
movaps xmmword [rsp + 0x17b0], xmm9
movaps xmmword [rsp + 0x17a0], xmm10
movaps xmmword [rsp + 0x1790], xmm11
movaps xmmword [rsp + 0x1780], xmm12
movaps xmmword [rsp + 0x1770], xmm13
movaps xmmword [rsp + 0x1760], xmm14
movaps xmmword [rsp + 0x1750], xmm15
mov rax, qword [0x14006b010]
xor rax, rsp
mov qword [rbp + 0x1640], rax
xor edi, edi
movss xmm0, dword [0x14006b054]
movss xmm1, dword [0x1400722c4]
movss xmm2, dword [0x140072380]
mov rax, qword [0x140072278]
movss dword [rbp + 0x2c8], xmm0
movss dword [rbp + 0x2cc], xmm1
movss dword [rbp + 0x2d0], xmm2
movss xmm0, dword [rax + 0x3778]
mulss xmm0, dword [0x1400626c4]
movss dword [rbp + 0x2d4], xmm0
lea rcx, [rbp + 0x2c8]
call fcn.140005350
mov r12d, eax
mov dword [rbp + 0x34], r12d
cmp byte [0x1400725e3], dil
je 0x14004ebcf
lea rcx, str._n____ActorLoop_called
call fcn.140043c40
xorps xmm0, xmm0
movups xmmword [rbp + 0xad0], xmm0
mov rsi, qword [0x1400726d0]
add rsi, 0x128
mov qword [rbp + 0xad0], rsi
mov byte [rbp + 0xad8], dil
mov rcx, rsi
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x14004ec0b
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov byte [rbp + 0xad8], 1
xorps xmm6, xmm6
movsd qword [rbp + 0x10], xmm6
movsd qword [rbp + 0x928], xmm6
mov rax, qword [0x1400726d0]
mov rcx, qword [rax]
add rcx, 0x110
call fcn.140057eb0
mov r14, rax
mov rcx, qword [0x1400726d0]
mov rcx, qword [rcx]
add rcx, 0x120
call fcn.140057eb0
mov rbx, rax
lea rax, [rbp + 0x1718]
mov r15, qword [rax]
mov qword [rax], rdi
xor edx, edx
mov r8d, 0x1d8
lea rcx, [rbp + 0xdc0]
call sub.VCRUNTIME140.dll_memset
lea r13, [rbp + 0x1718]
mov rdi, qword [r13]
xor ecx, ecx
mov qword [r13], rcx
mov dword [rbp + 0xc19], ecx
mov word [rbp + 0xc1d], cx
mov byte [rbp + 0xc1f], cl
mov dword [rbp + 0xbf8], 0x85b3e12
mov qword [rbp + 0xc00], rbx
lea rax, [rbp + 0xdc0]
mov qword [rbp + 0xc08], rax
mov qword [rbp + 0xc10], 0x1d8
mov eax, dword [0x1400722c0]
mov dword [rbp + 0xbfc], eax
mov byte [rbp + 0xc18], cl
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], ecx
mov qword [rsp + 0x20], rcx
lea r9d, [rcx + 0x28]
lea r8, [rbp + 0xbf8]
mov edx, 0x2201c4
mov rcx, qword [0x1400722b8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [r13], rdi
lea rcx, [rbp + 0x1160]
lea rax, [rbp + 0xdc0]
mov edx, 3
nop dword [rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x14004ed20
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
mov rax, qword [rax + 0x50]
mov qword [rcx + 0x50], rax
lea rbx, [rbp + 0x1718]
xor edi, edi
mov qword [rbx], rdi
xorps xmm0, xmm0
movups xmmword [rbp + 0x3f8], xmm0
movsd qword [rbp + 0x408], xmm6
lea r8d, [rdx + 0x18]
lea rdx, [rbp + 0x3f8]
mov rcx, r14
call fcn.1400457d0
mov qword [rbx], r15
movups xmm10, xmmword [rbp + 0x3f8]
movups xmmword [rbp + 0x900], xmm10
movsd xmm9, qword [rbp + 0x408]
movsd xmm0, qword [rbp + 0x1330]
call sub.api_ms_win_crt_math_l1_1_0.dll_asin
movaps xmm8, xmm0
mulsd xmm8, qword [0x1400625b0]
movsd xmm0, qword [rbp + 0x1160]
mulsd xmm0, qword [0x140062730]
movsd xmm1, qword [rbp + 0x1180]
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2
movaps xmm7, xmm0
mulsd xmm7, qword [0x1400625b0]
mov rax, qword [0x1400726d0]
mov rcx, qword [rax + 0x18]
add rcx, 0x394
call fcn.1400580b0
movaps xmm2, xmm0
mulss xmm2, dword [0x14006269c]
movups xmmword [0x1400719b0], xmm10
movaps xmm1, xmm9
unpcklpd xmm1, xmm8
movups xmmword [rbp + 0x910], xmm1
movups xmmword [0x1400719c0], xmm1
movups xmm1, xmmword [rbp + 0x920]
movsd xmm1, xmm7
movups xmmword [rbp + 0x920], xmm1
movups xmmword [0x1400719d0], xmm1
movsd xmm0, qword [rbp + 0x930]
movss xmm0, xmm2
movsd qword [rbp + 0x930], xmm0
movsd qword [0x1400719e0], xmm0
mov rax, qword [0x140072278]
mov rax, qword [rax + 0x4040]
lea r8, str.Foreground
lea edx, [rdi + 1]
mov rcx, qword [rax]
call fcn.140007920
mov r14, rax
mov qword [rbp + 0x50], rax
mov ecx, dword [0x140072384]
add ecx, 0xffffffb0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x140071964]
cvttss2si ebx, xmm0
movss xmm1, dword [0x140062438]
movss dword [rbp + 0x60], xmm1
xorps xmm7, xmm7
movss dword [rsp + 0x58], xmm7
movss xmm8, dword [0x140062484]
movss dword [rsp + 0x54], xmm8
cmp byte [0x1400725f9], dil
je 0x14004f291
cmp byte [0x1400725d9], dil
je 0x14004f10b
movzx eax, r12b
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm1
movss dword [rbp + 0x2d8], xmm0
mov eax, r12d
shr eax, 8
movzx eax, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm1
movss dword [rbp + 0x2dc], xmm0
mov eax, r12d
shr eax, 0x10
movzx eax, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm1
movss dword [rbp + 0x2e0], xmm0
mov eax, r12d
shr eax, 0x18
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm1
movss dword [rbp + 0x2e4], xmm0
lea rcx, [rbp + 0x2d8]
call fcn.140005350
mov edi, eax
mov eax, dword [0x1400727e8]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400727e4]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xa8], xmm0
movss dword [rbp + 0xac], xmm1
movd xmm2, ebx
cvtdq2ps xmm2, xmm2
movss xmm6, dword [0x14006261c]
test edi, 0xff000000
je 0x14004f049
comiss xmm7, xmm2
jae 0x14004f049
subss xmm2, xmm8
mov dword [rsp + 0x28], 0x20
movss dword [rsp + 0x20], xmm6
xorps xmm3, xmm3
lea rdx, [rbp + 0xa8]
mov rcx, r14
call fcn.140024fa0
movss xmm0, dword [0x1400624bc]
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [r14 + 0x78]
mov rdx, qword [r14 + 0x80]
mov rcx, r14
call fcn.140023600
xor eax, eax
mov dword [r14 + 0x78], eax
movaps xmm0, xmmword [0x140062960]
movups xmmword [rbp + 0x260], xmm0
lea rcx, [rbp + 0x260]
call fcn.140005350
mov edi, eax
mov eax, dword [0x1400727e8]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400727e4]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x30], xmm0
movss dword [rbp - 0x2c], xmm1
lea eax, [rbx + 1]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
test edi, 0xff000000
je 0x14004f28f
comiss xmm7, xmm2
jae 0x14004f28f
subss xmm2, xmm8
mov dword [rsp + 0x28], 0x20
movss dword [rsp + 0x20], xmm6
xorps xmm3, xmm3
lea rdx, [rbp - 0x30]
mov rcx, r14
call fcn.140024fa0
movss xmm0, dword [0x1400624bc]
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [r14 + 0x78]
mov rdx, qword [r14 + 0x80]
mov rcx, r14
call fcn.140023600
xor edi, edi
mov dword [r14 + 0x78], edi
jmp 0x14004f291
movd xmm6, ebx
cvtdq2ps xmm6, xmm6
lea rcx, [rbp + 0x260]
cmp byte [0x1400725e9], dil
je 0x14004f1e0
movups xmm0, xmmword [0x1400719e8]
movups xmmword [rbp + 0x260], xmm0
call fcn.140005350
mov ebx, eax
mov eax, dword [0x1400727e8]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400727e4]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x30], xmm0
movss dword [rbp - 0x2c], xmm1
test ebx, 0xff000000
je 0x14004f291
comiss xmm7, xmm6
jae 0x14004f291
subss xmm6, xmm8
mov dword [rsp + 0x28], 0x63
movss xmm0, dword [0x140062624]
movss dword [rsp + 0x20], xmm0
xorps xmm3, xmm3
movaps xmm2, xmm6
lea rdx, [rbp - 0x30]
mov rcx, r14
call fcn.140024fa0
movss xmm0, dword [0x1400624bc]
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.140023600
mov dword [r14 + 0x78], edi
jmp 0x14004f291
movaps xmm0, xmmword [0x140062ae0]
movups xmmword [rbp + 0x260], xmm0
call fcn.140005350
mov ebx, eax
mov eax, dword [0x1400727e8]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400727e4]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x30], xmm0
movss dword [rbp - 0x2c], xmm1
test ebx, 0xff000000
je 0x14004f291
comiss xmm7, xmm6
jae 0x14004f291
subss xmm6, xmm8
mov dword [rsp + 0x28], 0x63
movss xmm0, dword [0x140062624]
movss dword [rsp + 0x20], xmm0
xorps xmm3, xmm3
movaps xmm2, xmm6
lea rdx, [rbp - 0x30]
mov rcx, r14
call fcn.140024fa0
movss xmm0, dword [0x1400624bc]
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.140023600
mov dword [r14 + 0x78], edi
jmp 0x14004f291
xor edi, edi
movaps xmm0, xmmword [0x140062950]
movups xmmword [rbp + 0x4b0], xmm0
lea rcx, [rbp + 0x4b0]
call fcn.140005350
mov r9d, eax
mov eax, dword [0x1400727e8]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400727e4]
cdq
sub eax, edx
sar eax, 1
lea ecx, [rax - 9]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xb0], xmm0
movss dword [rbp + 0xb4], xmm1
add eax, 0xfffffffe
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xb8], xmm0
movss dword [rbp + 0xbc], xmm1
movss xmm1, dword [0x140062508]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0xb0]
lea rdx, [rbp + 0xb8]
mov rcx, r14
call fcn.140025940
movaps xmm0, xmmword [0x140062950]
movups xmmword [rbp + 0x4c0], xmm0
lea rcx, [rbp + 0x4c0]
call fcn.140005350
mov r9d, eax
mov eax, dword [0x1400727e8]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400727e4]
cdq
sub eax, edx
sar eax, 1
lea ecx, [rax + 9]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xc0], xmm0
movss dword [rbp + 0xc4], xmm1
add eax, 2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xc8], xmm0
movss dword [rbp + 0xcc], xmm1
movss xmm1, dword [0x140062508]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0xc0]
lea rdx, [rbp + 0xc8]
mov rcx, r14
call fcn.140025940
movaps xmm0, xmmword [0x140062950]
movups xmmword [rbp + 0x4d0], xmm0
lea rcx, [rbp + 0x4d0]
call fcn.140005350
mov r9d, eax
mov eax, dword [0x1400727e8]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
lea ecx, [rax - 9]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x1400727e4]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0xd0], xmm1
movss dword [rbp + 0xd4], xmm0
lea eax, [r8 - 2]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xd8], xmm1
movss dword [rbp + 0xdc], xmm0
movss xmm1, dword [0x140062508]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0xd0]
lea rdx, [rbp + 0xd8]
mov rcx, r14
call fcn.140025940
movaps xmm0, xmmword [0x140062950]
movups xmmword [rbp + 0x4e0], xmm0
lea rcx, [rbp + 0x4e0]
call fcn.140005350
mov r9d, eax
mov eax, dword [0x1400727e8]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
lea ecx, [rax + 9]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x1400727e4]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0xe0], xmm1
movss dword [rbp + 0xe4], xmm0
lea eax, [r8 + 2]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xe8], xmm1
movss dword [rbp + 0xec], xmm0
movss xmm1, dword [0x140062508]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0xe0]
lea rdx, [rbp + 0xe8]
mov rcx, r14
call fcn.140025940
movaps xmm0, xmmword [0x140062ae0]
movups xmmword [rbp + 0x4f0], xmm0
lea rcx, [rbp + 0x4f0]
call fcn.140005350
mov r9d, eax
mov eax, dword [0x1400727e8]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400727e4]
cdq
sub eax, edx
sar eax, 1
lea ecx, [rax - 8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xf0], xmm0
movss dword [rbp + 0xf4], xmm1
add eax, 0xfffffffd
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xf8], xmm0
movss dword [rbp + 0xfc], xmm1
movss xmm1, dword [0x1400624bc]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0xf0]
lea rdx, [rbp + 0xf8]
mov rcx, r14
call fcn.140025940
movaps xmm0, xmmword [0x140062ae0]
movups xmmword [rbp + 0x500], xmm0
lea rcx, [rbp + 0x500]
call fcn.140005350
mov r9d, eax
mov eax, dword [0x1400727e8]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400727e4]
cdq
sub eax, edx
sar eax, 1
lea ecx, [rax + 8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x100], xmm0
movss dword [rbp + 0x104], xmm1
add eax, 3
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x108], xmm0
movss dword [rbp + 0x10c], xmm1
movss xmm1, dword [0x1400624bc]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0x100]
lea rdx, [rbp + 0x108]
mov rcx, r14
call fcn.140025940
movaps xmm0, xmmword [0x140062ae0]
movups xmmword [rbp + 0x510], xmm0
lea rcx, [rbp + 0x510]
call fcn.140005350
mov r9d, eax
mov eax, dword [0x1400727e8]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
lea ecx, [rax - 8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x1400727e4]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0x110], xmm1
movss dword [rbp + 0x114], xmm0
lea eax, [r8 - 3]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x118], xmm1
movss dword [rbp + 0x11c], xmm0
movss xmm1, dword [0x1400624bc]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0x110]
lea rdx, [rbp + 0x118]
mov rcx, r14
call fcn.140025940
movaps xmm0, xmmword [0x140062ae0]
movups xmmword [rbp + 0x520], xmm0
lea rcx, [rbp + 0x520]
call fcn.140005350
mov r9d, eax
mov eax, dword [0x1400727e8]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
lea ecx, [rax + 8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x1400727e4]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0x120], xmm1
movss dword [rbp + 0x124], xmm0
lea eax, [r8 + 3]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x128], xmm1
movss dword [rbp + 0x12c], xmm0
movss xmm1, dword [0x1400624bc]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0x120]
lea rdx, [rbp + 0x128]
mov rcx, r14
call fcn.140025940
mov rax, qword [0x140072278]
movss xmm2, dword [rax + 0xd8]
cvtps2pd xmm2, xmm2
movq r8, xmm2
lea rdx, str.PLAXY__PRV_
lea rcx, [rbp + 0xfe0]
call fcn.140058260
movaps xmm0, xmmword [0x140062ae0]
movups xmmword [rbp + 0x530], xmm0
lea rcx, [rbp + 0x530]
call fcn.140005350
mov r8d, eax
mov dword [rbp + 0x130], 0x45160000
mov dword [rbp + 0x134], 0x41700000
mov r12, 0xffffffffffffffff
test eax, 0xff000000
je 0x14004f827
lea rax, [rbp + 0xfe0]
mov rcx, r12
nop dword [rax + rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x14004f7b0
lea rdx, [rbp + 0xfe0]
add rdx, rcx
lea rax, [rbp + 0xfe0]
cmp rax, rdx
je 0x14004f827
mov rax, qword [r14 + 0x38]
movups xmm0, xmmword [r14 + 0x88]
movups xmmword [rbp + 0x540], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm7
mov qword [rsp + 0x38], rdx
lea rcx, [rbp + 0xfe0]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp + 0x540]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r8d
mov r9, qword [rbp + 0x130]
movss xmm2, dword [rax + 0x10]
mov rdx, r14
mov rcx, qword [rax + 8]
call fcn.14002a410
mov rcx, qword [0x1400726d0]
mov rax, qword [rcx + 0x118]
sub rax, qword [rcx + 0x110]
sar rax, 4
cmp rax, 1
jae 0x14004f8b7
mov rcx, rsi
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rcx, qword [rbp + 0x1640]
xor rcx, rsp
call fcn.1400595e0
lea r11, [rsp + 0x17f0]
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
mov rcx, qword [rcx + 0xc0]
add rcx, 0x318
call fcn.140057eb0
mov qword [rbp + 0x240], rax
movsd xmm7, qword [0x140062710]
movsd qword [rbp + 0x58], xmm7
mov ecx, 0x50
call fcn.140059600
mov qword [rbp], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rcx, vtable.std::_Ref_count_obj2_struct_player_data_.0
mov qword [rax], rcx
lea rcx, [rax + 0x10]
mov qword [rsp + 0x70], rcx
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm0
movups xmmword [rcx + 0x20], xmm0
movups xmmword [rcx + 0x30], xmm0
mov qword [rcx], rdi
mov qword [rcx + 8], rdi
mov qword [rcx + 0x10], rdi
mov qword [rcx + 0x18], rdi
mov qword [rcx + 0x20], rdi
mov qword [rcx + 0x28], rdi
mov qword [rcx + 0x30], rdi
mov qword [rcx + 0x38], 0
movups xmmword [rbp + 0xa80], xmm0
mov qword [rbp + 0xa80], rcx
mov qword [rbp + 0xa88], rax
mov rax, qword [0x1400726d0]
mov rdx, qword [rax + 0x110]
mov qword [rbp + 0x228], rdx
mov rax, qword [rax + 0x118]
mov qword [rbp + 0x250], rax
cmp rdx, rax
je 0x1400537bf
movaps xmm0, xmmword [0x140062ae0]
movups xmmword [rbp + 0x2e8], xmm0
movss xmm0, dword [rbp + 0x2f4]
movss dword [rbp + 0x40], xmm0
movss xmm0, dword [rbp + 0x2f0]
movss dword [rbp + 0x38], xmm0
movss xmm0, dword [rbp + 0x2ec]
movss dword [rbp + 0x3c], xmm0
movss xmm0, dword [rbp + 0x2e8]
movss dword [rbp + 0x28], xmm0
movss xmm0, dword [0x140062b60]
movss dword [rbp - 0x10], xmm0
movsd xmm9, qword [0x140062b40]
movsd qword [rbp], xmm9
movsd xmm7, qword [0x140062560]
movsd qword [rbp - 0x78], xmm7
movsd xmm0, qword [0x1400624f0]
movsd qword [rbp + 0x368], xmm0
movsd xmm0, qword [0x140062500]
movsd qword [rbp + 0x18], xmm0
movss xmm0, dword [0x14006263c]
movss dword [rbp - 0x28], xmm0
movss xmm1, dword [0x1400626a0]
movss dword [rbp - 0x18], xmm1
movss xmm0, dword [0x140062728]
movss dword [rbp - 0x80], xmm0
movsd xmm1, qword [0x140062518]
movsd qword [rbp + 0x360], xmm1
movsd xmm1, qword [0x1400624f8]
movsd qword [rbp + 0x340], xmm1
lea rsi, [rbp + 0x1718]
xorps xmm0, xmm0
movups xmmword [rbp + 0xaa0], xmm0
mov rax, qword [rdx + 8]
test rax, rax
je 0x14004fa7f
lock inc dword [rax + 8]
mov rcx, qword [rbp + 0xa80]
mov qword [rsp + 0x70], rcx
mov r13, qword [rdx]
mov qword [rbp + 0x48], r13
mov qword [rbp + 0xaa0], r13
mov qword [rbp + 0x348], r13
mov r15, qword [rdx + 8]
mov qword [rbp - 0x20], r15
mov qword [rbp + 0xaa8], r15
mov rcx, qword [r13 + 8]
mov rbx, qword [rsi]
mov qword [rsi], rdi
test rcx, rcx
jne 0x14004facc
movups xmmword [rbp + 0x2b0], xmm0
movsd xmm6, qword [rbp + 0x10]
movaps xmm13, xmm6
movsd qword [rbp + 0x2c0], xmm6
jmp 0x14004faec
mov r8d, 0x6d
lea rdx, [rbp + 0x2b0]
call fcn.14004a070
movsd xmm13, qword [rbp + 0x2c0]
movsd xmm6, qword [rbp + 0x10]
mov qword [rbp + 0x20], rsi
mov qword [rsi], rbx
movaps xmm1, xmm13
addsd xmm1, xmm7
movsd xmm14, qword [rbp + 0x2b0]
movsd xmm15, qword [rbp + 0x2b8]
movaps xmm0, xmm14
unpcklpd xmm0, xmm15
movaps xmmword [rbp + 0x720], xmm0
movsd qword [rbp + 0x4a0], xmm1
movsd qword [rbp + 0x730], xmm1
lea rdx, [rbp + 0x720]
lea rcx, [rbp - 0x70]
call fcn.140044990
mov rcx, qword [r13]
add rcx, 0x308
call fcn.140057eb0
mov rcx, qword [r13 + 8]
lea rax, [rbp + 0x1718]
mov rbx, qword [rax]
mov qword [rax], rdi
test rcx, rcx
jne 0x14004fb77
xorps xmm1, xmm1
movups xmmword [rbp + 0x3e0], xmm1
movsd qword [rbp + 0x3f0], xmm6
jmp 0x14004fb8d
xor r8d, r8d
lea rdx, [rbp + 0x3e0]
call fcn.14004a070
movups xmm1, xmmword [rbp + 0x3e0]
mov qword [rsi], rbx
movups xmmword [rbp + 0x470], xmm1
movsd xmm0, qword [rbp + 0x3f0]
movsd qword [rbp + 0x480], xmm0
movaps xmmword [rbp + 0x490], xmm1
movsd qword [rbp + 0x4a0], xmm0
lea rdx, [rbp + 0x490]
lea rcx, [rbp + 0x410]
call fcn.140044990
movsd xmm7, qword [rbp - 0x68]
movaps xmm0, xmm7
movsd xmm12, qword [rbp + 0x418]
subsd xmm0, xmm12
andps xmm0, xmm9
cvtpd2ps xmm11, xmm0
cvtps2pd xmm10, xmm11
movaps xmm0, xmm10
mulsd xmm0, qword [rbp + 0x368]
cvtpd2ps xmm9, xmm0
mov qword [rbp - 0x58], 0
mov qword [rbp - 0x60], 0
mov qword [rbp - 0x48], 0
mov qword [rbp - 0x50], 0
mov qword [rbp - 0x38], 0
mov qword [rbp - 0x40], 0
mov rax, qword [0x1400726d0]
mov rdi, qword [rax + 0xc0]
mov qword [rbp + 0x230], rdi
movss xmm0, dword [rbp + 0x28]
movss dword [rsp + 0x60], xmm0
movss xmm0, dword [rbp + 0x3c]
movss dword [rsp + 0x64], xmm0
movss xmm0, dword [rbp + 0x38]
movss dword [rsp + 0x68], xmm0
movss xmm0, dword [rbp + 0x40]
movss dword [rsp + 0x6c], xmm0
lea rcx, [rbp + 0x1718]
mov rbx, qword [rcx]
xor eax, eax
mov qword [rcx], rax
movd xmm0, dword [0x1400727e4]
cvtdq2pd xmm0, xmm0
movsd xmm1, qword [rbp - 0x70]
comisd xmm1, xmm0
ja 0x1400536a0
movd xmm0, dword [0x1400727e8]
cvtdq2pd xmm0, xmm0
comisd xmm7, xmm0
ja 0x1400536a0
comisd xmm6, xmm1
jae 0x1400536a0
comisd xmm6, xmm7
jae 0x1400536a0
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll__dclass
cmp ax, 2
je 0x1400536a0
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll__dclass
cmp ax, 2
je 0x1400536a0
lea rcx, [rbp + 0x1718]
mov qword [rcx], rbx
cmp byte [0x1400725e1], 0
je 0x140052d6e
cmp byte [0x1400725d9], 0
je 0x14004fdae
mov ecx, dword [rbp + 0x34]
movzx eax, cl
xorps xmm3, xmm3
cvtsi2ss xmm3, rax
movss xmm4, dword [rbp + 0x60]
mulss xmm3, xmm4
mov eax, ecx
shr eax, 8
movzx eax, al
xorps xmm2, xmm2
cvtsi2ss xmm2, rax
mulss xmm2, xmm4
mov eax, ecx
shr eax, 0x10
movzx eax, al
xorps xmm1, xmm1
cvtsi2ss xmm1, rax
mulss xmm1, xmm4
mov eax, ecx
shr eax, 0x18
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm4
movss dword [rbp - 0x60], xmm3
movss dword [rbp - 0x5c], xmm2
movss dword [rbp - 0x58], xmm1
movss dword [rbp - 0x54], xmm0
movss dword [rbp - 0x50], xmm3
movss dword [rbp - 0x4c], xmm2
movss dword [rbp - 0x48], xmm1
movss dword [rbp - 0x44], xmm0
movss dword [rbp - 0x40], xmm3
movss dword [rbp - 0x3c], xmm2
movss dword [rbp - 0x38], xmm1
movss dword [rbp - 0x34], xmm0
movss dword [rsp + 0x60], xmm3
movss dword [rsp + 0x64], xmm2
movss dword [rsp + 0x68], xmm1
movss dword [rsp + 0x6c], xmm0
mov rcx, qword [r13 + 8]
call fcn.14004a220
test al, al
je 0x14004fdfa
cmp byte [0x1400725d9], 0
jne 0x14004fdf1
movups xmm0, xmmword [0x140072460]
movups xmmword [rbp - 0x60], xmm0
movups xmm0, xmmword [0x1400724a0]
movups xmmword [rbp - 0x50], xmm0
movups xmm0, xmmword [0x140072430]
movups xmmword [rbp - 0x40], xmm0
movups xmm0, xmmword [0x1400724b0]
movups xmmword [rsp + 0x60], xmm0
mov byte [0x14006b058], 1
jmp 0x14004fe43
mov rcx, qword [r13 + 8]
call fcn.14004a220
test al, al
jne 0x14004fe43
cmp byte [0x1400725d9], al
jne 0x14004fe3c
movups xmm0, xmmword [0x1400724d8]
movups xmmword [rbp - 0x60], xmm0
movups xmm0, xmmword [0x140072480]
movups xmmword [rbp - 0x50], xmm0
movups xmm0, xmmword [0x1400724c0]
movups xmmword [rbp - 0x40], xmm0
movups xmm0, xmmword [0x140072440]
movups xmmword [rsp + 0x60], xmm0
mov byte [0x14006b058], 0
cmp byte [0x1400725f8], 0
je 0x14004ffc4
cmp byte [0x1400725d1], 0
je 0x14004ff1a
movss xmm0, dword [0x14007196c]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [rbp + 0x18]
cvtpd2ps xmm6, xmm0
movaps xmm1, xmmword [0x140062950]
movups xmmword [rbp + 0x550], xmm1
lea rcx, [rbp + 0x550]
call fcn.140005350
movaps xmm0, xmm7
addsd xmm0, xmm10
cvtpd2ps xmm3, xmm0
movaps xmm1, xmm9
mulss xmm1, xmm8
cvtps2pd xmm0, xmm1
movsd xmm8, qword [rbp - 0x70]
movaps xmm2, xmm8
subsd xmm2, xmm0
cvtps2pd xmm1, xmm9
addsd xmm1, xmm2
cvtpd2ps xmm0, xmm1
movss dword [rbp + 0x138], xmm0
movss dword [rbp + 0x13c], xmm3
cvtpd2ps xmm1, xmm7
cvtpd2ps xmm0, xmm2
movss dword [rbp + 0x140], xmm0
movss dword [rbp + 0x144], xmm1
movss dword [rsp + 0x30], xmm6
mov dword [rsp + 0x28], 0x100
movss xmm6, dword [rsp + 0x58]
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x138]
lea rdx, [rbp + 0x140]
mov rcx, r14
call fcn.140025aa0
jmp 0x14004ff26
movsd xmm8, qword [rbp - 0x70]
movss xmm6, dword [rsp + 0x58]
movaps xmm7, xmm9
mulss xmm7, dword [rsp + 0x54]
lea rcx, [rbp - 0x60]
call fcn.140005350
movsd xmm4, qword [rbp - 0x68]
movaps xmm0, xmm4
addsd xmm0, xmm10
cvtpd2ps xmm2, xmm0
cvtps2pd xmm1, xmm7
movaps xmm3, xmm8
subsd xmm3, xmm1
cvtps2pd xmm8, xmm9
movaps xmm0, xmm8
addsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x148], xmm0
movss dword [rbp + 0x14c], xmm2
cvtpd2ps xmm1, xmm4
cvtpd2ps xmm0, xmm3
movss dword [rbp + 0x150], xmm0
movss dword [rbp + 0x154], xmm1
movss xmm1, dword [0x14007196c]
movss dword [rsp + 0x30], xmm1
mov dword [rsp + 0x28], 0x100
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x148]
lea rdx, [rbp + 0x150]
mov rcx, r14
call fcn.140025aa0
jmp 0x14004ffd1
movaps xmm7, xmm9
mulss xmm7, xmm8
cvtps2pd xmm8, xmm9
cmp byte [0x1400725d2], 0
je 0x140050139
cmp byte [0x1400725d1], 0
je 0x1400500a0
movss xmm0, dword [0x14007196c]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [rbp + 0x18]
cvtpd2ps xmm6, xmm0
movaps xmm1, xmmword [0x140062950]
movups xmmword [rbp + 0x560], xmm1
lea rcx, [rbp + 0x560]
call fcn.140005350
movsd xmm4, qword [rbp - 0x68]
movaps xmm0, xmm4
addsd xmm0, xmm10
cvtpd2ps xmm2, xmm0
cvtps2pd xmm1, xmm7
movsd xmm3, qword [rbp - 0x70]
subsd xmm3, xmm1
cvtps2pd xmm8, xmm9
movaps xmm0, xmm8
addsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x158], xmm0
movss dword [rbp + 0x15c], xmm2
cvtpd2ps xmm1, xmm4
cvtpd2ps xmm0, xmm3
movss dword [rbp + 0x160], xmm0
movss dword [rbp + 0x164], xmm1
movss dword [rsp + 0x30], xmm6
mov dword [rsp + 0x28], 0xf0
movss xmm0, dword [rbp - 0x28]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x158]
lea rdx, [rbp + 0x160]
mov rcx, r14
call fcn.140025aa0
cvtps2pd xmm6, xmm7
lea rcx, [rbp - 0x60]
call fcn.140005350
movsd xmm3, qword [rbp - 0x68]
movaps xmm0, xmm3
addsd xmm0, xmm10
cvtpd2ps xmm1, xmm0
movsd xmm7, qword [rbp - 0x70]
movaps xmm2, xmm7
subsd xmm2, xmm6
movaps xmm0, xmm2
addsd xmm0, xmm8
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x168], xmm0
movss dword [rbp + 0x16c], xmm1
cvtpd2ps xmm1, xmm3
cvtpd2ps xmm0, xmm2
movss dword [rbp + 0x170], xmm0
movss dword [rbp + 0x174], xmm1
movss xmm1, dword [0x14007196c]
movss dword [rsp + 0x30], xmm1
mov dword [rsp + 0x28], 0xf0
movss xmm0, dword [rbp - 0x28]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x168]
lea rdx, [rbp + 0x170]
mov rcx, r14
call fcn.140025aa0
jmp 0x140050141
cvtps2pd xmm6, xmm7
movsd xmm7, qword [rbp - 0x70]
cmp byte [0x140072858], 0
je 0x1400501fe
cmp byte [0x1400725d1], 0
je 0x1400501b9
movaps xmm0, xmmword [0x140062950]
movups xmmword [rbp + 0x570], xmm0
lea rcx, [rbp + 0x570]
call fcn.140005350
movss xmm0, dword [0x14007196c]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [rbp + 0x18]
cvttsd2si r9d, xmm0
cvttss2si ebx, xmm11
cvttss2si r8d, xmm9
movsd xmm11, qword [rbp - 0x68]
cvttsd2si edx, xmm11
movaps xmm0, xmm7
subsd xmm0, xmm6
cvttsd2si ecx, xmm0
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r9d
mov r9d, ebx
call fcn.14004b370
jmp 0x1400501c4
cvttss2si ebx, xmm11
movsd xmm11, qword [rbp - 0x68]
lea rcx, [rbp - 0x60]
call fcn.140005350
cvttss2si r10d, dword [0x14007196c]
cvttss2si r8d, xmm9
cvttsd2si edx, xmm11
movaps xmm0, xmm7
subsd xmm0, xmm6
cvttsd2si ecx, xmm0
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r10d
mov r9d, ebx
call fcn.14004b370
jmp 0x140050204
movsd xmm11, qword [rbp - 0x68]
cmp byte [0x140072ae8], 0
je 0x1400502ab
cmp byte [0x1400725d1], 0
je 0x140050272
movaps xmm0, xmmword [0x140062950]
movups xmmword [rbp + 0x580], xmm0
lea rcx, [rbp + 0x580]
call fcn.140005350
movss xmm0, dword [0x14007196c]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [rbp + 0x18]
cvtpd2ps xmm1, xmm0
mov dword [rsp + 0x28], eax
movss dword [rsp + 0x20], xmm1
movss xmm6, dword [rbp - 0x18]
movaps xmm3, xmm6
movaps xmm2, xmm6
lea rdx, [rbp + 0x2b0]
lea rcx, [rbp + 0x470]
call fcn.14004bda0
jmp 0x140050277
movss xmm6, dword [rbp - 0x18]
lea rcx, [rbp - 0x60]
call fcn.140005350
mov dword [rsp + 0x28], eax
movss xmm0, dword [0x14007196c]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm6
movaps xmm2, xmm6
lea rdx, [rbp + 0x2b0]
lea rcx, [rbp + 0x470]
call fcn.14004bda0
cmp byte [0x1400725d5], 0
je 0x140050321
lea rcx, [rbp - 0x40]
call fcn.140005350
mov r9d, eax
cvtpd2ps xmm1, xmm11
cvtpd2ps xmm0, xmm7
movss dword [rbp + 0x178], xmm0
movss dword [rbp + 0x17c], xmm1
mov eax, dword [0x1400727e4]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x180], xmm0
mov dword [rbp + 0x184], 0
movss xmm1, dword [0x140062508]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0x178]
lea rdx, [rbp + 0x180]
mov rcx, r14
call fcn.140025940
cmp byte [0x1400725cd], 0
je 0x140050399
lea rcx, [rbp - 0x40]
call fcn.140005350
cvtpd2ps xmm1, xmm11
cvtpd2ps xmm0, xmm7
movss dword [rbp + 0x188], xmm0
movss dword [rbp + 0x18c], xmm1
movd xmm2, dword [0x140072810]
cvtdq2ps xmm2, xmm2
movd xmm0, dword [0x140072814]
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x190], xmm0
movss dword [rbp + 0x194], xmm2
movss xmm1, dword [0x140062508]
movss dword [rsp + 0x20], xmm1
mov r9d, eax
lea r8, [rbp + 0x188]
lea rdx, [rbp + 0x190]
mov rcx, r14
call fcn.140025940
test rdi, rdi
je 0x140050ca1
cmp byte [0x1400725c8], 0
je 0x140050ca1
mov rcx, qword [r13]
add rcx, 0x948
call fcn.140057eb0
lea rcx, [rax + 0xc65]
call fcn.1400582c0
mov byte [rsp + 0x50], al
mov rcx, qword [r13]
add rcx, 0x45c
call fcn.1400582c0
movzx esi, al
mov rcx, qword [r13]
add rcx, 0x753
call fcn.1400582c0
movzx ebx, al
mov rcx, qword [r13]
add rcx, 0x940
call fcn.1400582c0
movzx edi, al
mov rcx, qword [r13 + 0x18]
add rcx, 0x10ec
call fcn.140057dd0
mov dword [rbp + 0x2c], eax
mov rcx, qword [r13 + 0x18]
add rcx, 0x10f0
call fcn.140057dd0
mov dword [rbp + 0x30], eax
mov rcx, qword [r13 + 0x18]
add rcx, 0x1245
call fcn.140057dd0
xorps xmm0, xmm0
movups xmmword [rbp + 0xd60], xmm0
xor eax, eax
mov qword [rbp + 0xd70], rax
mov ecx, 0xf
mov qword [rbp + 0xd78], rcx
mov byte [rbp + 0xd60], al
movups xmmword [rbp + 0xbb8], xmm0
mov qword [rbp + 0xbc8], rax
mov qword [rbp + 0xbd0], rcx
mov byte [rbp + 0xbb8], al
movups xmmword [rbp + 0xb80], xmm0
mov r12d, eax
mov qword [rbp + 0xb90], rax
mov r13d, ecx
mov qword [rbp + 0xb98], rcx
mov byte [rbp + 0xb80], al
movups xmmword [rbp + 0xb60], xmm0
mov r14d, eax
mov qword [rbp + 0xb70], rax
mov r15d, ecx
mov qword [rbp + 0xb78], rcx
mov byte [rbp + 0xb60], al
test bl, bl
je 0x1400504db
lea r8d, [rax + 7]
lea rdx, str.Sliding
lea rcx, [rbp + 0xd60]
call fcn.140057910
test dil, dil
je 0x1400504f9
mov r8d, 7
lea rdx, str.Jumping
lea rcx, [rbp + 0xbb8]
call fcn.140057910
test sil, sil
je 0x14005052b
test bl, bl
jne 0x14005052f
mov r8d, 0xa
lea rdx, str.Chrouching
lea rcx, [rbp + 0xb80]
call fcn.140057910
mov r13, qword [rbp + 0xb98]
mov r12, qword [rbp + 0xb90]
jmp 0x14005053d
test bl, bl
je 0x14005053d
test dil, dil
je 0x140050539
test sil, sil
jne 0x14005056e
test bl, bl
jne 0x14005056e
test dil, dil
jne 0x14005056e
test sil, sil
jne 0x14005056e
mov r8d, 6
lea rdx, str.Normal
lea rcx, [rbp + 0xb60]
call fcn.140057910
mov r15, qword [rbp + 0xb78]
mov r14, qword [rbp + 0xb70]
lea rdx, str.Player_State:
add rdx, rbx
lea r8, [rbp + 0xbb8]
lea rcx, [rbp + 0x430]
call fcn.1400583a0
nop
lea rdx, [rbp + 0xb80]
cmp r13, 0x10
cmovae rdx, qword [rbp + 0xb80]
mov r8, r12
mov rcx, rax
call fcn.1400032a0
xorps xmm0, xmm0
movups xmmword [rbp + 0x290], xmm0
xor esi, esi
mov qword [rbp + 0x2a0], rsi
mov qword [rbp + 0x2a8], rsi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x290], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x2a0], xmm1
mov qword [rax + 0x10], rsi
mov ecx, 0xf
mov qword [rax + 0x18], rcx
mov byte [rax], sil
lea rdx, [rbp + 0xb60]
cmp r15, 0x10
cmovae rdx, qword [rbp + 0xb60]
mov r8, r14
lea rcx, [rbp + 0x290]
call fcn.1400032a0
xorps xmm0, xmm0
movups xmmword [rbp + 0x270], xmm0
mov qword [rbp + 0x280], rsi
mov qword [rbp + 0x288], rsi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x270], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x280], xmm1
mov qword [rax + 0x10], rsi
mov r14d, 0xf
mov qword [rax + 0x18], r14
mov byte [rax], sil
lea r8d, [rsi + 1]
lea rdx, [0x140061268]
lea rcx, [rbp + 0x270]
call fcn.1400032a0
xorps xmm0, xmm0
movups xmmword [rbp + 0xb00], xmm0
mov qword [rbp + 0xb10], rsi
mov qword [rbp + 0xb18], rsi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xb00], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xb10], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], r14
mov byte [rax], sil
mov rdx, qword [rbp + 0x288]
cmp rdx, 0x10
jb 0x1400506d9
inc rdx
mov rcx, qword [rbp + 0x270]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400506d4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005372e
call fcn.140059644
mov qword [rbp + 0x280], rsi
mov qword [rbp + 0x288], r14
mov byte [rbp + 0x270], 0
mov rdx, qword [rbp + 0x2a8]
cmp rdx, 0x10
jb 0x14005072f
inc rdx
mov rcx, qword [rbp + 0x290]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005072a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140053735
call fcn.140059644
mov qword [rbp + 0x2a0], rsi
mov qword [rbp + 0x2a8], r14
mov byte [rbp + 0x290], 0
mov rdx, qword [rbp + 0x448]
cmp rdx, 0x10
jb 0x140050785
inc rdx
mov rcx, qword [rbp + 0x430]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140050780
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005373c
call fcn.140059644
mov qword [rbp + 0x440], rsi
mov qword [rbp + 0x448], r14
mov byte [rbp + 0x430], 0
mov r8d, dword [rbp + 0x2c]
lea rdx, str._Kills:__d_
lea rcx, [rbp + 0x1340]
call fcn.140058260
mov r8d, dword [rbp + 0x30]
lea rdx, str._Levels:__d_
lea rcx, [rbp + 0x1540]
call fcn.140058260
mov rax, qword [0x1400726d0]
mov r8d, dword [rax + 0x20]
lea rdx, str._Ammo:__d_
lea rcx, [rbp + 0x1160]
call fcn.140058260
lea rcx, [rbp + 0x1440]
cmp byte [rsp + 0x50], 0
lea rdx, str._Aiming_State:_Aiming_
jne 0x140050802
lea rdx, str._Aiming_State:_Not_Aiming_
call fcn.140058260
mov rax, qword [0x140072278]
mov qword [rsp + 0x30], rsi
lea rcx, [rbp + 0x1340]
mov qword [rsp + 0x28], rcx
movss xmm0, dword [rbp - 0x80]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x14006270c]
movss xmm2, dword [rax + 0x3ba8]
lea rdx, [rbp + 0x198]
mov rcx, qword [rax + 0x3ba0]
call fcn.14002a1f0
movss xmm0, dword [rbp + 0x198]
addss xmm0, dword [0x1400624b4]
cvttss2si eax, xmm0
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movss dword [rbp + 0x198], xmm2
mov r13, qword [rbp + 0x48]
mov eax, dword [r13 + 0x3c]
mov ecx, 0xa
cmp eax, 0x3c
mov edx, 5
cmovle ecx, edx
cmp eax, 0x5a
cmovg ecx, r14d
cmp eax, 0x78
mov edx, 0x14
cmovg ecx, edx
cmp eax, 0x96
mov edx, 0x19
cmovg ecx, edx
cmp eax, 0xb4
mov edx, 0x1e
cmovg ecx, edx
cmp eax, 0xdc
mov edx, 0x23
cmovg ecx, edx
cmp eax, 0xfa
mov edx, 0x28
cmovg ecx, edx
cmp eax, 0x118
mov edx, 0x2d
cmovg ecx, edx
cmp eax, 0x136
mov eax, 0x32
cmovg ecx, eax
movups xmm10, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x590], xmm10
movd xmm6, ecx
cvtdq2pd xmm6, xmm6
movaps xmm1, xmm7
addsd xmm1, qword [0x1400625c8]
mulss xmm2, dword [rsp + 0x54]
cvtps2pd xmm0, xmm2
subsd xmm1, xmm0
cvttsd2si ebx, xmm1
movaps xmm0, xmm11
addsd xmm0, qword [0x140062588]
subsd xmm0, xmm6
cvttsd2si r8d, xmm0
lea rax, [rbp + 0x1340]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x590]
mov edx, ebx
movss xmm7, dword [0x140062658]
movaps xmm0, xmm7
movd ecx, xmm0
call fcn.14004b4f0
movdqa xmmword [rbp + 0x5a0], xmm10
movaps xmm0, xmm11
addsd xmm0, qword [0x1400625a8]
subsd xmm0, xmm6
cvttsd2si r8d, xmm0
lea rax, [rbp + 0x1540]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x5a0]
mov edx, ebx
movaps xmm0, xmm7
movd ecx, xmm0
call fcn.14004b4f0
lea rax, [rbp + 0xb00]
cmp qword [rbp + 0xb18], 0x10
cmovae rax, qword [rbp + 0xb00]
movdqa xmmword [rbp + 0x5b0], xmm10
movaps xmm0, xmm11
addsd xmm0, qword [0x1400625c0]
subsd xmm0, xmm6
cvttsd2si r8d, xmm0
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x5b0]
mov edx, ebx
movaps xmm0, xmm7
movd ecx, xmm0
call fcn.14004b4f0
movdqa xmmword [rbp + 0x5c0], xmm10
movaps xmm0, xmm11
addsd xmm0, qword [0x1400625d0]
subsd xmm0, xmm6
cvttsd2si r8d, xmm0
lea rax, [rbp + 0x1440]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x5c0]
mov edx, ebx
movaps xmm0, xmm7
movd ecx, xmm0
call fcn.14004b4f0
movdqa xmmword [rbp + 0x5d0], xmm10
movaps xmm0, xmm11
addsd xmm0, qword [0x1400625e0]
subsd xmm0, xmm6
cvttsd2si r8d, xmm0
lea rax, [rbp + 0x1160]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x5d0]
mov edx, ebx
movaps xmm0, xmm7
movd ecx, xmm0
call fcn.14004b4f0
nop
mov rdx, qword [rbp + 0xb18]
cmp rdx, 0x10
jb 0x140050ad9
inc rdx
mov rcx, qword [rbp + 0xb00]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140050ad4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140053743
call fcn.140059644
mov qword [rbp + 0xb10], rsi
mov qword [rbp + 0xb18], r14
mov byte [rbp + 0xb00], 0
mov rdx, qword [rbp + 0xb78]
cmp rdx, 0x10
jb 0x140050b30
inc rdx
mov rcx, qword [rbp + 0xb60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140050b2a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005374a
call fcn.140059644
nop
mov rdx, qword [rbp + 0xb98]
cmp rdx, 0x10
jb 0x140050b72
inc rdx
mov rcx, qword [rbp + 0xb80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140050b6c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140053751
call fcn.140059644
nop
mov rdx, qword [rbp + 0xbd0]
cmp rdx, 0x10
jb 0x140050bb4
inc rdx
mov rcx, qword [rbp + 0xbb8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140050bae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140053758
call fcn.140059644
nop
mov rdx, qword [rbp + 0xd78]
cmp rdx, 0x10
jb 0x140050bf5
inc rdx
mov rcx, qword [rbp + 0xd60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140050bf0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005375f
call fcn.140059644
mov r12, 0xffffffffffffffff
cmp byte [0x1400725d3], 0
je 0x14005116b
mov rax, qword [0x1400726d0]
movaps xmm1, xmm13
movaps xmm0, xmm14
unpcklpd xmm0, xmm15
cmp qword [rax + 0xc0], 0
jne 0x140050ecc
addsd xmm1, qword [rbp - 0x78]
movaps xmmword [rbp + 0x740], xmm0
movsd qword [rbp + 0x330], xmm1
movsd qword [rbp + 0x750], xmm1
lea rdx, [rbp + 0x740]
lea rcx, [rbp + 0x350]
call fcn.140044990
movaps xmm1, xmm13
subsd xmm1, qword [0x1400719c0]
movaps xmm0, xmm15
subsd xmm0, qword [0x1400719b8]
movaps xmm2, xmm14
subsd xmm2, qword [0x1400719b0]
mulsd xmm2, xmm2
mulsd xmm0, xmm0
addsd xmm2, xmm0
mulsd xmm1, xmm1
addsd xmm2, xmm1
xorps xmm0, xmm0
ucomisd xmm0, xmm2
ja 0x140050cb2
sqrtpd xmm0, xmm2
jmp 0x140050cba
movups xmm10, xmmword [rsp + 0x60]
xor esi, esi
lea r14d, [rsi + 0xf]
jmp 0x140050bfc
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm0
xorps xmm7, xmm7
cvtsi2ss xmm7, dword [0x1400727e8]
movss xmm0, dword [0x1400719e0]
mulss xmm0, dword [0x1400625a0]
divss xmm0, dword [0x1400626c8]
call sub.api_ms_win_crt_math_l1_1_0.dll_tanf
addss xmm6, xmm6
mulss xmm0, xmm6
divss xmm7, xmm0
mulss xmm7, dword [0x1400716b0]
movsd xmm6, qword [rbp + 0x358]
addsd xmm6, qword [0x1400625b8]
movsd qword [rbp + 0x358], xmm6
movsd xmm9, qword [rbp + 0x350]
cmp byte [0x1400725d1], 0
je 0x140050dff
mov rax, qword [0x140072278]
mov rax, qword [rax + 0x4040]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140007920
mov rbx, rax
movss xmm8, dword [0x14006b050]
addss xmm8, dword [0x140062508]
movaps xmm0, xmmword [0x140062950]
movups xmmword [rbp + 0x5e0], xmm0
lea rcx, [rbp + 0x5e0]
call fcn.140005350
mov edi, eax
cvtpd2ps xmm1, xmm6
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x1a0], xmm0
movss dword [rbp + 0x1a4], xmm1
test eax, 0xff000000
je 0x140050dff
movss xmm0, dword [rsp + 0x58]
comiss xmm0, xmm7
jae 0x140050dff
movaps xmm2, xmm7
subss xmm2, dword [rsp + 0x54]
mov dword [rsp + 0x28], 0x31
movss xmm1, dword [0x140062620]
movss dword [rsp + 0x20], xmm1
movaps xmm3, xmm0
lea rdx, [rbp + 0x1a0]
mov rcx, rbx
call fcn.140024fa0
movss dword [rsp + 0x28], xmm8
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.140023600
mov dword [rbx + 0x78], esi
mov rax, qword [0x140072278]
mov rax, qword [rax + 0x4040]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140007920
mov rbx, rax
movss xmm8, dword [0x14006b050]
lea rcx, [rbp - 0x50]
call fcn.140005350
mov edi, eax
cvtpd2ps xmm1, xmm6
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x1a8], xmm0
movss dword [rbp + 0x1ac], xmm1
movss xmm6, dword [rsp + 0x58]
movss xmm9, dword [rsp + 0x54]
test eax, 0xff000000
je 0x140051178
comiss xmm6, xmm7
jae 0x140051178
lea rdx, [rbp + 0x1a8]
subss xmm7, xmm9
mov dword [rsp + 0x28], 0x31
movss xmm0, dword [0x140062620]
movaps xmm2, xmm7
movaps xmm3, xmm6
movss dword [rsp + 0x20], xmm0
mov rcx, rbx
call fcn.140024fa0
movss dword [rsp + 0x28], xmm8
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.140023600
mov dword [rbx + 0x78], esi
jmp 0x140051178
movsd xmm8, qword [rbp - 0x78]
addsd xmm1, xmm8
movaps xmmword [rbp + 0x760], xmm0
movsd qword [rbp + 0x330], xmm1
movsd qword [rbp + 0x770], xmm1
lea rdx, [rbp + 0x760]
lea rcx, [rbp + 0x2f8]
call fcn.140044990
movaps xmm1, xmm13
subsd xmm1, qword [0x1400719c0]
movaps xmm2, xmm15
subsd xmm2, qword [0x1400719b8]
movaps xmm0, xmm14
subsd xmm0, qword [0x1400719b0]
mulsd xmm2, xmm2
mulsd xmm0, xmm0
addsd xmm2, xmm0
mulsd xmm1, xmm1
addsd xmm2, xmm1
xorps xmm0, xmm0
ucomisd xmm0, xmm2
ja 0x140050f48
sqrtpd xmm0, xmm2
jmp 0x140050f50
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm0
xorps xmm7, xmm7
cvtsi2ss xmm7, dword [0x1400727e8]
movss xmm0, dword [0x1400719e0]
mulss xmm0, dword [0x1400625a0]
divss xmm0, dword [0x1400626c8]
call sub.api_ms_win_crt_math_l1_1_0.dll_tanf
addss xmm6, xmm6
mulss xmm0, xmm6
divss xmm7, xmm0
mulss xmm7, dword [0x1400716b0]
xorps xmm1, xmm1
cvtsi2ss xmm1, dword [r13 + 0x3c]
movss xmm0, dword [rbp - 0x28]
movsd xmm6, qword [rbp + 0x300]
comiss xmm0, xmm1
jbe 0x140050fb6
addsd xmm6, qword [0x140062558]
movss xmm0, dword [0x140062608]
comiss xmm0, xmm1
jbe 0x140050fc8
addsd xmm6, xmm8
movss xmm0, dword [0x140062584]
comiss xmm0, xmm1
jbe 0x140050fdd
addsd xmm6, qword [0x140062570]
addsd xmm6, qword [0x140062548]
movsd qword [rbp + 0x300], xmm6
movss xmm0, dword [0x140062688]
comiss xmm0, xmm1
jbe 0x14005115c
movsd xmm9, qword [rbp + 0x2f8]
cmp byte [0x1400725d1], 0
je 0x1400510e8
mov rax, qword [0x140072278]
mov rax, qword [rax + 0x4040]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140007920
mov rbx, rax
movss xmm8, dword [0x14006b050]
addss xmm8, dword [0x140062508]
movaps xmm0, xmmword [0x140062950]
movups xmmword [rbp + 0x5f0], xmm0
lea rcx, [rbp + 0x5f0]
call fcn.140005350
mov edi, eax
cvtpd2ps xmm1, xmm6
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x1b0], xmm0
movss dword [rbp + 0x1b4], xmm1
test eax, 0xff000000
je 0x1400510e8
movss xmm0, dword [rsp + 0x58]
comiss xmm0, xmm7
jae 0x1400510e8
movaps xmm2, xmm7
subss xmm2, dword [rsp + 0x54]
mov dword [rsp + 0x28], 0x31
movss xmm1, dword [0x140062620]
movss dword [rsp + 0x20], xmm1
movaps xmm3, xmm0
lea rdx, [rbp + 0x1b0]
mov rcx, rbx
call fcn.140024fa0
movss dword [rsp + 0x28], xmm8
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.140023600
mov dword [rbx + 0x78], esi
mov rax, qword [0x140072278]
mov rax, qword [rax + 0x4040]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140007920
mov rbx, rax
movss xmm8, dword [0x14006b050]
lea rcx, [rbp - 0x50]
call fcn.140005350
mov edi, eax
cvtpd2ps xmm1, xmm6
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x1b8], xmm0
movss dword [rbp + 0x1bc], xmm1
movss xmm6, dword [rsp + 0x58]
movss xmm9, dword [rsp + 0x54]
test eax, 0xff000000
je 0x140051178
comiss xmm6, xmm7
jae 0x140051178
lea rdx, [rbp + 0x1b8]
jmp 0x140050e76
movss xmm6, dword [rsp + 0x58]
movss xmm9, dword [rsp + 0x54]
jmp 0x14005117e
movss xmm6, dword [rsp + 0x58]
movss xmm9, dword [rsp + 0x54]
movsd xmm8, qword [rbp - 0x78]
cmp byte [0x1400725e8], 0
je 0x1400515fe
mov r8d, dword [r13 + 0x3c]
lea r9, [rbp + 0xfd5]
test r8d, r8d
jns 0x1400511e0
neg r8d
nop
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x1400511a0
dec r9
mov byte [r9], 0x2d
jmp 0x14005120a
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x1400511e0
lea r8, [rbp + 0xfd5]
mov rdx, r9
lea rcx, [rbp + 0x450]
call fcn.1400589a0
nop
lea rdx, [rbp + 0x450]
cmp qword [rbp + 0x468], 0x10
cmovae rdx, qword [rbp + 0x450]
xorps xmm0, xmm0
movups xmmword [rbp + 0xbd8], xmm0
mov qword [rbp + 0xbe8], rsi
mov qword [rbp + 0xbf0], rsi
mov r8, r12
inc r8
cmp byte [rdx + r8], 0
jne 0x140051253
lea rcx, [rbp + 0xbd8]
call fcn.140003320
nop
mov rdx, qword [rbp + 0x468]
cmp rdx, 0x10
jb 0x1400512ab
inc rdx
mov rcx, qword [rbp + 0x450]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400512a6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140053774
call fcn.140059644
movabs rdx, 0x7fffffffffffffff
mov rax, rdx
mov r14, qword [rbp + 0xbe8]
sub rax, r14
cmp rax, 1
jb 0x1400538b4
lea r15, [rbp + 0xbd8]
mov r13, qword [rbp + 0xbf0]
cmp r13, 0x10
setae byte [rsp + 0x50]
mov r12, qword [rbp + 0xbd8]
cmovae r15, r12
xorps xmm0, xmm0
movups xmmword [rbp + 0x88], xmm0
mov qword [rbp + 0x98], rsi
mov qword [rbp + 0xa0], rsi
lea rsi, [r14 + 1]
mov edi, 0xf
lea rbx, [rbp + 0x88]
cmp rsi, rdi
jbe 0x140051398
mov rdi, rsi
or rdi, 0xf
cmp rdi, rdx
jbe 0x14005132c
mov rdi, rdx
jmp 0x140051339
cmp rdi, 0x16
mov eax, 0x16
cmovb rdi, rax
mov rcx, rdi
add rcx, 1
mov rax, 0xffffffffffffffff
cmovb rcx, rax
cmp rcx, 0x1000
jb 0x140051380
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400538ae
mov rcx, rax
call fcn.140059600
test rax, rax
je 0x140053766
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x140051391
test rcx, rcx
je 0x14005138c
call fcn.140059600
jmp 0x14005138e
xor eax, eax
mov rbx, rax
mov qword [rbp + 0x88], rbx
mov qword [rbp + 0x98], rsi
mov qword [rbp + 0xa0], rdi
movzx eax, word [0x14006126c]
mov byte [rbx], al
lea rcx, [rbx + 1]
mov r8, r14
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbx + rsi], 0
mov r8d, 2
lea rdx, [0x140061b34]
lea rcx, [rbp + 0x88]
call fcn.1400032a0
xorps xmm0, xmm0
movups xmmword [rbp + 0xab0], xmm0
xor esi, esi
mov qword [rbp + 0xac0], rsi
mov qword [rbp + 0xac8], rsi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xab0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xac0], xmm1
mov qword [rax + 0x10], rsi
mov r14d, 0xf
mov qword [rax + 0x18], r14
mov byte [rax], sil
mov rdx, qword [rbp + 0xa0]
cmp rdx, 0x10
jb 0x14005145c
inc rdx
mov rcx, qword [rbp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140051457
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005376d
call fcn.140059644
mov qword [rbp + 0x98], rsi
mov qword [rbp + 0xa0], r14
mov byte [rbp + 0x88], 0
lea rcx, [rbp + 0xab0]
mov rdx, qword [rbp + 0xab0]
mov r8, qword [rbp + 0xac8]
cmp r8, 0x10
cmovae rcx, rdx
mov rax, qword [0x140072278]
test rcx, rcx
jne 0x14005149f
movaps xmm0, xmm6
jmp 0x140051508
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rcx
movss xmm0, dword [rbp - 0x80]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x14006270c]
movss xmm2, dword [rax + 0x3ba8]
lea rdx, [rbp + 0x1c0]
mov rcx, qword [rax + 0x3ba0]
call fcn.14002a1f0
movss xmm0, dword [rbp + 0x1c0]
addss xmm0, dword [0x1400624b4]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1c0], xmm0
mov r8, qword [rbp + 0xac8]
mov rdx, qword [rbp + 0xab0]
lea rax, [rbp + 0xab0]
cmp r8, 0x10
cmovae rax, rdx
movdqa xmmword [rbp + 0x600], xmm10
addsd xmm12, qword [0x140062528]
cvttsd2si r8d, xmm12
mulss xmm0, xmm9
cvtss2sd xmm0, xmm0
movsd xmm1, qword [rbp + 0x410]
subsd xmm1, xmm0
cvttsd2si edx, xmm1
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x600]
movss xmm0, dword [0x140062658]
movd ecx, xmm0
call fcn.14004b4f0
nop
mov rdx, qword [rbp + 0xac8]
cmp rdx, 0x10
jb 0x1400515b0
inc rdx
mov rcx, qword [rbp + 0xab0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400515ab
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140053774
call fcn.140059644
mov qword [rbp + 0xac0], rsi
mov qword [rbp + 0xac8], r14
mov byte [rbp + 0xab0], 0
cmp byte [rsp + 0x50], 0
je 0x1400515fe
lea rdx, [r13 + 1]
mov rax, r12
cmp rdx, 0x1000
jb 0x1400515f6
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005377b
mov rcx, r12
call fcn.140059644
mov r13, qword [rbp + 0x48]
cmp byte [0x1400725cb], 0
je 0x140051708
mov rdx, qword [r13 + 0x18]
lea rcx, [rbp + 0xb20]
call fcn.14004e710
nop
mov rax, qword [0x1400726d0]
movaps xmm0, xmm11
movsd xmm1, qword [rbp - 0x70]
subsd xmm0, qword [0x140062550]
cvttsd2si r8d, xmm0
movss xmm0, dword [0x140062660]
movd ecx, xmm0
cmp qword [rax + 0xc0], 0
lea rax, [rbp + 0xb20]
jne 0x140051674
movdqa xmmword [rbp + 0x610], xmm10
subsd xmm1, qword [0x140062530]
lea r9, [rbp + 0x610]
jmp 0x140051689
movdqa xmmword [rbp + 0x620], xmm10
subsd xmm1, xmm8
lea r9, [rbp + 0x620]
cmp qword [rbp + 0xb38], 0x10
cmovae rax, qword [rbp + 0xb20]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
cvttsd2si edx, xmm1
call fcn.14004b4f0
nop
mov rdx, qword [rbp + 0xb38]
cmp rdx, 0x10
jb 0x1400516f3
inc rdx
mov rcx, qword [rbp + 0xb20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400516ee
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140053782
call fcn.140059644
mov qword [rbp + 0xb30], rsi
mov qword [rbp + 0xb38], r14
mov byte [rbp + 0xb20], 0
cmp byte [0x1400725db], 0
je 0x14005179d
lea rcx, [rbp - 0x40]
call fcn.140005350
mov r9d, eax
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm11
movsd xmm12, qword [rbp - 0x70]
cvtpd2ps xmm0, xmm12
movss dword [rbp + 0x1c8], xmm0
movss dword [rbp + 0x1cc], xmm1
mov ecx, dword [0x1400727e8]
add ecx, 0xfffffffb
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400727e4]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1d0], xmm0
movss dword [rbp + 0x1d4], xmm1
movss xmm1, dword [0x140062508]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0x1c8]
lea rdx, [rbp + 0x1d0]
mov rcx, qword [rbp + 0x50]
call fcn.140025940
jmp 0x1400517a3
movsd xmm12, qword [rbp - 0x70]
lea rdi, [rbp + 0x1718]
cmp byte [0x1400725d8], 0
je 0x1400519ce
mov rcx, qword [r13 + 0x10]
add rcx, 0x140
mov rbx, qword [rdi]
mov qword [rdi], rsi
xorps xmm0, xmm0
movups xmmword [rbp + 0xd80], xmm0
movsd xmm6, qword [rbp + 0x10]
movsd qword [rbp + 0xd90], xmm6
mov r8d, 0x18
lea rdx, [rbp + 0xd80]
call fcn.1400457d0
mov qword [rdi], rbx
movsd xmm0, qword [rbp + 0xd88]
cvtpd2ps xmm0, xmm0
cvtps2pd xmm1, xmm0
mulsd xmm1, qword [0x1400624c8]
cvtpd2ps xmm6, xmm1
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
movaps xmm9, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
movaps xmm8, xmm0
movsd xmm1, qword [rbp + 0xd80]
cvtpd2ps xmm1, xmm1
cvtps2pd xmm2, xmm1
mulsd xmm2, qword [0x1400624c8]
cvtpd2ps xmm6, xmm2
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
movaps xmm7, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
movaps xmm1, xmm0
mulss xmm1, xmm8
xorps xmm8, xmm8
cvtss2sd xmm8, xmm1
mulss xmm0, xmm9
xorps xmm6, xmm6
cvtss2sd xmm6, xmm0
xorps xmm7, xmmword [rbp - 0x10]
cvtss2sd xmm7, xmm7
movsd xmm0, qword [0x1400625f0]
mulsd xmm8, xmm0
mulsd xmm6, xmm0
mulsd xmm7, xmm0
addsd xmm7, xmm13
addsd xmm6, xmm15
addsd xmm8, xmm14
movaps xmm0, xmm14
unpcklpd xmm0, xmm15
movaps xmmword [rbp + 0x780], xmm0
movsd qword [rbp + 0x330], xmm13
movsd qword [rbp + 0x790], xmm13
lea rdx, [rbp + 0x780]
lea rcx, [rbp + 0x988]
call fcn.140044990
movsd xmm10, qword [rax]
movsd xmm9, qword [rax + 8]
movaps xmm0, xmm8
unpcklpd xmm0, xmm6
movaps xmmword [rbp + 0x7a0], xmm0
movsd qword [rbp + 0x330], xmm7
movsd qword [rbp + 0x7b0], xmm7
lea rdx, [rbp + 0x7a0]
lea rcx, [rbp + 0x978]
call fcn.140044990
movsd xmm8, qword [rax]
movsd xmm7, qword [rax + 8]
mov rax, qword [0x140072278]
mov rax, qword [rax + 0x4040]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140007920
mov r10, rax
mov rcx, qword [0x140072278]
movss xmm6, dword [0x1400624bc]
mov qword [rbp + 0x308], 0x3f800000
mov dword [rbp + 0x310], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x314], xmm0
lea rcx, [rbp + 0x308]
call fcn.140005350
cvtpd2ps xmm1, xmm7
cvtpd2ps xmm0, xmm8
movss dword [rbp + 0x1d8], xmm0
movss dword [rbp + 0x1dc], xmm1
cvtpd2ps xmm2, xmm9
cvtpd2ps xmm0, xmm10
movss dword [rbp + 0x1e0], xmm0
movss dword [rbp + 0x1e4], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x1d8]
lea rdx, [rbp + 0x1e0]
mov rcx, r10
call fcn.140025940
cmp byte [0x1400725d0], 0
je 0x140051a18
movups xmm0, xmmword [rbp - 0x50]
movdqa xmmword [rbp + 0x630], xmm0
movzx eax, byte [0x1400725e5]
mov byte [rsp + 0x28], al
movzx eax, byte [0x1400725cc]
mov byte [rsp + 0x20], al
movzx r9d, byte [0x1400725d4]
lea r8, [rbp + 0x630]
movzx edx, byte [0x1400725d1]
mov rcx, qword [r13 + 8]
call fcn.14004c1b0
cmp qword [rbp + 0x230], 0
je 0x1400526c4
cmp byte [0x1400725ca], 0
je 0x1400526c4
mov rcx, qword [r13 + 0x18]
add rcx, 0x438
call fcn.140057eb0
mov rbx, qword [rdi]
mov qword [rdi], rsi
mov dword [rbp + 0xc41], esi
mov word [rbp + 0xc45], si
mov byte [rbp + 0xc47], 0
mov dword [rbp + 0xc20], 0x85b3e12
mov qword [rbp + 0xc28], rax
lea rax, [rbp + 0x10e0]
mov qword [rbp + 0xc30], rax
mov qword [rbp + 0xc38], 0x80
mov eax, dword [0x1400722c0]
mov dword [rbp + 0xc24], eax
mov byte [rbp + 0xc40], 0
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, 0x28
lea r8, [rbp + 0xc20]
mov edx, 0x2201c4
mov rcx, qword [0x1400722b8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [rdi], rbx
lea rdx, [rbp + 0x10e0]
lea rcx, [rbp + 0xb40]
call fcn.140057660
nop
lea rcx, [rbp + 0xb40]
mov rax, qword [rbp + 0xb50]
cmp qword [rbp + 0xb58], 8
jb 0x140051b08
mov rdi, qword [rbp + 0xb40]
lea rbx, [rdi + rax*2]
jmp 0x140051b13
lea rbx, [rcx + rax*2]
lea rdi, [rbp + 0xb40]
xorps xmm0, xmm0
movups xmmword [rbp + 0xa60], xmm0
xor r12d, r12d
cmp rdi, rbx
jne 0x140051b42
mov qword [rbp + 0xa70], rsi
mov rax, r14
mov qword [rbp + 0xa78], rax
mov byte [rbp + 0xa60], r12b
jmp 0x140051c65
mov rsi, rbx
sub rsi, rdi
sar rsi, 1
mov rdx, r12
mov qword [rbp + 0xa70], rdx
mov qword [rbp + 0xa78], r14
movabs rax, 0x7fffffffffffffff
cmp rsi, rax
ja 0x1400538c0
cmp rsi, 0x10
jb 0x140051c10
or rsi, 0xf
cmp rsi, rax
jbe 0x140051b87
mov rsi, rax
jmp 0x140051b94
cmp rsi, 0x16
mov eax, 0x16
cmovb rsi, rax
mov rcx, rsi
add rcx, 1
mov rax, 0xffffffffffffffff
cmovb rcx, rax
cmp rcx, 0x1000
jb 0x140051be5
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400538ba
mov rcx, rax
call fcn.140059600
mov rcx, rax
test rax, rax
je 0x140053789
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
mov rdx, qword [rbp + 0xa70]
jmp 0x140051bfb
test rcx, rcx
je 0x140051bf8
call fcn.140059600
mov rdx, qword [rbp + 0xa70]
jmp 0x140051bfb
mov rax, r12
mov qword [rbp + 0xa60], rax
mov qword [rbp + 0xa78], rsi
nop dword [rax]
lea rcx, [rbp + 0xa60]
call fcn.140003110
movzx ecx, byte [rdi]
mov byte [rdx + rax], cl
mov rdx, qword [rbp + 0xa70]
inc rdx
mov qword [rbp + 0xa70], rdx
add rdi, 2
cmp rdi, rbx
jne 0x140051c10
lea rax, [rbp + 0xa60]
cmp qword [rbp + 0xa78], 0x10
cmovae rax, qword [rbp + 0xa60]
mov byte [rdx + rax], r12b
mov rax, qword [rbp + 0xa78]
mov rsi, qword [rbp + 0xa70]
lea rdx, [rbp + 0xa60]
mov r14, qword [rbp + 0xa60]
cmp rax, 0x10
cmovae rdx, r14
mov r15, qword [0x140072278]
movss xmm6, dword [rbp - 0x80]
movss xmm7, dword [0x14006270c]
test rdx, rdx
je 0x140051d0a
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rdx
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3ba8]
lea rdx, [rbp + 0x1e8]
mov rcx, qword [r15 + 0x3ba0]
call fcn.14002a1f0
movss xmm0, dword [rbp + 0x1e8]
movss xmm8, dword [0x1400624b4]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1e8], xmm0
mov rax, qword [rbp + 0xa78]
mov rsi, qword [rbp + 0xa70]
mov r14, qword [rbp + 0xa60]
mov r15, qword [0x140072278]
jmp 0x140051d13
movss xmm8, dword [0x1400624b4]
lea rbx, [rbp + 0xa60]
cmp rax, 0x10
setae r12b
cmovae rbx, r14
cmp rsi, 3
jb 0x140051d99
lea rdi, [rsi + rbx]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x58
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x140051d99
nop dword [rax]
cmp byte [rax], 0x58
jne 0x140051d65
cmp byte [rax + 1], 0x42
jne 0x140051d65
cmp byte [rax + 2], 0x4c
jne 0x140051d65
xor ecx, ecx
jmp 0x140051d6a
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x140051d8c
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x58
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x140051d50
jmp 0x140051d99
sub rax, rbx
cmp rax, 0xffffffffffffffff
jne 0x140051e70
lea rbx, [rbp + 0xa60]
test r12b, r12b
cmovne rbx, r14
cmp rsi, 3
jb 0x140051e0a
lea rdi, [rbx + rsi]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x58
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x140051e0a
nop word [rax + rax]
cmp byte [rax], 0x58
jne 0x140051de5
cmp byte [rax + 1], 0x53
jne 0x140051de5
cmp byte [rax + 2], 0x58
jne 0x140051de5
xor ecx, ecx
jmp 0x140051dea
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x140051e67
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x58
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x140051dd0
lea rbx, [rbp + 0xa60]
test r12b, r12b
cmovne rbx, r14
cmp rsi, 3
jb 0x140051f39
lea rdi, [rbx + rsi]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x50
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x140051f39
cmp byte [rax], 0x50
jne 0x140051f01
cmp byte [rax + 1], 0x53
jne 0x140051f01
cmp byte [rax + 2], 0x4e
jne 0x140051f01
xor ecx, ecx
jmp 0x140051f06
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x140051e0a
mov eax, dword [str.XBOX]
mov dword [rbp + 0xfa0], eax
movzx eax, byte [0x140061b3c]
mov byte [rbp + 0xfa4], al
xor esi, esi
mov qword [rsp + 0x30], rsi
lea rax, [rbp + 0xfa0]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3ba8]
lea rdx, [rbp + 0x1f0]
mov rcx, qword [r15 + 0x3ba0]
call fcn.14002a1f0
movss xmm0, dword [rbp + 0x1f0]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1f0], xmm0
movups xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x640], xmm1
lea rax, [rbp + 0xfa0]
lea r9, [rbp + 0x640]
jmp 0x1400525c8
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x140051f2c
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x50
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x140051e43
jmp 0x140051f39
sub rax, rbx
cmp rax, 0xffffffffffffffff
jne 0x140052010
lea rbx, [rbp + 0xa60]
test r12b, r12b
cmovne rbx, r14
cmp rsi, 3
jb 0x140051faa
lea rdi, [rbx + rsi]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x50
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x140051faa
nop word [rax + rax]
cmp byte [rax], 0x50
jne 0x140051f85
cmp byte [rax + 1], 0x53
jne 0x140051f85
cmp byte [rax + 2], 0x35
jne 0x140051f85
xor ecx, ecx
jmp 0x140051f8a
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x140052007
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x50
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x140051f70
lea rbx, [rbp + 0xa60]
test r12b, r12b
cmovne rbx, r14
cmp rsi, 3
jb 0x1400520bb
lea rdi, [rsi + rbx]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x57
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x1400520bb
cmp byte [rax], 0x57
jne 0x140052092
cmp byte [rax + 1], 0x49
jne 0x140052092
cmp byte [rax + 2], 0x4e
jne 0x140052092
xor ecx, ecx
jmp 0x140052097
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x140051faa
mov dword [rbp + 0xa9c], 0x4e5350
xor esi, esi
mov qword [rsp + 0x30], rsi
lea rax, [rbp + 0xa9c]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3ba8]
lea rdx, [rbp + 0x1f8]
mov rcx, qword [r15 + 0x3ba0]
call fcn.14002a1f0
movss xmm0, dword [rbp + 0x1f8]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1f8], xmm0
movups xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x650], xmm1
lea rax, [rbp + 0xa9c]
lea r9, [rbp + 0x650]
jmp 0x1400525c8
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x140052118
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x57
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x140051fe3
lea rbx, [rbp + 0xa60]
test r12b, r12b
cmovne rbx, r14
cmp rsi, 3
jb 0x1400521db
lea rdi, [rsi + rbx]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x53
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x1400521db
cmp byte [rax], 0x53
jne 0x1400521a3
cmp byte [rax + 1], 0x57
jne 0x1400521a3
cmp byte [rax + 2], 0x48
jne 0x1400521a3
xor ecx, ecx
jmp 0x1400521a8
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x1400520bb
mov dword [rbp + 0xa98], 0x4e4957
xor esi, esi
mov qword [rsp + 0x30], rsi
lea rax, [rbp + 0xa98]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3ba8]
lea rdx, [rbp + 0x200]
mov rcx, qword [r15 + 0x3ba0]
call fcn.14002a1f0
movss xmm0, dword [rbp + 0x200]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x200], xmm0
movups xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x660], xmm1
lea rax, [rbp + 0xa98]
lea r9, [rbp + 0x660]
jmp 0x1400525c8
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x1400521ce
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x53
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x1400520f4
jmp 0x1400521db
sub rax, rbx
cmp rax, 0xffffffffffffffff
jne 0x14005252e
lea rcx, [rbp + 0xa60]
test r12b, r12b
cmovne rcx, r14
mov qword [rsp + 0x20], 3
lea r9, [0x140061b40]
mov rdx, rsi
call fcn.140058ad0
cmp rax, 0xffffffffffffffff
jne 0x14005252e
lea rdx, [0x140061b4c]
lea rcx, [rbp + 0xa60]
call fcn.1400577b0
cmp rax, 0xffffffffffffffff
je 0x1400522b4
mov dword [rbp + 0xa94], 0x43414d
movss dword [rsp + 0x20], xmm6
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0xa94]
lea rcx, [rbp + 0x8e0]
call fcn.14000bd90
movups xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x670], xmm1
movaps xmm0, xmm11
subsd xmm0, qword [0x140062578]
cvttsd2si r8d, xmm0
movaps xmm1, xmm12
addsd xmm1, qword [0x140062528]
cvttsd2si edx, xmm1
lea rax, [rbp + 0xa94]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rbp + 0x670]
movss xmm0, dword [0x140062660]
movd ecx, xmm0
call fcn.14004b4f0
xor esi, esi
jmp 0x14005260a
lea rdx, [0x140061b50]
lea rcx, [rbp + 0xa60]
call fcn.1400577b0
cmp rax, 0xffffffffffffffff
je 0x14005236d
mov eax, dword [str.LINUX]
mov dword [rbp + 0xfb0], eax
movzx eax, word [0x140061b58]
mov word [rbp + 0xfb4], ax
movss dword [rsp + 0x20], xmm6
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0xfb0]
lea rcx, [rbp + 0x8e8]
call fcn.14000bd90
movups xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x680], xmm1
movaps xmm0, xmm11
subsd xmm0, qword [0x140062578]
cvttsd2si r8d, xmm0
movaps xmm1, xmm12
addsd xmm1, qword [0x140062528]
cvttsd2si edx, xmm1
lea rax, [rbp + 0xfb0]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rbp + 0x680]
movss xmm0, dword [0x140062660]
movd ecx, xmm0
call fcn.14004b4f0
xor esi, esi
jmp 0x14005260a
lea rdx, [0x140061b5c]
lea rcx, [rbp + 0xa60]
call fcn.1400577b0
cmp rax, 0xffffffffffffffff
je 0x140052416
mov dword [rbp + 0xa90], 0x534f49
movss dword [rsp + 0x20], xmm6
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0xa90]
lea rcx, [rbp + 0x8f0]
call fcn.14000bd90
movups xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x690], xmm1
movaps xmm0, xmm11
subsd xmm0, qword [0x140062578]
cvttsd2si r8d, xmm0
movaps xmm1, xmm12
addsd xmm1, qword [0x140062528]
cvttsd2si edx, xmm1
lea rax, [rbp + 0xa90]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rbp + 0x690]
movss xmm0, dword [0x140062660]
movd ecx, xmm0
call fcn.14004b4f0
xor esi, esi
jmp 0x14005260a
lea rdx, [0x140061b60]
lea rcx, [rbp + 0xa60]
call fcn.1400577b0
cmp rax, 0xffffffffffffffff
je 0x1400524c6
movabs rax, 0x44494f52444e41
mov qword [rbp + 0xfb8], rax
movss dword [rsp + 0x20], xmm6
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0xfb8]
lea rcx, [rbp + 0x8f8]
call fcn.14000bd90
movups xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x6a0], xmm1
movaps xmm0, xmm11
subsd xmm0, qword [0x140062578]
cvttsd2si r8d, xmm0
movaps xmm1, xmm12
addsd xmm1, qword [0x140062528]
cvttsd2si edx, xmm1
lea rax, [rbp + 0xfb8]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rbp + 0x6a0]
movss xmm0, dword [0x140062660]
movd ecx, xmm0
call fcn.14004b4f0
xor esi, esi
jmp 0x14005260a
lea rcx, [rbp + 0xa60]
call fcn.140003110
movups xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x6b0], xmm1
movaps xmm0, xmm11
subsd xmm0, qword [0x140062578]
cvttsd2si r8d, xmm0
movaps xmm1, xmm12
addsd xmm1, qword [0x140062528]
cvttsd2si edx, xmm1
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rbp + 0x6b0]
movss xmm0, dword [0x140062660]
movd ecx, xmm0
call fcn.14004b4f0
xor esi, esi
jmp 0x14005260a
mov eax, dword [str.SWITCH]
mov dword [rbp + 0xfa8], eax
movzx eax, word [0x140061b48]
mov word [rbp + 0xfac], ax
movzx eax, byte [0x140061b4a]
mov byte [rbp + 0xfae], al
xor esi, esi
mov qword [rsp + 0x30], rsi
lea rax, [rbp + 0xfa8]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3ba8]
lea rdx, [rbp + 0x208]
mov rcx, qword [r15 + 0x3ba0]
call fcn.14002a1f0
movss xmm0, dword [rbp + 0x208]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x208], xmm0
movups xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x6c0], xmm1
lea rax, [rbp + 0xfa8]
lea r9, [rbp + 0x6c0]
movaps xmm0, xmm12
addsd xmm0, qword [0x140062528]
mov qword [rsp + 0x30], rax
cvttsd2si edx, xmm0
movaps xmm1, xmm11
mov byte [rsp + 0x28], 1
movss xmm0, dword [0x140062660]
subsd xmm1, qword [0x140062578]
mov byte [rsp + 0x20], 1
movd ecx, xmm0
cvttsd2si r8d, xmm1
call fcn.14004b4f0
nop
mov rdx, qword [rbp + 0xa78]
cmp rdx, 0x10
jb 0x14005264b
inc rdx
mov rcx, qword [rbp + 0xa60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052646
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140053789
call fcn.140059644
mov qword [rbp + 0xa70], rsi
mov ecx, 0xf
mov qword [rbp + 0xa78], rcx
mov byte [rbp + 0xa60], 0
mov rdx, qword [rbp + 0xb58]
cmp rdx, 8
jb 0x1400526ab
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xb40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400526a6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140053790
call fcn.140059644
mov qword [rbp + 0xb50], rsi
mov qword [rbp + 0xb58], 7
mov word [rbp + 0xb40], si
lea r14, [rbp + 0x1718]
mov r15d, 0x28
cmp byte [0x1400725dc], 0
je 0x1400528f3
movaps xmm0, xmmword [0x140062b00]
mov rax, qword [r13 + 8]
add rax, 0x158
movaps xmmword [rbp + 0x320], xmm0
movsd xmm6, qword [rbp + 0x360]
movsd qword [rbp + 0x3b0], xmm6
movsd qword [rbp + 0x330], xmm6
mov rbx, qword [r14]
mov qword [r14], rsi
mov dword [rbp + 0xd59], esi
mov word [rbp + 0xd5d], si
mov byte [rbp + 0xd5f], 0
mov dword [rbp + 0xd38], 0x85b3e12
mov qword [rbp + 0xd40], rax
lea rax, [rbp + 0x320]
mov qword [rbp + 0xd48], rax
mov qword [rbp + 0xd50], 0x18
mov eax, dword [0x1400722c0]
mov dword [rbp + 0xd3c], eax
mov byte [rbp + 0xd58], 1
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, r15d
lea r8, [rbp + 0xd38]
mov edx, 0x2201c4
mov rcx, qword [0x1400722b8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [r14], rbx
movaps xmm0, xmmword [0x140062b00]
mov rax, qword [r13 + 8]
add rax, 0x158
movaps xmmword [rbp + 0x7c0], xmm0
movsd qword [rbp + 0x3b0], xmm6
movsd qword [rbp + 0x7d0], xmm6
mov qword [r14], rsi
mov dword [rbp + 0xc69], esi
mov word [rbp + 0xc6d], si
mov byte [rbp + 0xc6f], 0
mov dword [rbp + 0xc48], 0x85b3e12
mov qword [rbp + 0xc50], rax
lea rax, [rbp + 0x7c0]
mov qword [rbp + 0xc58], rax
mov qword [rbp + 0xc60], 0x18
mov eax, dword [0x1400722c0]
mov dword [rbp + 0xc4c], eax
mov byte [rbp + 0xc68], 1
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, r15d
lea r8, [rbp + 0xc48]
mov edx, 0x2201c4
mov rcx, qword [0x1400722b8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [r14], rbx
movaps xmm0, xmmword [0x140062b00]
mov rax, qword [r13 + 8]
add rax, 0x158
movaps xmmword [rbp + 0x3a0], xmm0
movsd qword [rbp + 0xbb0], xmm6
movsd qword [rbp + 0x3b0], xmm6
mov qword [r14], rsi
mov dword [rbp + 0xc91], esi
mov word [rbp + 0xc95], si
mov byte [rbp + 0xc97], 0
mov dword [rbp + 0xc70], 0x85b3e12
mov qword [rbp + 0xc78], rax
lea rax, [rbp + 0x3a0]
mov qword [rbp + 0xc80], rax
mov qword [rbp + 0xc88], 0x18
mov eax, dword [0x1400722c0]
mov dword [rbp + 0xc74], eax
mov byte [rbp + 0xc90], 1
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, r15d
lea r8, [rbp + 0xc70]
mov edx, 0x2201c4
mov rcx, qword [0x1400722b8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [r14], rbx
cmp byte [0x1400725d6], 0
je 0x140052b11
mov rax, qword [0x1400726d0]
cmp qword [rax + 0x10], 0
je 0x140052b11
movaps xmm0, xmmword [0x140062af0]
movaps xmmword [rbp + 0x7e0], xmm0
movsd xmm6, qword [rbp + 0x340]
movsd qword [rbp + 0x3d0], xmm6
movsd qword [rbp + 0x7f0], xmm6
mov rdi, qword [r14]
mov qword [r14], rsi
mov dword [rbp + 0xcb9], esi
mov word [rbp + 0xcbd], si
mov byte [rbp + 0xcbf], 0
mov dword [rbp + 0xc98], 0x85b3e12
mov rbx, qword [rbp + 0x240]
add rbx, 0x158
mov qword [rbp + 0xca0], rbx
lea rax, [rbp + 0x7e0]
mov qword [rbp + 0xca8], rax
mov qword [rbp + 0xcb0], 0x18
mov eax, dword [0x1400722c0]
mov dword [rbp + 0xc9c], eax
mov byte [rbp + 0xcb8], 1
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, r15d
lea r8, [rbp + 0xc98]
mov edx, 0x2201c4
mov rcx, qword [0x1400722b8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movaps xmm0, xmmword [0x140062af0]
movaps xmmword [rbp + 0x800], xmm0
movsd qword [rbp + 0x3d0], xmm6
movsd qword [rbp + 0x810], xmm6
mov qword [r14], rsi
mov dword [rbp + 0xce1], esi
mov word [rbp + 0xce5], si
mov byte [rbp + 0xce7], 0
mov dword [rbp + 0xcc0], 0x85b3e12
mov qword [rbp + 0xcc8], rbx
lea rax, [rbp + 0x800]
mov qword [rbp + 0xcd0], rax
mov qword [rbp + 0xcd8], 0x18
mov eax, dword [0x1400722c0]
mov dword [rbp + 0xcc4], eax
mov byte [rbp + 0xce0], 1
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, r15d
lea r8, [rbp + 0xcc0]
mov edx, 0x2201c4
mov rcx, qword [0x1400722b8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movaps xmm0, xmmword [0x140062af0]
movaps xmmword [rbp + 0x3c0], xmm0
movsd qword [rbp + 0xbb0], xmm6
movsd qword [rbp + 0x3d0], xmm6
mov qword [r14], rsi
mov dword [rbp + 0xd09], esi
mov word [rbp + 0xd0d], si
mov byte [rbp + 0xd0f], 0
mov dword [rbp + 0xce8], 0x85b3e12
mov qword [rbp + 0xcf0], rbx
lea rax, [rbp + 0x3c0]
mov qword [rbp + 0xcf8], rax
mov qword [rbp + 0xd00], 0x18
mov eax, dword [0x1400722c0]
mov dword [rbp + 0xcec], eax
mov byte [rbp + 0xd08], 1
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, r15d
lea r8, [rbp + 0xce8]
mov edx, 0x2201c4
mov rcx, qword [0x1400722b8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [r14], rdi
cmp byte [0x1400725df], 0
je 0x140052b80
mov rax, qword [0x1400726d0]
mov rcx, qword [rax + 0xc0]
add rcx, 0x25b8
call fcn.1400580b0
xor eax, eax
movss xmm1, dword [0x140062708]
comiss xmm0, xmm1
jb 0x140052b59
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x140052b59
movabs rcx, 0x8000000000000000
mov rax, rcx
cvttss2si rcx, xmm0
add rax, 0x10f0
add rcx, rax
call fcn.140057eb0
lea rcx, [rax + 0xf0]
movss xmm1, dword [0x1400626f4]
call fcn.140058500
cmp byte [0x1400725de], 0
je 0x140052ba2
mov rax, qword [0x1400726d0]
mov rcx, qword [rax + 0x18]
add rcx, 0x64
movss xmm1, dword [rbp - 0x80]
call fcn.140058500
cmp byte [0x1400725ce], 0
je 0x140052c77
mov rax, qword [0x1400726d0]
mov rcx, qword [rax + 0xc0]
add rcx, 0x25b8
call fcn.140057eb0
mov rdi, rax
mov ecx, 0x20
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x140052c77
mov byte [rbp + 0xa58], 1
mov rbx, qword [r14]
mov qword [r14], rsi
mov dword [rbp + 0xd31], esi
mov word [rbp + 0xd35], si
mov byte [rbp + 0xd37], 0
mov dword [rbp + 0xd10], 0x85b3e12
lea rax, [rdi + 0x6e2]
mov qword [rbp + 0xd18], rax
lea rax, [rbp + 0xa58]
mov qword [rbp + 0xd20], rax
mov qword [rbp + 0xd28], 1
mov eax, dword [0x1400722c0]
mov dword [rbp + 0xd14], eax
mov byte [rbp + 0xd30], 1
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
mov r9d, r15d
lea r8, [rbp + 0xd10]
mov edx, 0x2201c4
mov rcx, qword [0x1400722b8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [r14], rbx
mov rax, qword [0x1400726d0]
mov rcx, qword [rax + 0xc0]
add rcx, 0x53d8
cmp byte [0x1400725ea], 0
je 0x140052c99
mov dl, 1
jmp 0x140052c9b
xor edx, edx
call fcn.1400585d0
cmp byte [0x1400725e6], 0
je 0x140052d5f
xorps xmm0, xmm0
movups xmmword [rbp + 0xba0], xmm0
movabs rcx, 0xff00ff00ff00ff00
mov qword [rbp + 0xba8], rcx
mov qword [rbp + 0xbb0], r14
mov rbx, qword [r14]
mov rax, rbx
xor rax, rcx
mov qword [rbp + 0xba0], rax
mov qword [r14], rsi
mov rax, qword [0x1400722a8]
mov ecx, 0x10
call rax
nop
mov qword [r14], rbx
test ax, ax
je 0x140052d5f
mov rax, qword [0x1400726d0]
mov rcx, qword [rax + 0xc0]
add rcx, 0x25b8
call fcn.140057eb0
mov rbx, rax
lea rcx, [rax + 0xcecd]
movss xmm6, dword [0x140062674]
movaps xmm1, xmm6
call fcn.140058500
lea rcx, [rbx + 0x950]
movaps xmm1, xmm6
call fcn.140058500
lea rcx, [rbx + 0x954]
movaps xmm1, xmm6
call fcn.140058500
lea rcx, [rbx + 0x7e4]
movss xmm1, dword [0x1400626ec]
call fcn.140058500
mov rsi, qword [rbp + 0x20]
mov r15, qword [rbp - 0x20]
mov r12, 0xffffffffffffffff
mov eax, dword [0x1400727e8]
cdq
sub eax, edx
sar eax, 1
movd xmm7, eax
cvtdq2pd xmm7, xmm7
mov eax, dword [0x1400727e4]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm0, qword [rbp - 0x70]
movsd xmm1, qword [0x140062510]
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm6, xmm0
subsd xmm7, qword [rbp - 0x68]
movsd xmm1, qword [0x140062510]
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm0, xmm6
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x140052dd6
xorps xmm8, xmm8
sqrtsd xmm8, xmm0
jmp 0x140052ddf
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movaps xmm8, xmm0
movss xmm1, dword [0x140071964]
cvtps2pd xmm1, xmm1
comisd xmm1, xmm8
jbe 0x140052e9b
movsd xmm0, qword [rbp + 0x58]
comisd xmm0, xmm8
jbe 0x140052e9b
cmp dword [r13 + 0x3c], 0xfa
jge 0x140052e9b
movsd qword [rbp + 0x58], xmm8
test r15, r15
je 0x140052e35
lock inc dword [r15 + 8]
mov r15, qword [rbp + 0xaa8]
mov qword [rbp - 0x20], r15
mov r13, qword [rbp + 0xaa0]
mov rdi, r13
mov qword [rsp + 0x70], r13
mov qword [rbp + 0xa80], r13
mov rbx, qword [rbp + 0xa88]
mov qword [rbp + 0xa88], r15
test rbx, rbx
je 0x140052ea0
mov eax, r12d
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x140052e82
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r12d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140052e82
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
mov rdi, qword [rbp + 0xa80]
mov qword [rsp + 0x70], rdi
mov rax, qword [rbp + 0xaa8]
mov qword [rbp - 0x20], rax
jmp 0x140052ea0
mov rdi, qword [rsp + 0x70]
cmp byte [0x14006b058], 0
je 0x140053686
movsd xmm11, qword [rbp + 0x10]
movaps xmm6, xmm11
movaps xmm7, xmm11
mov rcx, qword [rdi + 8]
lea r15, [rbp + 0x1718]
mov rbx, qword [r15]
xor r14d, r14d
mov qword [r15], r14
test rcx, rcx
jne 0x140052ee9
xorps xmm0, xmm0
movups xmmword [rbp + 0x388], xmm0
movsd qword [rbp + 0x398], xmm11
jmp 0x140052f02
mov r8d, 0x6d
lea rdx, [rbp + 0x388]
call fcn.14004a070
movups xmm0, xmmword [rbp + 0x388]
mov qword [rsi], rbx
movaps xmmword [rbp + 0x820], xmm0
movsd xmm0, qword [rbp + 0x398]
movsd qword [rbp + 0x830], xmm0
lea rdx, [rbp + 0x820]
lea rcx, [rbp + 0x968]
call fcn.140044990
movsd xmm9, qword [rax]
movsd xmm10, qword [rax + 8]
cmp byte [0x1400725dd], r14b
je 0x140052fd2
mov rcx, qword [rdi + 8]
mov rbx, qword [r15]
mov qword [r15], r14
test rcx, rcx
je 0x140052f68
mov r8d, 0x6d
lea rdx, [rbp + 0x998]
call fcn.14004a070
mov qword [rsi], rbx
mov rcx, qword [rdi + 8]
mov qword [r15], r14
test rcx, rcx
jne 0x140052f8c
xorps xmm0, xmm0
movups xmmword [rbp + 0x370], xmm0
movsd qword [rbp + 0x380], xmm11
jmp 0x140052fa5
mov r8d, 0x6d
lea rdx, [rbp + 0x370]
call fcn.14004a070
movups xmm0, xmmword [rbp + 0x370]
mov qword [rsi], rbx
movaps xmmword [rbp + 0x840], xmm0
movsd xmm0, qword [rbp + 0x380]
movsd qword [rbp + 0x850], xmm0
lea rdx, [rbp + 0x840]
lea rcx, [rbp + 0x938]
jmp 0x140053158
cmp byte [0x1400725cf], r14b
je 0x140053031
mov r8d, 0x42
lea rdx, [rbp + 0x9b0]
mov rcx, qword [rdi + 8]
call fcn.14004a070
mov r8d, 0x42
lea rdx, [rbp + 0x9c8]
mov rcx, qword [rdi + 8]
call fcn.14004a070
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x860], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x870], xmm1
lea rdx, [rbp + 0x860]
lea rcx, [rbp + 0x948]
jmp 0x140053158
cmp byte [0x1400725e7], r14b
je 0x1400530fe
mov r8d, 0x25
lea rdx, [rbp + 0x9e0]
mov rcx, qword [rdi + 8]
call fcn.14004a070
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x880], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x890], xmm1
lea rdx, [rbp + 0x880]
lea rcx, [rbp + 0x420]
call fcn.140044990
mov r8d, 8
lea rdx, [rbp + 0x9f8]
mov rcx, qword [rdi + 8]
call fcn.14004a070
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x8a0], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x8b0], xmm1
lea rdx, [rbp + 0x8a0]
lea rcx, [rbp + 0x6d0]
call fcn.140044990
mov r8d, 8
lea rdx, [rbp + 0xa10]
mov rcx, qword [rdi + 8]
call fcn.14004a070
movsd xmm6, qword [rbp + 0x6d0]
subsd xmm6, qword [rbp + 0x420]
mulsd xmm6, qword [0x1400624e8]
addsd xmm6, qword [rbp + 0x420]
movsd xmm7, qword [rbp + 0x428]
jmp 0x140053166
cmp byte [0x1400725eb], r14b
je 0x140053166
mov r8d, 2
lea rdx, [rbp + 0xa28]
mov rcx, qword [rdi + 8]
call fcn.14004a070
mov r8d, 2
lea rdx, [rbp + 0xa40]
mov rcx, qword [rdi + 8]
call fcn.14004a070
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x8c0], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x8d0], xmm1
lea rdx, [rbp + 0x8c0]
lea rcx, [rbp + 0x958]
call fcn.140044990
movsd xmm6, qword [rax]
movsd xmm7, qword [rax + 8]
cmp byte [0x1400725e0], r14b
je 0x14005318a
movss xmm0, dword [0x140071964]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm8
jbe 0x14005318a
cmp byte [0x1400725dd], r14b
jne 0x1400531a9
cmp byte [0x1400725cf], r14b
jne 0x1400531a9
cmp byte [0x1400725e7], r14b
jne 0x1400531a9
cmp byte [0x1400725eb], r14b
je 0x14005325b
mov rax, qword [0x140072278]
mov rax, qword [rax + 0x4040]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.140007920
mov r10, rax
movaps xmm0, xmmword [0x140062ae0]
movups xmmword [rbp + 0x6e0], xmm0
lea rcx, [rbp + 0x6e0]
call fcn.140005350
mov r9d, eax
cvtpd2ps xmm1, xmm7
cvtpd2ps xmm0, xmm6
movss dword [rbp + 0x210], xmm0
movss dword [rbp + 0x214], xmm1
mov eax, dword [0x1400727e8]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400727e4]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x218], xmm0
movss dword [rbp + 0x21c], xmm1
movss xmm1, dword [0x1400624bc]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0x210]
lea rdx, [rbp + 0x218]
mov rcx, r10
call fcn.140025940
cmp byte [0x1400725fa], r14b
je 0x14005327f
movss xmm0, dword [0x140071964]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm8
jbe 0x14005327f
cmp byte [0x1400725dd], r14b
jne 0x14005329e
cmp byte [0x1400725cf], r14b
jne 0x14005329e
cmp byte [0x1400725e7], r14b
jne 0x14005329e
cmp byte [0x1400725eb], r14b
je 0x1400535e4
mov rdx, qword [rdi + 0x18]
lea rcx, [rbp + 0xd98]
call fcn.14004e710
nop
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
mov r14, qword [rbp + 0xda8]
sub rax, r14
cmp rax, 8
jb 0x1400538a2
lea r15, [rbp + 0xd98]
mov r13, qword [rbp + 0xdb0]
cmp r13, 0x10
setae byte [rsp + 0x50]
mov r12, qword [rbp + 0xd98]
cmovae r15, r12
xorps xmm0, xmm0
movups xmmword [rbp + 0x68], xmm0
xor edx, edx
mov qword [rbp + 0x78], rdx
mov qword [rbp + 0x80], rdx
lea rsi, [r14 + 8]
mov edi, 0xf
lea rbx, [rbp + 0x68]
cmp rsi, rdi
jbe 0x140053393
mov rdi, rsi
or rdi, 0xf
cmp rdi, rcx
jbe 0x140053329
mov rdi, rcx
jmp 0x140053336
cmp rdi, 0x16
mov eax, 0x16
cmovb rdi, rax
mov rcx, rdi
add rcx, 1
mov rax, 0xffffffffffffffff
cmovb rcx, rax
cmp rcx, 0x1000
jb 0x14005337d
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400538c6
mov rcx, rax
call fcn.140059600
test rax, rax
je 0x140053797
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x14005338f
test rcx, rcx
je 0x14005338c
call fcn.140059600
mov rbx, rax
jmp 0x14005338f
mov rbx, rdx
mov qword [rbp + 0x68], rbx
mov qword [rbp + 0x78], rsi
mov qword [rbp + 0x80], rdi
mov rax, qword [str.Target:]
mov qword [rbx], rax
lea rcx, [rbx + 8]
mov r8, r14
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbx + rsi], 0
xor r8d, r8d
lea rdx, [0x14005c9d6]
lea rcx, [rbp + 0x68]
call fcn.1400032a0
xorps xmm0, xmm0
movups xmmword [rbp + 0xae0], xmm0
xor r14d, r14d
mov qword [rbp + 0xaf0], r14
mov qword [rbp + 0xaf8], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xae0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xaf0], xmm1
mov qword [rax + 0x10], r14
mov ebx, 0xf
mov qword [rax + 0x18], rbx
mov byte [rax], r14b
mov rdx, qword [rbp + 0x80]
cmp rdx, 0x10
jb 0x14005344c
inc rdx
mov rcx, qword [rbp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140053447
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005379e
call fcn.140059644
mov qword [rbp + 0x78], r14
mov qword [rbp + 0x80], rbx
mov byte [rbp + 0x68], 0
lea r8, [rbp + 0xae0]
mov r9, qword [rbp + 0xae0]
mov r10, qword [rbp + 0xaf8]
cmp r10, 0x10
cmovae r8, r9
movups xmm0, xmmword [0x140072490]
movups xmmword [rbp + 0x6f0], xmm0
lea rcx, [rbp + 0x6f0]
call fcn.140005350
mov r11d, eax
mov eax, dword [0x1400727e8]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x5a
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400727e4]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x41
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x220], xmm0
movss dword [rbp + 0x224], xmm1
test r11d, 0xff000000
je 0x14005355a
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1400534e3
add rcx, r8
cmp r8, rcx
je 0x14005355a
mov rdx, qword [rbp + 0x50]
mov rax, qword [rdx + 0x38]
movups xmm0, xmmword [rdx + 0x88]
movups xmmword [rbp + 0x700], xmm0
mov byte [rsp + 0x48], 0
movss xmm0, dword [rsp + 0x58]
movss dword [rsp + 0x40], xmm0
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], r8
lea rcx, [rbp + 0x700]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r11d
mov r9, qword [rbp + 0x220]
movss xmm2, dword [rax + 0x10]
mov rcx, qword [rax + 8]
call fcn.14002a410
mov r10, qword [rbp + 0xaf8]
mov r9, qword [rbp + 0xae0]
cmp r10, 0x10
jb 0x140053591
lea rdx, [r10 + 1]
mov rax, r9
cmp rdx, 0x1000
jb 0x140053589
add rdx, 0x27
mov r9, qword [r9 - 8]
sub rax, r9
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400537a5
mov rcx, r9
call fcn.140059644
mov qword [rbp + 0xaf0], r14
mov qword [rbp + 0xaf8], rbx
mov byte [rbp + 0xae0], 0
cmp byte [rsp + 0x50], 0
je 0x1400535df
lea rdx, [r13 + 1]
mov rax, r12
cmp rdx, 0x1000
jb 0x1400535d7
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400537ac
mov rcx, r12
call fcn.140059644
mov rdi, qword [rsp + 0x70]
cmp byte [0x1400725e4], 0
je 0x140053611
movss xmm0, dword [0x140071964]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm8
jbe 0x140053611
cmp rdi, qword [rbp + 0x348]
jne 0x140053611
cmp byte [0x1400725dd], 0
jne 0x14005362c
cmp byte [0x1400725cf], 0
jne 0x14005362c
cmp byte [0x1400725e7], 0
jne 0x14005362c
cmp byte [0x1400725eb], 0
je 0x140053686
movaps xmm0, xmmword [0x140062970]
movdqa xmmword [rbp + 0x710], xmm0
subsd xmm10, qword [0x140062598]
cvttsd2si r8d, xmm10
subsd xmm9, qword [0x140062530]
cvttsd2si edx, xmm9
lea rax, [0x140061b74]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rbp + 0x710]
movss xmm0, dword [0x140062660]
movd ecx, xmm0
call fcn.14004b4f0
nop
mov rcx, qword [rbp - 0x20]
test rcx, rcx
je 0x1400536eb
mov r12, 0xffffffffffffffff
mov eax, r12d
lock xadd dword [rcx + 8], eax
jmp 0x1400536b1
mov qword [rsi], rbx
test r15, r15
je 0x1400536eb
mov eax, r12d
lock xadd dword [r15 + 8], eax
cmp eax, 1
jne 0x1400536df
mov rbx, qword [rbp + 0xaa8]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r12d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x1400536df
mov rcx, qword [rbp + 0xaa8]
mov rax, qword [rcx]
call qword [rax + 8]
mov rcx, qword [rbp + 0xa80]
mov qword [rsp + 0x70], rcx
mov rdx, qword [rbp + 0x228]
add rdx, 0x10
mov qword [rbp + 0x228], rdx
mov r12, 0xffffffffffffffff
cmp rdx, qword [rbp + 0x250]
je 0x1400537b3
movss xmm8, dword [rsp + 0x54]
movsd xmm7, qword [rbp - 0x78]
movsd xmm9, qword [rbp]
mov r14, qword [rbp + 0x50]
xor edi, edi
jmp 0x14004fa55
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]
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]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
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]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov rsi, qword [rbp + 0xad0]
movsd xmm7, qword [rbp + 0x58]
cmp byte [0x14006b058], 0
je 0x14005384c
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x250], xmm0
mov rcx, qword [rbp + 0xa88]
test rcx, rcx
je 0x1400537ee
lock inc dword [rcx + 8]
mov rsi, qword [rbp + 0xad0]
movaps xmm6, xmmword [rbp + 0xa80]
movdqa xmmword [rbp + 0x250], xmm6
lea rdx, [rbp + 0x250]
movaps xmm0, xmm7
call fcn.14004dcd0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x240], xmm1
mov rcx, qword [rbp + 0xa88]
test rcx, rcx
je 0x140053835
lock inc dword [rcx + 8]
mov rsi, qword [rbp + 0xad0]
movaps xmm6, xmmword [rbp + 0xa80]
movdqa xmmword [rbp + 0x240], xmm6
lea rdx, [rbp + 0x240]
movaps xmm0, xmm7
call fcn.14004e170
test rsi, rsi
je 0x1400538a8
mov rcx, rsi
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
nop
mov rcx, qword [rbp + 0xa88]
test rcx, rcx
je 0x14005389d
mov eax, r12d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x14005389d
mov rbx, qword [rbp + 0xa88]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r12d
cmp r12d, 1
jne 0x14005389d
mov rcx, qword [rbp + 0xa88]
mov rax, qword [rcx]
call qword [rax + 8]
nop
jmp 0x14004f84f
call fcn.140001740
nop
call fcn.1400440b0
nop
call fcn.1400016a0
int3
call fcn.140001740
nop
call fcn.1400016a0
int3
call fcn.140001740
nop
call fcn.1400016a0
int3