Function at 0x14004ca70
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 - 0x14e0]
mov eax, 0x15e0
call fcn.14005ec00
sub rsp, rax
movaps xmmword [rsp + 0x15d0], xmm6
movaps xmmword [rsp + 0x15c0], xmm7
movaps xmmword [rsp + 0x15b0], xmm8
movaps xmmword [rsp + 0x15a0], xmm9
movaps xmmword [rsp + 0x1590], xmm10
movaps xmmword [rsp + 0x1580], xmm11
movaps xmmword [rsp + 0x1570], xmm12
movaps xmmword [rsp + 0x1560], xmm13
movaps xmmword [rsp + 0x1550], xmm14
movaps xmmword [rsp + 0x1540], xmm15
mov rax, qword [0x140071040]
xor rax, rsp
mov qword [rbp + 0x1430], rax
xor r12d, r12d
mov rcx, qword [0x140078ca0]
call fcn.14000fd60
movss xmm0, dword [0x1400710e8]
movss xmm1, dword [0x140078ce8]
movss xmm2, dword [0x140078d08]
mov rax, qword [0x140078060]
movss dword [rbp + 0xb88], xmm0
movss dword [rbp + 0xb8c], xmm1
movss dword [rbp + 0xb90], xmm2
movss xmm0, dword [rax + 0x37d0]
mulss xmm0, dword [0x140067d40]
movss dword [rbp + 0xb94], xmm0
lea rcx, [rbp + 0xb88]
call fcn.140003510
mov r15d, eax
mov dword [rbp - 8], r15d
cmp byte [0x14007901a], r12b
je 0x14004cb8c
lea rcx, str._n____ActorLoop_called
call fcn.1400013a0
xorps xmm0, xmm0
movups xmmword [rbp + 0xb88], xmm0
mov rsi, qword [0x140079090]
add rsi, 0x128
mov qword [rbp + 0xb88], rsi
mov byte [rbp + 0xb90], r12b
mov rcx, rsi
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x14004cbcb
mov ecx, 5
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov eax, dword [rsi + 0x4c]
cmp eax, 0x7fffffff
jne 0x14004cbe6
dec eax
mov dword [rsi + 0x4c], eax
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov byte [rbp + 0xb90], 1
xorps xmm15, xmm15
movsd qword [rbp - 0x18], xmm15
mov rax, qword [0x140079090]
mov rcx, qword [rax]
add rcx, 0x110
call fcn.14005be90
mov rdi, rax
mov rcx, qword [0x140079090]
mov rcx, qword [rcx]
add rcx, 0x120
call fcn.14005be90
mov rbx, rax
mov rcx, rax
call fcn.14005c180
movaps xmm9, xmm0
lea rcx, [rbx + 0x20]
call fcn.14005c180
movaps xmm8, xmm0
lea rcx, [rbx + 0x1d0]
call fcn.14005c180
movaps xmm6, xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0x430], xmm1
movsd qword [rbp + 0x440], xmm15
mov r8d, 0x18
lea rdx, [rbp + 0x430]
mov rcx, rdi
call fcn.140043060
movups xmm11, xmmword [rbp + 0x430]
movsd xmm12, qword [rbp + 0x440]
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_asin
movaps xmm10, xmm0
mulsd xmm10, qword [0x140067bb8]
movsd xmm7, qword [0x140067e00]
mulsd xmm9, xmm7
movaps xmm1, xmm8
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2
movaps xmm8, xmm0
mulsd xmm8, qword [0x140067bb8]
mulsd xmm8, xmm7
mulsd xmm8, xmm7
mov rax, qword [0x140079090]
mov rcx, qword [rax + 0x18]
add rcx, 0x394
call fcn.14005c030
movaps xmm2, xmm0
mulss xmm2, dword [0x140067cd8]
movups xmmword [rbp + 0x900], xmm11
movups xmmword [0x140077888], xmm11
unpcklpd xmm12, xmm10
movups xmmword [rbp + 0x910], xmm12
movups xmmword [0x140077898], xmm12
xorps xmm1, xmm1
shufps xmm1, xmm1, 0x44
movsd xmm1, xmm8
movups xmmword [rbp + 0x920], xmm1
movups xmmword [0x1400778a8], xmm1
movsd xmm0, qword [rbp + 0x930]
movss xmm0, xmm2
movsd qword [rbp + 0x930], xmm0
movsd qword [0x1400778b8], xmm0
mov rax, qword [0x140078060]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.140007320
mov r14, rax
mov qword [rbp - 0x40], rax
mov ecx, dword [0x140078dc8]
add ecx, 0xffffffb0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x140077858]
cvttss2si ebx, xmm0
movss xmm10, dword [0x140067ae4]
movss dword [rbp - 0x44], xmm10
movss xmm1, dword [0x140067a60]
movss dword [rbp - 4], xmm1
movss xmm7, dword [0x140067aa8]
movss dword [rsp + 0x50], xmm7
xorps xmm8, xmm8
movss dword [rsp + 0x54], xmm8
movdqa xmm9, xmmword [0x140068030]
movdqa xmmword [rbp + 0x40], xmm9
cmp byte [0x140079053], 0
je 0x14004d11b
cmp byte [0x140078ff6], 0
je 0x14004cfaa
movzx eax, r15b
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm1
movss dword [rbp + 0x2f0], xmm0
mov eax, r15d
shr eax, 8
movzx eax, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm1
movss dword [rbp + 0x2f4], xmm0
mov eax, r15d
shr eax, 0x10
movzx eax, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm1
movss dword [rbp + 0x2f8], xmm0
mov eax, r15d
shr eax, 0x18
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm1
movss dword [rbp + 0x2fc], xmm0
lea rcx, [rbp + 0x2f0]
call fcn.140003510
mov edi, eax
mov eax, dword [0x1400791b0]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400791a8]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x98], xmm0
movss dword [rbp + 0x9c], xmm1
movd xmm2, ebx
cvtdq2ps xmm2, xmm2
movss xmm6, dword [0x140067c2c]
test edi, 0xff000000
je 0x14004cf07
comiss xmm7, xmm2
ja 0x14004cf07
subss xmm2, xmm7
mov dword [rsp + 0x28], 0x20
movss dword [rsp + 0x20], xmm6
xorps xmm3, xmm3
lea rdx, [rbp + 0x98]
mov rcx, r14
call fcn.1400258f0
movss dword [rsp + 0x28], xmm10
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [r14 + 0x78]
mov rdx, qword [r14 + 0x80]
mov rcx, r14
call fcn.140023e80
mov dword [r14 + 0x78], r12d
movdqa xmm0, xmmword [0x140068040]
movups xmmword [rbp + 0x8a0], xmm0
lea rcx, [rbp + 0x8a0]
call fcn.140003510
mov edi, eax
mov eax, dword [0x1400791b0]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400791a8]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xa0], xmm0
movss dword [rbp + 0xa4], xmm1
lea eax, [rbx + 1]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
test edi, 0xff000000
je 0x14004d11b
comiss xmm7, xmm2
ja 0x14004d11b
subss xmm2, xmm7
mov dword [rsp + 0x28], 0x20
movss dword [rsp + 0x20], xmm6
xorps xmm3, xmm3
lea rdx, [rbp + 0xa0]
mov rcx, r14
call fcn.1400258f0
movss dword [rsp + 0x28], xmm10
mov r9d, edi
jmp 0x14004d05c
movd xmm6, ebx
cvtdq2ps xmm6, xmm6
cmp byte [0x1400710c8], 0
je 0x14004d082
movups xmm0, xmmword [0x140079060]
movups xmmword [rbp + 0x2d0], xmm0
lea rcx, [rbp + 0x2d0]
call fcn.140003510
mov ebx, eax
mov eax, dword [0x1400791b0]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400791a8]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xa8], xmm0
movss dword [rbp + 0xac], xmm1
test ebx, 0xff000000
je 0x14004d11b
comiss xmm7, xmm6
ja 0x14004d11b
subss xmm6, xmm7
mov dword [rsp + 0x28], 0x63
movss xmm0, dword [0x140067c34]
movss dword [rsp + 0x20], xmm0
xorps xmm3, xmm3
movaps xmm2, xmm6
lea rdx, [rbp + 0xa8]
mov rcx, r14
call fcn.1400258f0
movss dword [rsp + 0x28], xmm10
mov r9d, ebx
mov dword [rsp + 0x20], 1
mov r8d, dword [r14 + 0x78]
mov rdx, qword [r14 + 0x80]
mov rcx, r14
call fcn.140023e80
xor edi, edi
mov dword [r14 + 0x78], edi
jmp 0x14004d11d
movups xmmword [rbp + 0x8b0], xmm9
lea rcx, [rbp + 0x8b0]
call fcn.140003510
mov ebx, eax
mov eax, dword [0x1400791b0]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400791a8]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x90], xmm0
movss dword [rbp + 0x94], xmm1
test ebx, 0xff000000
je 0x14004d11b
comiss xmm7, xmm6
ja 0x14004d11b
subss xmm6, xmm7
mov dword [rsp + 0x28], 0x63
movss xmm0, dword [0x140067c34]
movss dword [rsp + 0x20], xmm0
xorps xmm3, xmm3
movaps xmm2, xmm6
lea rdx, [rbp + 0x90]
mov rcx, r14
call fcn.1400258f0
movss xmm0, dword [0x140067b30]
movss dword [rsp + 0x28], xmm0
jmp 0x14004d059
xor edi, edi
movdqa xmm11, xmmword [0x1400681b0]
movups xmmword [rbp + 0x2d0], xmm11
cmp byte [0x140079031], 0
je 0x14004d58f
movups xmmword [rbp + 0x530], xmm9
lea rcx, [rbp + 0x530]
call fcn.140003510
mov r9d, eax
mov eax, dword [0x1400791b0]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400791a8]
cdq
sub eax, edx
sar eax, 1
lea ecx, [rax - 9]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xb8], xmm0
movss dword [rbp + 0xbc], xmm1
add eax, 0xfffffffe
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xc0], xmm0
movss dword [rbp + 0xc4], xmm1
movss xmm1, dword [0x140067b30]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0xb8]
lea rdx, [rbp + 0xc0]
mov rcx, r14
call fcn.140026150
movups xmmword [rbp + 0x540], xmm9
lea rcx, [rbp + 0x540]
call fcn.140003510
mov r9d, eax
mov eax, dword [0x1400791b0]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400791a8]
cdq
sub eax, edx
sar eax, 1
lea ecx, [rax + 9]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xc8], xmm0
movss dword [rbp + 0xcc], xmm1
add eax, 2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xd0], xmm0
movss dword [rbp + 0xd4], xmm1
movss xmm1, dword [0x140067b30]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0xc8]
lea rdx, [rbp + 0xd0]
mov rcx, r14
call fcn.140026150
movups xmmword [rbp + 0x550], xmm9
lea rcx, [rbp + 0x550]
call fcn.140003510
mov r9d, eax
mov eax, dword [0x1400791b0]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
lea ecx, [rax - 9]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x1400791a8]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0xd8], xmm1
movss dword [rbp + 0xdc], xmm0
lea eax, [r8 - 2]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xe0], xmm1
movss dword [rbp + 0xe4], xmm0
movss xmm1, dword [0x140067b30]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0xd8]
lea rdx, [rbp + 0xe0]
mov rcx, r14
call fcn.140026150
movups xmmword [rbp + 0x560], xmm9
lea rcx, [rbp + 0x560]
call fcn.140003510
mov r9d, eax
mov eax, dword [0x1400791b0]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
lea ecx, [rax + 9]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x1400791a8]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0xe8], xmm1
movss dword [rbp + 0xec], xmm0
lea eax, [r8 + 2]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xf0], xmm1
movss dword [rbp + 0xf4], xmm0
movss xmm1, dword [0x140067b30]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0xe8]
lea rdx, [rbp + 0xf0]
mov rcx, r14
call fcn.140026150
movups xmmword [rbp + 0x570], xmm11
lea rcx, [rbp + 0x570]
call fcn.140003510
mov r9d, eax
mov eax, dword [0x1400791b0]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400791a8]
cdq
sub eax, edx
sar eax, 1
lea ecx, [rax - 8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xf8], xmm0
movss dword [rbp + 0xfc], xmm1
add eax, 0xfffffffd
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x100], xmm0
movss dword [rbp + 0x104], xmm1
movss dword [rsp + 0x20], xmm10
lea r8, [rbp + 0xf8]
lea rdx, [rbp + 0x100]
mov rcx, r14
call fcn.140026150
movups xmmword [rbp + 0x580], xmm11
lea rcx, [rbp + 0x580]
call fcn.140003510
mov r9d, eax
mov eax, dword [0x1400791b0]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400791a8]
cdq
sub eax, edx
sar eax, 1
lea ecx, [rax + 8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x108], xmm0
movss dword [rbp + 0x10c], xmm1
add eax, 3
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x110], xmm0
movss dword [rbp + 0x114], xmm1
movss dword [rsp + 0x20], xmm10
lea r8, [rbp + 0x108]
lea rdx, [rbp + 0x110]
mov rcx, r14
call fcn.140026150
movups xmmword [rbp + 0x590], xmm11
lea rcx, [rbp + 0x590]
call fcn.140003510
mov r9d, eax
mov eax, dword [0x1400791b0]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
lea ecx, [rax - 8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x1400791a8]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0x118], xmm1
movss dword [rbp + 0x11c], xmm0
lea eax, [r8 - 3]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x120], xmm1
movss dword [rbp + 0x124], xmm0
movss dword [rsp + 0x20], xmm10
lea r8, [rbp + 0x118]
lea rdx, [rbp + 0x120]
mov rcx, r14
call fcn.140026150
movups xmmword [rbp + 0x5a0], xmm11
lea rcx, [rbp + 0x5a0]
call fcn.140003510
mov r9d, eax
mov eax, dword [0x1400791b0]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
lea ecx, [rax + 8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x1400791a8]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0x128], xmm1
movss dword [rbp + 0x12c], xmm0
lea eax, [r8 + 3]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x130], xmm1
movss dword [rbp + 0x134], xmm0
movss dword [rsp + 0x20], xmm10
lea r8, [rbp + 0x128]
lea rdx, [rbp + 0x130]
mov rcx, r14
call fcn.140026150
mov rax, qword [0x140078060]
movss xmm2, dword [rax + 0xe0]
cvtps2pd xmm2, xmm2
movq r8, xmm2
lea rdx, str.Niggaware
lea rcx, [rbp + 0xeb0]
call fcn.14005c230
movups xmmword [rbp + 0x5b0], xmm11
lea rcx, [rbp + 0x5b0]
call fcn.140003510
mov r8d, eax
mov dword [rbp + 0x138], 0x45160000
mov dword [rbp + 0x13c], 0x41700000
mov r15, 0xffffffffffffffff
test eax, 0xff000000
je 0x14004d678
lea rax, [rbp + 0xeb0]
mov rcx, r15
inc rcx
cmp byte [rax + rcx], 0
jne 0x14004d600
lea rdx, [rbp + 0xeb0]
add rdx, rcx
lea rax, [rbp + 0xeb0]
cmp rax, rdx
je 0x14004d678
mov rax, qword [r14 + 0x38]
movups xmm0, xmmword [r14 + 0x88]
movups xmmword [rbp + 0x2e0], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm8
mov qword [rsp + 0x38], rdx
lea rcx, [rbp + 0xeb0]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp + 0x2e0]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r8d
lea r9, [rbp + 0x138]
movss xmm2, dword [rax + 0x10]
mov rdx, r14
mov rcx, qword [rax + 8]
call fcn.14002ab10
mov rcx, qword [0x140079090]
mov rax, qword [rcx + 0x118]
sub rax, qword [rcx + 0x110]
sar rax, 4
cmp rax, 1
jae 0x14004d6a5
mov rcx, rsi
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
jmp 0x140051a9a
mov rcx, qword [rcx + 0xc0]
add rcx, 0x318
call fcn.14005be90
mov qword [rbp + 0x3b8], rax
movsd xmm6, qword [0x140067dd8]
movsd qword [rbp + 0x10], xmm6
xorps xmm0, xmm0
movups xmmword [rbp + 0xb40], xmm0
mov ecx, 0x50
call fcn.14005ddf8
mov qword [rbp + 0x260], 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]
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 + 0xb40], xmm0
mov qword [rbp + 0xb40], rcx
mov qword [rbp + 0xb48], rax
mov rax, qword [0x140079090]
mov rcx, qword [rax + 0x110]
mov qword [rbp + 0x258], rcx
mov rax, qword [rax + 0x118]
mov qword [rbp + 0x260], rax
cmp rcx, rax
je 0x1400519cc
lea rdx, [rbp + 0x1508]
movdqa xmm0, xmmword [0x140068050]
movups xmmword [rbp + 0x2e0], xmm0
movdqa xmm0, xmmword [0x1400681c0]
movdqa xmmword [rbp + 0x640], xmm0
movss xmm0, dword [0x140068210]
movss dword [rbp - 0x30], xmm0
movdqa xmm7, xmmword [0x1400681f0]
movdqa xmmword [rbp + 0x660], xmm7
movsd xmm6, qword [0x140067b78]
movsd qword [rbp - 0x58], xmm6
movsd xmm0, qword [0x140067b10]
movsd qword [rbp + 0x3b0], xmm0
movsd xmm0, qword [0x140067b28]
movsd qword [rbp - 0x10], xmm0
movss xmm0, dword [0x140067c44]
movss dword [rbp - 0x48], xmm0
movss xmm1, dword [0x140067ce0]
movss dword [rbp - 0x20], xmm1
movss xmm0, dword [0x140067df4]
movss dword [rbp - 0x80], xmm0
movss xmm0, dword [0x140067dd4]
movss dword [rbp - 0x68], xmm0
nop dword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0xb70], xmm0
mov rax, qword [rcx + 8]
test rax, rax
je 0x14004d837
lock inc dword [rax + 8]
mov r12, qword [rcx]
mov qword [rbp - 0x60], r12
mov qword [rbp + 0xb70], r12
mov rsi, qword [rcx + 8]
mov qword [rbp - 0x50], rsi
mov qword [rbp + 0xb78], rsi
mov rcx, qword [r12 + 8]
mov rdi, qword [rdx]
xor r13d, r13d
mov qword [rdx], r13
test rcx, rcx
jne 0x14004d880
movups xmmword [rbp + 0x2a8], xmm0
movaps xmm12, xmm15
movsd qword [rbp + 0x2b8], xmm15
mov rbx, rdx
jmp 0x14004d8a2
mov r8d, 0x6e
lea rdx, [rbp + 0x2a8]
call fcn.1400481a0
lea rbx, [rbp + 0x1508]
movsd xmm12, qword [rbp + 0x2b8]
mov qword [rbx], rdi
movaps xmm1, xmm12
addsd xmm1, xmm6
movsd xmm13, qword [rbp + 0x2a8]
movsd xmm14, qword [rbp + 0x2b0]
movaps xmm0, xmm13
unpcklpd xmm0, xmm14
movups xmmword [rbp + 0x938], xmm0
movaps xmmword [rbp + 0x8e0], xmm0
movsd qword [rbp + 0x948], xmm1
movsd qword [rbp + 0x8f0], xmm1
lea rdx, [rbp + 0x8e0]
lea rcx, [rbp - 0x78]
call fcn.140042a90
mov rcx, qword [r12]
add rcx, 0x308
call fcn.14005be90
mov rcx, qword [r12 + 8]
lea rax, [rbp + 0x1508]
mov rdi, qword [rax]
mov qword [rax], r13
test rcx, rcx
jne 0x14004d932
xorps xmm0, xmm0
movups xmmword [rbp + 0x448], xmm0
movsd qword [rbp + 0x458], xmm15
jmp 0x14004d941
xor r8d, r8d
lea rdx, [rbp + 0x448]
call fcn.1400481a0
mov qword [rbx], rdi
movups xmm1, xmmword [rbp + 0x448]
movups xmmword [rbp + 0x4e8], xmm1
movsd xmm0, qword [rbp + 0x458]
movsd qword [rbp + 0x4f8], xmm0
movaps xmmword [rbp + 0x670], xmm1
movsd qword [rbp + 0x680], xmm0
lea rdx, [rbp + 0x670]
lea rcx, [rbp + 0x490]
call fcn.140042a90
movsd xmm15, qword [rbp - 0x70]
movaps xmm0, xmm15
movsd xmm10, qword [rbp + 0x498]
subsd xmm0, xmm10
andps xmm0, xmm7
cvtpd2ps xmm8, xmm0
cvtps2pd xmm9, xmm8
movaps xmm0, xmm9
mulsd xmm0, qword [rbp + 0x3b0]
cvtpd2ps xmm7, xmm0
xorps xmm1, xmm1
movups xmmword [rbp], xmm1
xorps xmm0, xmm0
movups xmmword [rbp + 0x18], xmm0
movups xmmword [rbp + 0x28], xmm1
mov rax, qword [0x140079090]
mov r13, qword [rax + 0xc0]
lea rdx, [rbp + 0x1508]
mov rcx, qword [rdx]
xor edi, edi
mov qword [rdx], rdi
movd xmm0, dword [0x1400791a8]
cvtdq2pd xmm0, xmm0
movsd xmm6, qword [rbp - 0x78]
comisd xmm6, xmm0
ja 0x140051922
movd xmm0, dword [0x1400791b0]
cvtdq2pd xmm0, xmm0
comisd xmm15, xmm0
ja 0x140051922
movsd xmm0, qword [rbp - 0x18]
comisd xmm0, xmm6
jae 0x140051922
comisd xmm0, xmm15
jae 0x140051922
ucomisd xmm6, xmm6
setp al
cmp al, 1
je 0x140051922
ucomisd xmm15, xmm15
setp al
cmp al, 1
je 0x140051922
mov qword [rdx], rcx
mov rcx, qword [0x140078ca0]
call fcn.14000fd60
cmp byte [0x140077844], dil
je 0x140050f32
mov rcx, qword [0x140078ca0]
call fcn.14000fd60
cmp byte [0x140078ff6], dil
je 0x14004db66
mov ecx, dword [rbp - 8]
movzx eax, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
movss xmm4, dword [rbp - 4]
mulss xmm0, xmm4
movaps xmm11, xmm0
mov eax, ecx
shr eax, 8
movzx eax, al
xorps xmm3, xmm3
cvtsi2ss xmm3, rax
mulss xmm3, xmm4
mov eax, ecx
shr eax, 0x10
movzx eax, al
xorps xmm2, xmm2
cvtsi2ss xmm2, rax
mulss xmm2, xmm4
mov eax, ecx
shr eax, 0x18
xorps xmm1, xmm1
cvtsi2ss xmm1, rax
mulss xmm1, 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 [rbp], xmm0
movaps xmm0, xmm11
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 [rbp + 0x18], xmm0
movaps xmm0, xmm11
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 [rbp + 0x28], xmm0
shufps xmm11, xmm11, 0xe1
movss xmm11, xmm3
shufps xmm11, xmm11, 0xc6
movss xmm11, xmm2
shufps xmm11, xmm11, 0x27
movss xmm11, xmm1
shufps xmm11, xmm11, 0x39
mov rcx, qword [r12 + 8]
call fcn.140048350
test al, al
je 0x14004dcc5
cmp byte [0x140078ff6], dil
jne 0x14004dcb9
movss xmm0, dword [0x140078ea0]
movss xmm1, dword [0x140078ea4]
movss xmm2, dword [0x140078ea8]
mov dword [rbp + 0x30c], 0x3f800000
movups xmm3, xmmword [rbp + 0x300]
movss xmm3, xmm0
shufps xmm3, xmm3, 0xe1
movss xmm3, xmm1
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm2
shufps xmm3, xmm3, 0xc9
movups xmmword [rbp + 0x300], xmm3
movups xmmword [rbp], xmm3
movss xmm0, dword [0x140078e90]
movss xmm1, dword [0x140078e94]
movss xmm2, dword [0x140078e98]
mov dword [rbp + 0x31c], 0x3f800000
movups xmm3, xmmword [rbp + 0x310]
movss xmm3, xmm0
shufps xmm3, xmm3, 0xe1
movss xmm3, xmm1
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm2
shufps xmm3, xmm3, 0xc9
movups xmmword [rbp + 0x310], xmm3
movups xmmword [rbp + 0x18], xmm3
movss xmm0, dword [0x140078e50]
movss xmm1, dword [0x140078e54]
movss xmm2, dword [0x140078e58]
mov dword [rbp + 0x2cc], 0x3f800000
movups xmm3, xmmword [rbp + 0x2c0]
movss xmm3, xmm0
shufps xmm3, xmm3, 0xe1
movss xmm3, xmm1
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm2
shufps xmm3, xmm3, 0xc9
movups xmmword [rbp + 0x2c0], xmm3
movups xmmword [rbp + 0x28], xmm3
movss xmm0, dword [0x140077758]
movss xmm1, dword [0x14007775c]
movss xmm2, dword [0x140077760]
mov dword [rbp + 0x32c], 0x3f800000
movups xmm11, xmmword [rbp + 0x320]
movss xmm11, xmm0
shufps xmm11, xmm11, 0xe1
movss xmm11, xmm1
shufps xmm11, xmm11, 0xc6
movss xmm11, xmm2
shufps xmm11, xmm11, 0xc9
movups xmmword [rbp + 0x320], xmm11
mov byte [0x1400710ec], 1
jmp 0x14004de1f
mov rcx, qword [r12 + 8]
call fcn.140048350
test al, al
jne 0x14004de1f
cmp byte [0x140078ff6], dil
jne 0x14004de18
movss xmm0, dword [0x140078e70]
movss xmm1, dword [0x140078e74]
movss xmm2, dword [0x140078e78]
mov dword [rbp + 0x33c], 0x3f800000
movups xmm3, xmmword [rbp + 0x330]
movss xmm3, xmm0
shufps xmm3, xmm3, 0xe1
movss xmm3, xmm1
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm2
shufps xmm3, xmm3, 0xc9
movups xmmword [rbp + 0x330], xmm3
movups xmmword [rbp], xmm3
movss xmm0, dword [0x140078e80]
movss xmm1, dword [0x140078e84]
movss xmm2, dword [0x140078e88]
mov dword [rbp + 0x34c], 0x3f800000
movups xmm3, xmmword [rbp + 0x340]
movss xmm3, xmm0
shufps xmm3, xmm3, 0xe1
movss xmm3, xmm1
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm2
shufps xmm3, xmm3, 0xc9
movups xmmword [rbp + 0x340], xmm3
movups xmmword [rbp + 0x18], xmm3
movss xmm0, dword [0x140078e60]
movss xmm1, dword [0x140078e64]
movss xmm2, dword [0x140078e68]
mov dword [rbp + 0x35c], 0x3f800000
movups xmm3, xmmword [rbp + 0x350]
movss xmm3, xmm0
shufps xmm3, xmm3, 0xe1
movss xmm3, xmm1
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm2
shufps xmm3, xmm3, 0xc9
movups xmmword [rbp + 0x350], xmm3
movups xmmword [rbp + 0x28], xmm3
movss xmm0, dword [0x140077748]
movss xmm1, dword [0x14007774c]
movss xmm2, dword [0x140077750]
mov dword [rbp + 0x36c], 0x3f800000
movups xmm11, xmmword [rbp + 0x360]
movss xmm11, xmm0
shufps xmm11, xmm11, 0xe1
movss xmm11, xmm1
shufps xmm11, xmm11, 0xc6
movss xmm11, xmm2
shufps xmm11, xmm11, 0xc9
movups xmmword [rbp + 0x360], xmm11
mov byte [0x1400710ec], dil
cmp byte [0x140079052], dil
je 0x14004df93
cmp byte [0x140078fe7], dil
je 0x14004def3
movss xmm0, dword [0x14007785c]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [rbp - 0x10]
cvtpd2ps xmm6, xmm0
movdqa xmm0, xmmword [rbp + 0x40]
movups xmmword [rbp + 0x5c0], xmm0
lea rcx, [rbp + 0x5c0]
call fcn.140003510
movaps xmm0, xmm15
addsd xmm0, xmm9
cvtpd2ps xmm3, xmm0
movaps xmm1, xmm7
mulss xmm1, dword [rsp + 0x50]
cvtps2pd xmm0, xmm1
movsd xmm2, qword [rbp - 0x78]
subsd xmm2, xmm0
cvtps2pd xmm1, xmm7
addsd xmm1, xmm2
cvtpd2ps xmm0, xmm1
movss dword [rbp + 0x140], xmm0
movss dword [rbp + 0x144], xmm3
cvtpd2ps xmm1, xmm15
cvtpd2ps xmm0, xmm2
movss dword [rbp + 0x148], xmm0
movss dword [rbp + 0x14c], xmm1
movss dword [rsp + 0x30], xmm6
mov dword [rsp + 0x28], pe_nt_image_headers64
movss xmm0, dword [rsp + 0x54]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x140]
lea rdx, [rbp + 0x148]
mov rcx, r14
call fcn.1400262b0
movsd xmm6, qword [rbp - 0x78]
lea rcx, [rbp]
call fcn.140003510
movaps xmm0, xmm15
addsd xmm0, xmm9
cvtpd2ps xmm3, xmm0
movaps xmm1, xmm7
movss xmm9, dword [rsp + 0x50]
mulss xmm1, xmm9
cvtps2pd xmm0, xmm1
movaps xmm2, xmm6
subsd xmm2, xmm0
cvtps2pd xmm1, xmm7
addsd xmm1, xmm2
cvtpd2ps xmm0, xmm1
movss dword [rbp + 0x150], xmm0
movss dword [rbp + 0x154], xmm3
cvtpd2ps xmm1, xmm15
cvtpd2ps xmm0, xmm2
movss dword [rbp + 0x158], xmm0
movss dword [rbp + 0x15c], xmm1
movss xmm1, dword [0x14007785c]
movss dword [rsp + 0x30], xmm1
mov dword [rsp + 0x28], pe_nt_image_headers64
movss xmm0, dword [rsp + 0x54]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x150]
lea rdx, [rbp + 0x158]
mov rcx, r14
call fcn.1400262b0
jmp 0x14004df9a
movss xmm9, dword [rsp + 0x50]
movzx r11d, byte [0x140078fe8]
test r11b, r11b
je 0x14004e10e
cmp byte [0x140078fe7], dil
je 0x14004e070
movss xmm0, dword [0x14007785c]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [rbp - 0x10]
cvtpd2ps xmm6, xmm0
movdqa xmm0, xmmword [rbp + 0x40]
movups xmmword [rbp + 0x5d0], xmm0
lea rcx, [rbp + 0x5d0]
call fcn.140003510
cvtps2pd xmm0, xmm8
addsd xmm0, xmm15
cvtpd2ps xmm3, xmm0
movaps xmm1, xmm7
mulss xmm1, xmm9
cvtps2pd xmm0, xmm1
movsd xmm2, qword [rbp - 0x78]
subsd xmm2, xmm0
cvtps2pd xmm1, xmm7
addsd xmm1, xmm2
cvtpd2ps xmm0, xmm1
movss dword [rbp + 0x160], xmm0
movss dword [rbp + 0x164], xmm3
cvtpd2ps xmm1, xmm15
cvtpd2ps xmm0, xmm2
movss dword [rbp + 0x168], xmm0
movss dword [rbp + 0x16c], xmm1
movss dword [rsp + 0x30], xmm6
mov dword [rsp + 0x28], 0xf0
movss xmm0, dword [rbp - 0x48]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x160]
lea rdx, [rbp + 0x168]
mov rcx, r14
call fcn.1400262b0
movsd xmm6, qword [rbp - 0x78]
lea rcx, [rbp]
call fcn.140003510
cvtps2pd xmm0, xmm8
addsd xmm0, xmm15
cvtpd2ps xmm3, xmm0
movaps xmm1, xmm7
mulss xmm1, xmm9
cvtps2pd xmm0, xmm1
movaps xmm2, xmm6
subsd xmm2, xmm0
cvtps2pd xmm1, xmm7
addsd xmm1, xmm2
cvtpd2ps xmm0, xmm1
movss dword [rbp + 0x170], xmm0
movss dword [rbp + 0x174], xmm3
cvtpd2ps xmm1, xmm15
cvtpd2ps xmm0, xmm2
movss dword [rbp + 0x178], xmm0
movss dword [rbp + 0x17c], xmm1
movss xmm1, dword [0x14007785c]
movss dword [rsp + 0x30], xmm1
mov dword [rsp + 0x28], 0xf0
movss xmm0, dword [rbp - 0x48]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x170]
lea rdx, [rbp + 0x178]
mov rcx, r14
call fcn.1400262b0
movzx r11d, byte [0x140078fe8]
cmp byte [0x1400791c0], dil
je 0x14004e1d8
cmp byte [0x140078fe7], dil
je 0x14004e191
movdqa xmm0, xmmword [rbp + 0x40]
movups xmmword [rbp + 0x890], xmm0
lea rcx, [rbp + 0x890]
call fcn.140003510
movss xmm0, dword [0x14007785c]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [rbp - 0x10]
cvttsd2si r10d, xmm0
cvttss2si r9d, xmm8
cvttss2si r8d, xmm7
cvttsd2si edx, xmm15
movaps xmm0, xmm7
mulss xmm0, xmm9
cvtps2pd xmm1, xmm0
movaps xmm2, xmm6
subsd xmm2, xmm1
cvttsd2si ecx, xmm2
mov byte [rsp + 0x30], r11b
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r10d
call fcn.140049490
movzx r11d, byte [0x140078fe8]
lea rcx, [rbp]
call fcn.140003510
cvttss2si r10d, dword [0x14007785c]
cvttss2si r9d, xmm8
cvttss2si r8d, xmm7
cvttsd2si edx, xmm15
mulss xmm7, xmm9
cvtps2pd xmm0, xmm7
movaps xmm1, xmm6
subsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov byte [rsp + 0x30], r11b
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r10d
call fcn.140049490
cmp byte [0x1400791d8], dil
je 0x14004e27d
cmp byte [0x140078fe7], dil
je 0x14004e244
movdqa xmm0, xmmword [rbp + 0x40]
movups xmmword [rbp + 0x5e0], xmm0
lea rcx, [rbp + 0x5e0]
call fcn.140003510
movss xmm0, dword [0x14007785c]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [rbp - 0x10]
cvtpd2ps xmm1, xmm0
mov dword [rsp + 0x28], eax
movss dword [rsp + 0x20], xmm1
movss xmm7, dword [rbp - 0x20]
movaps xmm3, xmm7
movaps xmm2, xmm7
lea rdx, [rbp + 0x2a8]
lea rcx, [rbp + 0x4e8]
call fcn.140049f10
jmp 0x14004e249
movss xmm7, dword [rbp - 0x20]
lea rcx, [rbp]
call fcn.140003510
mov dword [rsp + 0x28], eax
movss xmm0, dword [0x14007785c]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm7
movaps xmm2, xmm7
lea rdx, [rbp + 0x2a8]
lea rcx, [rbp + 0x4e8]
call fcn.140049f10
cmp byte [0x140078fee], dil
je 0x14004e2ef
lea rcx, [rbp + 0x28]
call fcn.140003510
mov r9d, eax
cvtpd2ps xmm1, xmm15
cvtpd2ps xmm0, xmm6
movss dword [rbp + 0x180], xmm0
movss dword [rbp + 0x184], xmm1
mov eax, dword [0x1400791a8]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x188], xmm0
mov dword [rbp + 0x18c], edi
movss xmm1, dword [0x140067b30]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0x180]
lea rdx, [rbp + 0x188]
mov rcx, r14
call fcn.140026150
cmp byte [0x140078fdd], dil
je 0x14004e367
lea rcx, [rbp + 0x28]
call fcn.140003510
cvtpd2ps xmm1, xmm15
cvtpd2ps xmm0, xmm6
movss dword [rbp + 0xb0], xmm0
movss dword [rbp + 0xb4], xmm1
movd xmm2, dword [0x1400791b4]
cvtdq2ps xmm2, xmm2
movd xmm0, dword [0x1400791b8]
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x190], xmm0
movss dword [rbp + 0x194], xmm2
movss xmm1, dword [0x140067b30]
movss dword [rsp + 0x20], xmm1
mov r9d, eax
lea r8, [rbp + 0xb0]
lea rdx, [rbp + 0x190]
mov rcx, r14
call fcn.140026150
cmp byte [0x1400710d0], dil
jne 0x14004ebe5
mov rcx, qword [r12]
add rcx, 0xa20
call fcn.14005be90
lea rcx, [rax + 0xe70]
call fcn.14005c290
movzx r14d, al
mov rcx, qword [r12]
add rcx, 0x420
call fcn.14005c290
movzx esi, al
mov rcx, qword [r12]
add rcx, 0x6d3
call fcn.14005c290
movzx ebx, al
mov rcx, qword [r12]
add rcx, 0x9d0
call fcn.14005c290
movzx edi, al
mov rcx, qword [r12 + 0x18]
add rcx, 0x1214
call fcn.14005bdf0
mov r15d, eax
mov rcx, qword [r12 + 0x18]
add rcx, 0x1218
call fcn.14005bdf0
mov r12d, eax
mov rcx, qword [rbp - 0x60]
mov rcx, qword [rcx + 0x18]
add rcx, 0x137d
call fcn.14005bdf0
xorps xmm0, xmm0
movups xmmword [rbp + 0xcc0], xmm0
xor eax, eax
mov qword [rbp + 0xcd0], rax
mov ecx, 0xf
mov qword [rbp + 0xcd8], rcx
mov byte [rbp + 0xcc0], al
movups xmmword [rbp + 0xc80], xmm0
mov qword [rbp + 0xc90], rax
mov qword [rbp + 0xc98], rcx
mov byte [rbp + 0xc80], al
movups xmmword [rbp + 0xbe0], xmm0
mov qword [rbp + 0xbf0], rax
mov qword [rbp + 0xbf8], rcx
mov byte [rbp + 0xbe0], al
movups xmmword [rbp + 0xbc0], xmm0
mov qword [rbp + 0xbd0], rax
mov qword [rbp + 0xbd8], rcx
mov byte [rbp + 0xbc0], al
test bl, bl
je 0x14004e49c
mov r8d, 7
lea rdx, str.Sliding
lea rcx, [rbp + 0xcc0]
call fcn.14003fdc0
test dil, dil
je 0x14004e4ba
mov r8d, 7
lea rdx, str.Jumping
lea rcx, [rbp + 0xc80]
call fcn.14003fdc0
test sil, sil
je 0x14004e4de
test bl, bl
jne 0x14004e4e2
mov r8d, 0xa
lea rdx, str.Chrouching
lea rcx, [rbp + 0xbe0]
call fcn.14003fdc0
jmp 0x14004e4f0
test bl, bl
je 0x14004e4f0
test dil, dil
je 0x14004e4ec
test sil, sil
jne 0x14004e513
test bl, bl
jne 0x14004e513
test dil, dil
jne 0x14004e513
test sil, sil
jne 0x14004e513
mov r8d, 6
lea rdx, str.Normal
lea rcx, [rbp + 0xbc0]
call fcn.14003fdc0
lea rdx, str.Player_State:
add rdx, rbx
lea r8, [rbp + 0xc80]
lea rcx, [rbp + 0x4b0]
call fcn.14005c330
nop
lea rdx, [rbp + 0xbe0]
cmp qword [rbp + 0xbf8], 0xf
cmova rdx, qword [rbp + 0xbe0]
mov r8, qword [rbp + 0xbf0]
mov rcx, rax
call fcn.14005ba40
xorps xmm0, xmm0
movups xmmword [rbp + 0x288], xmm0
xor edi, edi
mov qword [rbp + 0x298], rdi
mov qword [rbp + 0x2a0], rdi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x288], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x298], xmm1
mov qword [rax + 0x10], rdi
mov esi, 0xf
mov qword [rax + 0x18], rsi
mov byte [rax], dil
lea rdx, [rbp + 0xbc0]
cmp qword [rbp + 0xbd8], rsi
cmova rdx, qword [rbp + 0xbc0]
mov r8, qword [rbp + 0xbd0]
lea rcx, [rbp + 0x288]
call fcn.14005ba40
xorps xmm0, xmm0
movups xmmword [rbp + 0x268], xmm0
mov qword [rbp + 0x278], rdi
mov qword [rbp + 0x280], rdi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x268], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x278], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rsi
mov byte [rax], dil
mov r8d, 1
lea rdx, [0x1400665a4]
lea rcx, [rbp + 0x268]
call fcn.14005ba40
xorps xmm0, xmm0
movups xmmword [rbp + 0xc40], xmm0
mov qword [rbp + 0xc50], rdi
mov qword [rbp + 0xc58], rdi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xc40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xc50], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rsi
mov byte [rax], dil
mov rdx, qword [rbp + 0x280]
cmp rdx, rsi
jbe 0x14004e688
inc rdx
mov rcx, qword [rbp + 0x268]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004e683
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140051965
call fcn.14005dc9c
mov qword [rbp + 0x278], rdi
mov qword [rbp + 0x280], rsi
mov byte [rbp + 0x268], 0
mov rdx, qword [rbp + 0x2a0]
cmp rdx, 0xf
jbe 0x14004e6de
inc rdx
mov rcx, qword [rbp + 0x288]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004e6d9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005196c
call fcn.14005dc9c
mov qword [rbp + 0x298], rdi
mov qword [rbp + 0x2a0], rsi
mov byte [rbp + 0x288], 0
mov rdx, qword [rbp + 0x4c8]
cmp rdx, 0xf
jbe 0x14004e734
inc rdx
mov rcx, qword [rbp + 0x4b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004e72f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140051973
call fcn.14005dc9c
mov qword [rbp + 0x4c0], rdi
mov qword [rbp + 0x4c8], rsi
mov byte [rbp + 0x4b0], 0
mov r8d, r15d
lea rdx, str._Kills:__d_
lea rcx, [rbp + 0x1030]
call fcn.14005c230
mov r8d, r12d
lea rdx, str._Levels:__d_
lea rcx, [rbp + 0x1130]
call fcn.14005c230
mov r8, qword [0x140079090]
mov r8d, dword [r8 + 0x20]
lea rdx, str._Ammo:__d_
lea rcx, [rbp + 0x1330]
call fcn.14005c230
lea rdx, str._Aiming_State:_Aiming_
test r14b, r14b
lea rax, str._Aiming_State:_Not_Aiming_
cmove rdx, rax
lea rcx, [rbp + 0x1230]
call fcn.14005c230
mov rax, qword [0x140078060]
mov qword [rsp + 0x30], rdi
lea rcx, [rbp + 0x1030]
mov qword [rsp + 0x28], rcx
movss xmm0, dword [rbp - 0x80]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rbp - 0x68]
movss xmm2, dword [rax + 0x3c18]
lea rdx, [rbp + 0x198]
mov rcx, qword [rax + 0x3c10]
call fcn.14002a8f0
movss xmm0, dword [rbp + 0x198]
addss xmm0, dword [0x140067adc]
cvttss2si eax, xmm0
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movss dword [rbp + 0x198], xmm2
mov r12, qword [rbp - 0x60]
mov eax, dword [r12 + 0x3c]
mov ecx, 0xa
cmp eax, 0x3c
mov edx, 5
cmovle ecx, edx
cmp eax, 0x5a
cmovg ecx, esi
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 eax, 0x23
cmovg ecx, eax
mov eax, dword [r12 + 0x3c]
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
movdqa xmmword [rsp + 0x60], xmm11
movd xmm6, ecx
cvtdq2pd xmm6, xmm6
movsd xmm1, qword [rbp - 0x78]
addsd xmm1, qword [0x140067bd0]
mulss xmm2, xmm9
cvtps2pd xmm0, xmm2
subsd xmm1, xmm0
cvttsd2si ebx, xmm1
movaps xmm0, xmm15
addsd xmm0, qword [0x140067b98]
subsd xmm0, xmm6
cvttsd2si r8d, xmm0
lea rax, [rbp + 0x1030]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rsp + 0x60]
mov edx, ebx
movss xmm7, dword [0x140067c50]
movaps xmm0, xmm7
movd ecx, xmm0
call fcn.140049670
movdqa xmmword [rsp + 0x60], xmm11
movaps xmm0, xmm15
addsd xmm0, qword [0x140067bb0]
subsd xmm0, xmm6
cvttsd2si r8d, xmm0
lea rax, [rbp + 0x1130]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rsp + 0x60]
mov edx, ebx
movaps xmm0, xmm7
movd ecx, xmm0
call fcn.140049670
lea rax, [rbp + 0xc40]
cmp qword [rbp + 0xc58], 0xf
cmova rax, qword [rbp + 0xc40]
movdqa xmmword [rsp + 0x60], xmm11
movaps xmm0, xmm15
addsd xmm0, qword [0x140067bc8]
subsd xmm0, xmm6
cvttsd2si r8d, xmm0
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rsp + 0x60]
mov edx, ebx
movaps xmm0, xmm7
movd ecx, xmm0
call fcn.140049670
movdqa xmmword [rsp + 0x60], xmm11
movaps xmm0, xmm15
addsd xmm0, qword [0x140067bd8]
subsd xmm0, xmm6
cvttsd2si r8d, xmm0
lea rax, [rbp + 0x1230]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rsp + 0x60]
mov edx, ebx
movaps xmm0, xmm7
movd ecx, xmm0
call fcn.140049670
movdqa xmmword [rsp + 0x60], xmm11
movaps xmm0, xmm15
addsd xmm0, qword [0x140067be8]
subsd xmm0, xmm6
cvttsd2si r8d, xmm0
lea rax, [rbp + 0x1330]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rsp + 0x60]
mov edx, ebx
movaps xmm0, xmm7
movd ecx, xmm0
call fcn.140049670
nop
mov rdx, qword [rbp + 0xc58]
cmp rdx, 0xf
jbe 0x14004ea6f
inc rdx
mov rcx, qword [rbp + 0xc40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004ea6a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005197a
call fcn.14005dc9c
mov qword [rbp + 0xc50], rdi
mov qword [rbp + 0xc58], rsi
mov byte [rbp + 0xc40], 0
mov rdx, qword [rbp + 0xbd8]
cmp rdx, 0xf
jbe 0x14004eac5
inc rdx
mov rcx, qword [rbp + 0xbc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004eac0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140051981
call fcn.14005dc9c
mov qword [rbp + 0xbd0], rdi
mov qword [rbp + 0xbd8], rsi
mov byte [rbp + 0xbc0], 0
mov rdx, qword [rbp + 0xbf8]
cmp rdx, 0xf
jbe 0x14004eb1b
inc rdx
mov rcx, qword [rbp + 0xbe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004eb16
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140051988
call fcn.14005dc9c
mov qword [rbp + 0xbf0], rdi
mov qword [rbp + 0xbf8], rsi
mov byte [rbp + 0xbe0], 0
mov rdx, qword [rbp + 0xc98]
cmp rdx, 0xf
jbe 0x14004eb71
inc rdx
mov rcx, qword [rbp + 0xc80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004eb6c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005198f
call fcn.14005dc9c
mov qword [rbp + 0xc90], rdi
mov qword [rbp + 0xc98], rsi
mov byte [rbp + 0xc80], 0
mov rdx, qword [rbp + 0xcd8]
cmp rdx, 0xf
jbe 0x14004ebc7
inc rdx
mov rcx, qword [rbp + 0xcc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004ebc2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400519b9
call fcn.14005dc9c
mov qword [rbp + 0xcd0], rdi
mov qword [rbp + 0xcd8], rsi
mov byte [rbp + 0xcc0], 0
mov r15, 0xffffffffffffffff
jmp 0x14004ebea
mov esi, 0xf
cmp byte [0x140078fea], 0
je 0x14004f22c
mov rax, qword [0x140079090]
movaps xmm1, xmm12
movaps xmm0, xmm13
unpcklpd xmm0, xmm14
cmp qword [rax + 0xc0], 0
jne 0x14004ef26
addsd xmm1, qword [rbp - 0x58]
movups xmmword [rbp + 0x950], xmm0
movaps xmmword [rbp + 0x690], xmm0
movsd qword [rbp + 0x960], xmm1
movsd qword [rbp + 0x6a0], xmm1
lea rdx, [rbp + 0x690]
lea rcx, [rbp + 0x400]
call fcn.140042a90
movaps xmm1, xmm12
subsd xmm1, qword [0x140077898]
movaps xmm2, xmm14
subsd xmm2, qword [0x140077890]
movaps xmm0, xmm13
subsd xmm0, qword [0x140077888]
mulsd xmm2, xmm2
mulsd xmm0, xmm0
addsd xmm2, xmm0
mulsd xmm1, xmm1
addsd xmm2, xmm1
xorps xmm0, xmm0
ucomisd xmm0, xmm2
ja 0x14004ec96
sqrtpd xmm0, xmm2
jmp 0x14004ec9e
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 [0x1400791b0]
movss xmm0, dword [0x1400778b8]
mulss xmm0, dword [0x140067ba8]
divss xmm0, dword [0x140067d70]
call sub.api_ms_win_crt_math_l1_1_0.dll_tanf
addss xmm6, xmm6
mulss xmm0, xmm6
divss xmm7, xmm0
mulss xmm7, dword [0x140077740]
movsd xmm6, qword [rbp + 0x408]
addsd xmm6, qword [0x140067bc0]
movsd qword [rbp + 0x408], xmm6
movsd xmm9, qword [rbp + 0x400]
cmp byte [0x140078fe7], 0
je 0x14004ede4
mov rax, qword [0x140078060]
mov rax, qword [rax + 0x48b8]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140007320
mov rbx, rax
movss xmm8, dword [0x1400710e0]
addss xmm8, dword [0x140067b30]
movdqa xmm0, xmmword [rbp + 0x40]
movups xmmword [rbp + 0x5f0], xmm0
lea rcx, [rbp + 0x5f0]
call fcn.140003510
mov edi, eax
cvtpd2ps xmm1, xmm6
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x1a0], xmm0
movss dword [rbp + 0x1a4], xmm1
test eax, 0xff000000
je 0x14004ede4
movss xmm4, dword [rsp + 0x50]
comiss xmm4, xmm7
ja 0x14004ede4
movaps xmm2, xmm7
subss xmm2, xmm4
mov dword [rsp + 0x28], 0x31
movss xmm0, dword [0x140067c30]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rsp + 0x54]
lea rdx, [rbp + 0x1a0]
mov rcx, rbx
call fcn.1400258f0
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.140023e80
xor eax, eax
mov dword [rbx + 0x78], eax
mov rax, qword [0x140078060]
mov rax, qword [rax + 0x48b8]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140007320
mov rbx, rax
movss xmm8, dword [0x1400710e0]
lea rcx, [rbp + 0x18]
call fcn.140003510
mov edi, eax
cvtpd2ps xmm1, xmm6
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x1a8], xmm0
movss dword [rbp + 0x1ac], xmm1
test eax, 0xff000000
je 0x14004eeae
movss xmm0, dword [rsp + 0x50]
comiss xmm0, xmm7
ja 0x14004eeae
subss xmm7, xmm0
mov dword [rsp + 0x28], 0x31
movss xmm0, dword [0x140067c30]
movss dword [rsp + 0x20], xmm0
movss xmm9, dword [rsp + 0x54]
movaps xmm3, xmm9
movaps xmm2, xmm7
lea rdx, [rbp + 0x1a8]
mov rcx, rbx
call fcn.1400258f0
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.140023e80
xor edi, edi
mov dword [rbx + 0x78], edi
movss xmm6, dword [rsp + 0x50]
jmp 0x14004eebd
movss xmm6, dword [rsp + 0x50]
xor edi, edi
movss xmm9, dword [rsp + 0x54]
movsd xmm8, qword [rbp - 0x58]
cmp byte [0x140077850], 0
je 0x14004f66f
mov r8d, dword [r12 + 0x3c]
lea r9, [rbp + 0xea5]
test r8d, r8d
jns 0x14004f240
neg r8d
nop dword [rax + rax]
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 0x14004eef0
dec r9
mov byte [r9], 0x2d
jmp 0x14004f26a
movsd xmm8, qword [rbp - 0x58]
addsd xmm1, xmm8
movups xmmword [rbp + 0x968], xmm0
movaps xmmword [rbp + 0x6b0], xmm0
movsd qword [rbp + 0x978], xmm1
movsd qword [rbp + 0x6c0], xmm1
lea rdx, [rbp + 0x6b0]
lea rcx, [rbp + 0x370]
call fcn.140042a90
movaps xmm1, xmm12
subsd xmm1, qword [0x140077898]
movaps xmm0, xmm14
subsd xmm0, qword [0x140077890]
movaps xmm2, xmm13
subsd xmm2, qword [0x140077888]
mulsd xmm2, xmm2
mulsd xmm0, xmm0
addsd xmm2, xmm0
mulsd xmm1, xmm1
addsd xmm2, xmm1
xorps xmm0, xmm0
ucomisd xmm0, xmm2
ja 0x14004efa9
sqrtpd xmm0, xmm2
jmp 0x14004efb1
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 [0x1400791b0]
movss xmm0, dword [0x1400778b8]
mulss xmm0, dword [0x140067ba8]
divss xmm0, dword [0x140067d70]
call sub.api_ms_win_crt_math_l1_1_0.dll_tanf
addss xmm6, xmm6
mulss xmm0, xmm6
divss xmm7, xmm0
mulss xmm7, dword [0x140077740]
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [r12 + 0x3c]
movss xmm1, dword [rbp - 0x48]
movsd xmm6, qword [rbp + 0x378]
comiss xmm1, xmm0
jbe 0x14004f018
addsd xmm6, qword [0x140067b70]
movss xmm1, dword [0x140067c18]
comiss xmm1, xmm0
jbe 0x14004f02a
addsd xmm6, xmm8
movss xmm1, dword [0x140067b94]
comiss xmm1, xmm0
jbe 0x14004f03f
addsd xmm6, qword [0x140067b80]
addsd xmm6, qword [0x140067b60]
movsd qword [rbp + 0x378], xmm6
movss xmm1, dword [0x140067c9c]
comiss xmm1, xmm0
jbe 0x14004f21a
movsd xmm9, qword [rbp + 0x370]
cmp byte [0x140078fe7], 0
je 0x14004f14b
mov rax, qword [0x140078060]
mov rax, qword [rax + 0x48b8]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140007320
mov rbx, rax
movss xmm8, dword [0x1400710e0]
addss xmm8, dword [0x140067b30]
movdqa xmm0, xmmword [rbp + 0x40]
movups xmmword [rbp + 0x600], xmm0
lea rcx, [rbp + 0x600]
call fcn.140003510
mov edi, eax
cvtpd2ps xmm1, xmm6
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x1b0], xmm0
movss dword [rbp + 0x1b4], xmm1
test eax, 0xff000000
je 0x14004f14b
movss xmm0, dword [rsp + 0x50]
comiss xmm0, xmm7
ja 0x14004f14b
movaps xmm2, xmm7
subss xmm2, xmm0
mov dword [rsp + 0x28], 0x31
movss xmm0, dword [0x140067c30]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rsp + 0x54]
lea rdx, [rbp + 0x1b0]
mov rcx, rbx
call fcn.1400258f0
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.140023e80
xor eax, eax
mov dword [rbx + 0x78], eax
mov rax, qword [0x140078060]
mov rax, qword [rax + 0x48b8]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140007320
mov rbx, rax
movss xmm8, dword [0x1400710e0]
lea rcx, [rbp + 0x18]
call fcn.140003510
mov edi, eax
cvtpd2ps xmm1, xmm6
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x1b8], xmm0
movss dword [rbp + 0x1bc], xmm1
movss xmm6, dword [rsp + 0x50]
test eax, 0xff000000
je 0x14004eeb4
comiss xmm6, xmm7
ja 0x14004eeb4
subss xmm7, xmm6
mov dword [rsp + 0x28], 0x31
movss xmm0, dword [0x140067c30]
movss dword [rsp + 0x20], xmm0
movss xmm9, dword [rsp + 0x54]
movaps xmm3, xmm9
movaps xmm2, xmm7
lea rdx, [rbp + 0x1b8]
mov rcx, rbx
call fcn.1400258f0
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.140023e80
xor edi, edi
mov dword [rbx + 0x78], edi
jmp 0x14004eebd
movss xmm6, dword [rsp + 0x50]
movss xmm9, dword [rsp + 0x54]
jmp 0x14004eec3
movss xmm6, dword [rsp + 0x50]
jmp 0x14004eeb6
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 0x14004f240
lea r8, [rbp + 0xea5]
mov rdx, r9
lea rcx, [rbp + 0x390]
call fcn.14005cdc0
nop
lea rdx, [rbp + 0x390]
cmp qword [rbp + 0x3a8], 0xf
cmova rdx, qword [rbp + 0x390]
xorps xmm0, xmm0
movups xmmword [rbp + 0xc00], xmm0
mov qword [rbp + 0xc10], rdi
mov qword [rbp + 0xc18], rdi
mov r8, r15
inc r8
cmp byte [rdx + r8], 0
jne 0x14004f2b3
lea rcx, [rbp + 0xc00]
call fcn.140042f60
nop
mov rdx, qword [rbp + 0x3a8]
cmp rdx, 0xf
jbe 0x14004f30b
inc rdx
mov rcx, qword [rbp + 0x390]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004f306
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005199d
call fcn.14005dc9c
mov qword [rbp + 0x3a0], rdi
mov qword [rbp + 0x3a8], rsi
mov byte [rbp + 0x390], 0
mov r14, qword [rbp + 0xc10]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r14
cmp rax, 1
jb 0x140051b0e
lea r15, [rbp + 0xc00]
cmp qword [rbp + 0xc18], 0xf
cmova r15, qword [rbp + 0xc00]
xorps xmm0, xmm0
movups xmmword [rbp + 0x70], xmm0
mov qword [rbp + 0x80], rdi
mov qword [rbp + 0x88], rdi
lea rsi, [r14 + 1]
mov edi, 0xf
lea rbx, [rbp + 0x70]
cmp rsi, rdi
jbe 0x14004f3f9
mov rdi, rsi
or rdi, 0xf
cmp rdi, rcx
jbe 0x14004f39e
mov rdi, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x14004f3ce
cmp rdi, 0x16
mov eax, 0x16
cmovb rdi, rax
lea rcx, [rdi + 1]
test rcx, rcx
jne 0x14004f3b8
xor eax, eax
jmp 0x14004f3f2
cmp rcx, 0x1000
jb 0x14004f3ed
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140051b08
mov rcx, rax
call fcn.14005ddf8
test rax, rax
je 0x14005199d
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x14004f3f5
call fcn.14005ddf8
mov rbx, rax
mov qword [rbp + 0x70], rbx
mov qword [rbp + 0x80], rsi
mov qword [rbp + 0x88], rdi
movzx ecx, word [0x1400665a8]
mov byte [rbx], cl
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, [0x140066d3c]
lea rcx, [rbp + 0x70]
call fcn.14005ba40
xorps xmm0, xmm0
movups xmmword [rbp + 0xba0], xmm0
xor edi, edi
mov qword [rbp + 0xbb0], rdi
mov qword [rbp + 0xbb8], rdi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xba0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xbb0], xmm1
mov qword [rax + 0x10], rdi
mov esi, 0xf
mov qword [rax + 0x18], rsi
mov byte [rax], dil
mov rdx, qword [rbp + 0x88]
cmp rdx, rsi
jbe 0x14004f4b5
inc rdx
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004f4b0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140051996
call fcn.14005dc9c
mov qword [rbp + 0x80], rdi
mov qword [rbp + 0x88], rsi
mov byte [rbp + 0x70], 0
lea rcx, [rbp + 0xba0]
mov rdx, qword [rbp + 0xba0]
mov r8, qword [rbp + 0xbb8]
cmp r8, 0xf
cmova rcx, rdx
mov rax, qword [0x140078060]
test rcx, rcx
jne 0x14004f4f6
movaps xmm0, xmm9
jmp 0x14004f55c
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rcx
movss xmm0, dword [rbp - 0x80]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rbp - 0x68]
movss xmm2, dword [rax + 0x3c18]
lea rdx, [rbp + 0x1c0]
mov rcx, qword [rax + 0x3c10]
call fcn.14002a8f0
movss xmm0, dword [rbp + 0x1c0]
addss xmm0, dword [0x140067adc]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1c0], xmm0
mov r8, qword [rbp + 0xbb8]
mov rdx, qword [rbp + 0xba0]
lea rax, [rbp + 0xba0]
cmp r8, 0xf
cmova rax, rdx
movdqa xmmword [rsp + 0x60], xmm11
addsd xmm10, qword [0x140067b48]
cvttsd2si r8d, xmm10
mulss xmm0, xmm6
cvtss2sd xmm0, xmm0
movsd xmm1, qword [rbp + 0x490]
subsd xmm1, xmm0
cvttsd2si edx, xmm1
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rsp + 0x60]
movss xmm6, dword [0x140067c50]
movaps xmm0, xmm6
movd ecx, xmm0
call fcn.140049670
nop
mov rdx, qword [rbp + 0xbb8]
cmp rdx, 0xf
jbe 0x14004f602
inc rdx
mov rcx, qword [rbp + 0xba0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004f5fd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005199d
call fcn.14005dc9c
mov qword [rbp + 0xbb0], rdi
mov qword [rbp + 0xbb8], rsi
mov byte [rbp + 0xba0], 0
mov rdx, qword [rbp + 0xc18]
cmp rdx, 0xf
jbe 0x14004f658
inc rdx
mov rcx, qword [rbp + 0xc00]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004f653
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400519b9
call fcn.14005dc9c
mov qword [rbp + 0xc10], rdi
mov qword [rbp + 0xc18], rsi
mov byte [rbp + 0xc00], 0
jmp 0x14004f677
movss xmm6, dword [0x140067c50]
cmp byte [0x1400710d2], 0
je 0x14004f765
mov rdx, qword [r12 + 0x18]
lea rcx, [rbp + 0xc60]
call fcn.14004c800
nop
mov rax, qword [0x140079090]
movdqa xmmword [rsp + 0x60], xmm11
movaps xmm0, xmm15
movsd xmm1, qword [rbp - 0x78]
lea r9, [rsp + 0x60]
subsd xmm0, qword [0x140067b68]
cvttsd2si r8d, xmm0
movaps xmm0, xmm6
movd ecx, xmm0
cmp qword [rax + 0xc0], 0
lea rax, [rbp + 0xc60]
jne 0x14004f6e1
subsd xmm1, qword [0x140067b50]
jmp 0x14004f6e6
subsd xmm1, xmm8
cmp qword [rbp + 0xc78], 0xf
cmova rax, qword [rbp + 0xc60]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
cvttsd2si edx, xmm1
call fcn.140049670
nop
mov rdx, qword [rbp + 0xc78]
cmp rdx, 0xf
jbe 0x14004f750
inc rdx
mov rcx, qword [rbp + 0xc60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004f74b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400519b9
call fcn.14005dc9c
mov qword [rbp + 0xc70], rdi
mov qword [rbp + 0xc78], rsi
mov byte [rbp + 0xc60], 0
cmp byte [0x140079004], 0
je 0x14004f7f6
lea rcx, [rbp + 0x28]
call fcn.140003510
mov r9d, eax
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm15
movsd xmm0, qword [rbp - 0x78]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x1c8], xmm0
movss dword [rbp + 0x1cc], xmm1
mov ecx, dword [0x1400791b0]
add ecx, 0xfffffffb
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400791a8]
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 [0x140067b30]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0x1c8]
lea rdx, [rbp + 0x1d0]
mov rcx, qword [rbp - 0x40]
call fcn.140026150
cmp byte [0x140078ff5], 0
je 0x14004fa0a
mov rcx, qword [r12 + 0x10]
add rcx, 0x140
xorps xmm0, xmm0
movups xmmword [rbp + 0xe58], xmm0
movsd xmm1, qword [rbp - 0x18]
movsd qword [rbp + 0xe68], xmm1
mov r8d, 0x18
lea rdx, [rbp + 0xe58]
call fcn.140043060
movsd xmm0, qword [rbp + 0xe60]
cvtpd2ps xmm0, xmm0
cvtps2pd xmm1, xmm0
mulsd xmm1, qword [0x140067af0]
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 xmm7, xmm0
movsd xmm1, qword [rbp + 0xe58]
cvtpd2ps xmm1, xmm1
cvtps2pd xmm2, xmm1
mulsd xmm2, qword [0x140067af0]
cvtpd2ps xmm6, xmm2
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
movaps xmm8, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
movaps xmm1, xmm0
mulss xmm1, xmm7
xorps xmm7, xmm7
cvtss2sd xmm7, xmm1
mulss xmm0, xmm9
xorps xmm6, xmm6
cvtss2sd xmm6, xmm0
xorps xmm8, xmmword [rbp - 0x30]
cvtss2sd xmm8, xmm8
movsd xmm0, qword [0x140067bf8]
mulsd xmm7, xmm0
mulsd xmm6, xmm0
mulsd xmm8, xmm0
addsd xmm8, xmm12
addsd xmm6, xmm14
addsd xmm7, xmm13
movaps xmm0, xmm13
unpcklpd xmm0, xmm14
movaps xmmword [rbp + 0x6d0], xmm0
movsd qword [rsp + 0x70], xmm12
movsd qword [rbp + 0x6e0], xmm12
lea rdx, [rbp + 0x6d0]
lea rcx, [rbp + 0xa28]
call fcn.140042a90
movsd xmm10, qword [rax]
movsd xmm9, qword [rax + 8]
unpcklpd xmm7, xmm6
movaps xmmword [rbp + 0x6f0], xmm7
movsd qword [rsp + 0x70], xmm8
movsd qword [rbp + 0x700], xmm8
lea rdx, [rbp + 0x6f0]
lea rcx, [rbp + 0xa38]
call fcn.140042a90
movsd xmm7, qword [rax]
movsd xmm6, qword [rax + 8]
mov rax, qword [0x140078060]
mov rax, qword [rax + 0x48b8]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140007320
mov r10, rax
mov rcx, qword [0x140078060]
mov qword [rbp + 0x380], 0x3f800000
mov dword [rbp + 0x388], 0
movss xmm0, dword [rcx + 0x37d0]
movss dword [rbp + 0x38c], xmm0
lea rcx, [rbp + 0x380]
call fcn.140003510
cvtpd2ps xmm1, xmm6
cvtpd2ps xmm0, xmm7
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 xmm9, dword [rbp - 0x44]
movss dword [rsp + 0x20], xmm9
mov r9d, eax
lea r8, [rbp + 0x1d8]
lea rdx, [rbp + 0x1e0]
mov rcx, r10
call fcn.140026150
jmp 0x14004fa10
movss xmm9, dword [rbp - 0x44]
cmp byte [0x14007782c], 0
je 0x14004fa57
movups xmm0, xmmword [rbp + 0x18]
movdqa xmmword [rsp + 0x60], xmm0
movzx eax, byte [0x14007901c]
mov byte [rsp + 0x28], al
movzx eax, byte [0x140078fdc]
mov byte [rsp + 0x20], al
movzx r9d, byte [0x140078fed]
lea r8, [rsp + 0x60]
movzx edx, byte [0x140078fe7]
mov rcx, qword [r12 + 8]
call fcn.14004a310
test r13, r13
je 0x140050431
cmp byte [0x1400710d1], 0
je 0x140050431
mov rcx, qword [r12 + 0x18]
add rcx, 0x3f0
call fcn.14005be90
mov dword [rbp + 0xd39], edi
mov word [rbp + 0xd3d], di
mov byte [rbp + 0xd3f], 0
mov dword [rbp + 0xd18], 0xe5d9a1
mov qword [rbp + 0xd20], rax
lea rax, [rbp + 0xfb0]
mov qword [rbp + 0xd28], rax
mov qword [rbp + 0xd30], 0x80
mov eax, dword [0x140078de8]
mov dword [rbp + 0xd1c], eax
mov byte [rbp + 0xd38], 0
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rdi
mov r9d, 0x28
lea r8, [rbp + 0xd18]
mov edx, 0x228ca4
mov rcx, qword [0x140078de0]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
lea rdx, [rbp + 0xfb0]
lea rcx, [rbp + 0xca0]
call fcn.14005b8c0
nop
lea rcx, [rbp + 0xca0]
cmp qword [rbp + 0xcb8], 7
cmova rcx, qword [rbp + 0xca0]
mov rax, qword [rbp + 0xcb0]
lea rsi, [rcx + rax*2]
lea rbx, [rbp + 0xca0]
cmova rbx, qword [rbp + 0xca0]
xorps xmm0, xmm0
movups xmmword [rbp + 0xb50], xmm0
mov qword [rbp + 0xb60], rdi
mov r13d, 0xf
mov qword [rbp + 0xb68], r13
cmp rbx, rsi
jne 0x14004fb7b
mov rsi, rdi
mov r14d, r13d
mov byte [rbp + 0xb50], 0
jmp 0x14004fc90
sub rsi, rbx
sar rsi, 1
movabs rax, 0x7fffffffffffffff
cmp rsi, rax
ja 0x140051b1a
mov rdi, r13
cmp rsi, r13
jbe 0x14004fc41
mov rdi, rsi
or rdi, r13
cmp rdi, rax
jbe 0x14004fbbe
mov rdi, rax
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x14004fbfc
cmp rdi, 0x16
mov eax, 0x16
cmovb rdi, rax
lea rcx, [rdi + 1]
test rcx, rcx
jne 0x14004fbe6
xor eax, eax
mov qword [rbp + 0xb50], rax
mov qword [rbp + 0xb68], rdi
jmp 0x14004fc48
cmp rcx, 0x1000
jb 0x14004fc2c
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140051b14
mov rcx, rax
call fcn.14005ddf8
mov rcx, rax
test rax, rax
je 0x1400519a4
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
mov qword [rbp + 0xb50], rax
mov qword [rbp + 0xb68], rdi
jmp 0x14004fc48
call fcn.14005ddf8
mov qword [rbp + 0xb50], rax
mov qword [rbp + 0xb68], rdi
jmp 0x14004fc48
mov rax, qword [rbp + 0xb50]
lea r8, [rbp + 0xb50]
cmp rdi, r13
cmova r8, rax
mov rcx, r8
mov rdx, rsi
test rsi, rsi
je 0x14004fc74
movzx eax, byte [rbx]
mov byte [rcx], al
lea rcx, [rcx + 1]
lea rbx, [rbx + 2]
sub rdx, 1
jne 0x14004fc61
mov qword [rbp + 0xb60], rsi
mov byte [r8 + rsi], 0
mov r14, qword [rbp + 0xb68]
mov rsi, qword [rbp + 0xb60]
xor edi, edi
lea rax, [rbp + 0xb50]
mov r12, qword [rbp + 0xb50]
cmp r14, 0xf
cmova rax, r12
mov r15, qword [0x140078060]
movss xmm6, dword [rbp - 0x80]
movss xmm7, dword [rbp - 0x68]
test rax, rax
je 0x14004fd32
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3c18]
lea rdx, [rbp + 0x1e8]
mov rcx, qword [r15 + 0x3c10]
call fcn.14002a8f0
movss xmm0, dword [rbp + 0x1e8]
movss xmm8, dword [0x140067adc]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1e8], xmm0
mov r14, qword [rbp + 0xb68]
mov rsi, qword [rbp + 0xb60]
mov r12, qword [rbp + 0xb50]
mov r15, qword [0x140078060]
jmp 0x14004fd3b
movss xmm8, dword [0x140067adc]
lea rbx, [rbp + 0xb50]
cmp r14, 0xf
cmova rbx, r12
cmp rsi, 3
jb 0x14004fda8
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 0x14004fda8
nop dword [rax]
cmp word [rax], 0x4258
jne 0x14004fd7d
cmp byte [rax + 2], 0x4c
je 0x14004fd9b
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x58
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x14004fd70
jmp 0x14004fda8
sub rax, rbx
cmp rax, 0xffffffffffffffff
jne 0x14004fe82
lea rbx, [rbp + 0xb50]
cmp r14, 0xf
cmova rbx, r12
cmp rsi, 3
jb 0x14004fe0d
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 0x14004fe0d
nop word [rax + rax]
cmp word [rax], 0x5358
jne 0x14004fdf1
cmp byte [rax + 2], 0x58
je 0x14004fe79
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x58
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x14004fde0
lea rbx, [rbp + 0xb50]
cmp r14, 0xf
cmova rbx, r12
cmp rsi, 3
jb 0x14004ff0c
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 0x14004ff0c
cmp word [rax], 0x5350
jne 0x14004fe58
cmp byte [rax + 2], 0x4e
je 0x14004feff
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x50
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x14004fe47
jmp 0x14004ff0c
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x14004fe0d
mov eax, dword [str.XBOX]
mov dword [rbp + 0xe70], eax
movzx eax, byte [0x140066d44]
mov byte [rbp + 0xe74], al
xor edi, edi
mov qword [rsp + 0x30], rdi
lea rax, [rbp + 0xe70]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3c18]
lea rdx, [rbp + 0x1f0]
mov rcx, qword [r15 + 0x3c10]
call fcn.14002a8f0
movss xmm0, dword [rbp + 0x1f0]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1f0], xmm0
lea rax, [rbp + 0xe70]
jmp 0x140050df7
sub rax, rbx
cmp rax, 0xffffffffffffffff
jne 0x140050046
lea rbx, [rbp + 0xb50]
cmp r14, 0xf
cmova rbx, r12
cmp rsi, 3
jb 0x14004ff6d
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 0x14004ff6d
nop
cmp word [rax], 0x5350
jne 0x14004ff51
cmp byte [rax + 2], 0x35
je 0x140050039
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x50
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x14004ff40
lea rbx, [rbp + 0xb50]
cmp r14, 0xf
cmova rbx, r12
cmp rsi, 3
jb 0x14004ffcd
lea rdi, [rbx + rsi]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x57
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x14004ffcd
nop
cmp word [rax], 0x4957
jne 0x14004ffb1
cmp byte [rax + 2], 0x4e
je 0x1400500b4
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x57
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x14004ffa0
lea rbx, [rbp + 0xb50]
cmp r14, 0xf
cmova rbx, r12
cmp rsi, 3
jb 0x14005013c
lea rdi, [rbx + rsi]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x53
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x14005013c
cmp word [rax], 0x5753
jne 0x140050018
cmp byte [rax + 2], 0x48
je 0x14005012f
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x53
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x140050007
jmp 0x14005013c
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x14004ff6d
mov dword [rbp + 0xb98], 0x4e5350
xor edi, edi
mov qword [rsp + 0x30], rdi
lea rax, [rbp + 0xb98]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3c18]
lea rdx, [rbp + 0x1f8]
mov rcx, qword [r15 + 0x3c10]
call fcn.14002a8f0
movss xmm0, dword [rbp + 0x1f8]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1f8], xmm0
lea rax, [rbp + 0xb98]
jmp 0x140050df7
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x14004ffcd
mov dword [rbp + 0xb9c], 0x4e4957
xor edi, edi
mov qword [rsp + 0x30], rdi
lea rax, [rbp + 0xb9c]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3c18]
lea rdx, [rbp + 0x200]
mov rcx, qword [r15 + 0x3c10]
call fcn.14002a8f0
movss xmm0, dword [rbp + 0x200]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x200], xmm0
lea rax, [rbp + 0xb9c]
jmp 0x140050df7
sub rax, rbx
cmp rax, 0xffffffffffffffff
jne 0x140050b71
lea rbx, [rbp + 0xb50]
cmp r14, 0xf
cmova rbx, r12
cmp rsi, 3
jb 0x14005019d
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 0x14005019d
nop
cmp word [rax], 0x5753
jne 0x140050181
cmp byte [rax + 2], 0x54
je 0x140050b64
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x53
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x140050170
lea rbx, [rbp + 0xb50]
cmp r14, 0xf
cmova rbx, r12
cmp rsi, 3
jb 0x1400501fd
lea rdi, [rsi + rbx]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x4d
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x1400501fd
nop
cmp word [rax], 0x414d
jne 0x1400501e1
cmp byte [rax + 2], 0x43
je 0x140050bfc
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x4d
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x1400501d0
lea rbx, [rbp + 0xb50]
cmp r14, 0xf
cmova rbx, r12
cmp rsi, 3
jb 0x14005025d
lea rdi, [rsi + rbx]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x4c
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x14005025d
nop
cmp word [rax], 0x4e4c
jne 0x140050241
cmp byte [rax + 2], 0x58
je 0x140050c77
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x4c
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x140050230
lea rbx, [rbp + 0xb50]
cmp r14, 0xf
cmova rbx, r12
cmp rsi, 3
jb 0x1400502bd
lea rdi, [rsi + rbx]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x49
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x1400502bd
nop
cmp word [rax], 0x4f49
jne 0x1400502a1
cmp byte [rax + 2], 0x53
je 0x140050d02
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x49
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x140050290
lea rbx, [rbp + 0xb50]
cmp r14, 0xf
cmova rbx, r12
cmp rsi, 3
jb 0x14005031d
lea rdi, [rsi + rbx]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x41
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x14005031d
nop
cmp word [rax], 0x4e41
jne 0x140050301
cmp byte [rax + 2], 0x44
je 0x140050d7a
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x41
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x1400502f0
lea rax, [rbp + 0xb50]
cmp r14, 0xf
cmova rax, r12
movdqa xmmword [rsp + 0x60], xmm11
movaps xmm0, xmm15
subsd xmm0, qword [0x140067b88]
cvttsd2si r8d, xmm0
movsd xmm1, qword [rbp - 0x78]
addsd xmm1, qword [0x140067b48]
cvttsd2si edx, xmm1
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x60]
movss xmm0, dword [0x140067c60]
movd ecx, xmm0
call fcn.140049670
xor edi, edi
mov rdx, qword [rbp + 0xb68]
cmp rdx, 0xf
jbe 0x1400503bd
inc rdx
mov rcx, qword [rbp + 0xb50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400503b8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400519a4
call fcn.14005dc9c
mov qword [rbp + 0xb60], rdi
mov qword [rbp + 0xb68], r13
mov byte [rbp + 0xb50], 0
mov rdx, qword [rbp + 0xcb8]
cmp rdx, 7
jbe 0x140050418
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xca0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140050413
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400519b9
call fcn.14005dc9c
mov qword [rbp + 0xcb0], rdi
mov qword [rbp + 0xcb8], 7
mov word [rbp + 0xca0], di
cmp byte [0x140079051], 0
je 0x140050561
mov rax, qword [0x140079090]
mov rcx, qword [rax + 0xc0]
add rcx, 0x5778
xorps xmm0, xmm0
movups xmmword [rbp + 0xb00], xmm0
movsd xmm6, qword [rbp - 0x18]
movsd qword [rbp + 0xb10], xmm6
mov r8d, 0x18
lea rdx, [rbp + 0xb00]
call fcn.140043060
mov rax, qword [0x140079090]
mov rcx, qword [rax + 0xc0]
add rcx, 0x5790
xorps xmm0, xmm0
movups xmmword [rbp + 0xb18], xmm0
movsd qword [rbp + 0xb28], xmm6
mov r8d, 0x18
lea rdx, [rbp + 0xb18]
call fcn.140043060
mov rax, qword [0x140078060]
mov rax, qword [rax + 0x48b8]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140007320
mov r10, rax
movups xmm0, xmmword [rbp + 0x2e0]
movups xmmword [rbp + 0x610], xmm0
lea rcx, [rbp + 0x610]
call fcn.140003510
movsd xmm1, qword [rbp + 0xb20]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0xb18]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x230], xmm0
movss dword [rbp + 0x234], xmm1
movsd xmm2, qword [rbp + 0xb08]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0xb00]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x238], xmm0
movss dword [rbp + 0x23c], xmm2
movss dword [rsp + 0x20], xmm9
mov r9d, eax
lea r8, [rbp + 0x230]
lea rdx, [rbp + 0x238]
mov rcx, r10
call fcn.140026150
mov r12, qword [rbp - 0x60]
mov esi, 0x28
cmp byte [0x140079005], 0
je 0x1400507a8
movss xmm1, dword [0x1400710e4]
cvtps2pd xmm1, xmm1
mov rax, qword [r12 + 8]
add rax, 0x158
movaps xmm0, xmm1
unpcklpd xmm0, xmm1
movups xmmword [rbp + 0x500], xmm0
movaps xmmword [rbp + 0x710], xmm0
movsd qword [rbp + 0x510], xmm1
movsd qword [rbp + 0x720], xmm1
mov dword [rbp + 0xd61], edi
mov word [rbp + 0xd65], di
mov byte [rbp + 0xd67], 0
mov dword [rbp + 0xd40], 0xe5d9a1
mov qword [rbp + 0xd48], rax
lea rax, [rbp + 0x710]
mov qword [rbp + 0xd50], rax
mov qword [rbp + 0xd58], 0x18
mov eax, dword [0x140078de8]
mov dword [rbp + 0xd44], eax
mov byte [rbp + 0xd60], 1
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rdi
mov r9d, esi
lea r8, [rbp + 0xd40]
mov edx, 0x228ca4
mov rcx, qword [0x140078de0]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movss xmm1, dword [0x1400710e4]
cvtps2pd xmm1, xmm1
mov rax, qword [r12 + 8]
add rax, 0x158
movaps xmm0, xmm1
unpcklpd xmm0, xmm1
movups xmmword [rbp + 0x518], xmm0
movaps xmmword [rbp + 0x730], xmm0
movsd qword [rbp + 0x528], xmm1
movsd qword [rbp + 0x740], xmm1
mov dword [rbp + 0xe51], edi
mov word [rbp + 0xe55], di
mov byte [rbp + 0xe57], 0
mov dword [rbp + 0xe30], 0xe5d9a1
mov qword [rbp + 0xe38], rax
lea rax, [rbp + 0x730]
mov qword [rbp + 0xe40], rax
mov qword [rbp + 0xe48], 0x18
mov eax, dword [0x140078de8]
mov dword [rbp + 0xe34], eax
mov byte [rbp + 0xe50], 1
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rdi
mov r9d, esi
lea r8, [rbp + 0xe30]
mov edx, 0x228ca4
mov rcx, qword [0x140078de0]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movss xmm1, dword [0x1400710e4]
cvtps2pd xmm1, xmm1
mov rax, qword [r12 + 8]
add rax, 0x158
movaps xmm0, xmm1
unpcklpd xmm0, xmm1
movups xmmword [rbp + 0x4d0], xmm0
movaps xmmword [rbp + 0x750], xmm0
movsd qword [rbp + 0x4e0], xmm1
movsd qword [rbp + 0x760], xmm1
mov dword [rbp + 0xd89], edi
mov word [rbp + 0xd8d], di
mov byte [rbp + 0xd8f], 0
mov dword [rbp + 0xd68], 0xe5d9a1
mov qword [rbp + 0xd70], rax
lea rax, [rbp + 0x750]
mov qword [rbp + 0xd78], rax
mov qword [rbp + 0xd80], 0x18
mov eax, dword [0x140078de8]
mov dword [rbp + 0xd6c], eax
mov byte [rbp + 0xd88], 1
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rdi
mov r9d, esi
lea r8, [rbp + 0xd68]
mov edx, 0x228ca4
mov rcx, qword [0x140078de0]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
cmp byte [0x140078fef], 0
je 0x1400509e5
mov rax, qword [0x140079090]
cmp qword [rax + 0x10], 0
je 0x1400509e5
movss xmm1, dword [0x140077744]
cvtps2pd xmm1, xmm1
movaps xmm0, xmm1
unpcklpd xmm0, xmm1
movups xmmword [rbp + 0x980], xmm0
movaps xmmword [rbp + 0x870], xmm0
movsd qword [rbp + 0x990], xmm1
movsd qword [rbp + 0x880], xmm1
mov dword [rbp + 0xdb1], edi
mov word [rbp + 0xdb5], di
mov byte [rbp + 0xdb7], 0
mov dword [rbp + 0xd90], 0xe5d9a1
mov rbx, qword [rbp + 0x3b8]
add rbx, 0x158
mov qword [rbp + 0xd98], rbx
lea rax, [rbp + 0x870]
mov qword [rbp + 0xda0], rax
mov qword [rbp + 0xda8], 0x18
mov eax, dword [0x140078de8]
mov dword [rbp + 0xd94], eax
mov byte [rbp + 0xdb0], 1
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rdi
mov r9d, esi
lea r8, [rbp + 0xd90]
mov edx, 0x228ca4
mov rcx, qword [0x140078de0]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movss xmm1, dword [0x140077744]
cvtps2pd xmm1, xmm1
movaps xmm0, xmm1
unpcklpd xmm0, xmm1
movups xmmword [rbp + 0x9b0], xmm0
movaps xmmword [rbp + 0x850], xmm0
movsd qword [rbp + 0x9c0], xmm1
movsd qword [rbp + 0x860], xmm1
mov dword [rbp + 0xdd9], edi
mov word [rbp + 0xddd], di
mov byte [rbp + 0xddf], 0
mov dword [rbp + 0xdb8], 0xe5d9a1
mov qword [rbp + 0xdc0], rbx
lea rax, [rbp + 0x850]
mov qword [rbp + 0xdc8], rax
mov qword [rbp + 0xdd0], 0x18
mov eax, dword [0x140078de8]
mov dword [rbp + 0xdbc], eax
mov byte [rbp + 0xdd8], 1
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rdi
mov r9d, esi
lea r8, [rbp + 0xdb8]
mov edx, 0x228ca4
mov rcx, qword [0x140078de0]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movss xmm1, dword [0x140077744]
cvtps2pd xmm1, xmm1
movaps xmm0, xmm1
unpcklpd xmm0, xmm1
movups xmmword [rbp + 0x998], xmm0
movaps xmmword [rbp + 0x8c0], xmm0
movsd qword [rbp + 0x9a8], xmm1
movsd qword [rbp + 0x8d0], xmm1
mov dword [rbp + 0xe01], edi
mov word [rbp + 0xe05], di
mov byte [rbp + 0xe07], 0
mov dword [rbp + 0xde0], 0xe5d9a1
mov qword [rbp + 0xde8], rbx
lea rax, [rbp + 0x8c0]
mov qword [rbp + 0xdf0], rax
mov qword [rbp + 0xdf8], 0x18
mov eax, dword [0x140078de8]
mov dword [rbp + 0xde4], eax
mov byte [rbp + 0xe00], 1
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rdi
mov r9d, esi
lea r8, [rbp + 0xde0]
mov edx, 0x228ca4
mov rcx, qword [0x140078de0]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
cmp byte [0x14007900a], 0
je 0x140050a54
mov rax, qword [0x140079090]
mov rcx, qword [rax + 0xc0]
add rcx, 0x25b8
call fcn.14005c030
xor eax, eax
movss xmm1, dword [0x140067dd0]
comiss xmm0, xmm1
jb 0x140050a2d
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x140050a2d
movabs rcx, 0x8000000000000000
mov rax, rcx
cvttss2si rcx, xmm0
add rax, 0x10f0
add rcx, rax
call fcn.14005be90
lea rcx, [rax + 0xf0]
movss xmm1, dword [0x140067dbc]
call fcn.14005c490
cmp byte [0x140079009], 0
je 0x140050a76
mov rax, qword [0x140079090]
mov rcx, qword [rax + 0x18]
add rcx, 0x64
movss xmm1, dword [rbp - 0x80]
call fcn.14005c490
cmp byte [0x140078fe2], 0
je 0x140050b42
mov rax, qword [0x140079090]
mov rcx, qword [rax + 0xc0]
add rcx, 0x25b8
call fcn.14005be90
mov rbx, rax
mov ecx, 0x20
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x140050b42
mov byte [rbp + 0xb30], 1
mov dword [rbp + 0xe29], edi
mov word [rbp + 0xe2d], di
mov byte [rbp + 0xe2f], 0
mov dword [rbp + 0xe08], 0xe5d9a1
lea rax, [rbx + 0x6e2]
mov qword [rbp + 0xe10], rax
lea rax, [rbp + 0xb30]
mov qword [rbp + 0xe18], rax
mov qword [rbp + 0xe20], 1
mov eax, dword [0x140078de8]
mov dword [rbp + 0xe0c], eax
mov byte [rbp + 0xe28], 1
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rdi
mov r9d, esi
lea r8, [rbp + 0xe08]
mov edx, 0x228ca4
mov rcx, qword [0x140078de0]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rax, qword [0x140079090]
mov rcx, qword [rax + 0xc0]
cmp byte [0x140079035], 0
je 0x140050e4a
mov dl, 1
jmp 0x140050e4c
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x14005019d
mov eax, dword [str.SWITCH]
mov dword [rbp + 0xe78], eax
movzx eax, word [0x140066d4c]
mov word [rbp + 0xe7c], ax
movzx eax, byte [0x140066d4e]
mov byte [rbp + 0xe7e], al
xor edi, edi
mov qword [rsp + 0x30], rdi
lea rax, [rbp + 0xe78]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3c18]
lea rdx, [rbp + 0x208]
mov rcx, qword [r15 + 0x3c10]
call fcn.14002a8f0
movss xmm0, dword [rbp + 0x208]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x208], xmm0
lea rax, [rbp + 0xe78]
jmp 0x140050df7
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x1400501fd
mov dword [rbp + 0xb84], 0x43414d
xor edi, edi
mov qword [rsp + 0x30], rdi
lea rax, [rbp + 0xb84]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3c18]
lea rdx, [rbp + 0x210]
mov rcx, qword [r15 + 0x3c10]
call fcn.14002a8f0
movss xmm0, dword [rbp + 0x210]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x210], xmm0
lea rax, [rbp + 0xb84]
jmp 0x140050df7
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x14005025d
mov eax, dword [str.LINUX]
mov dword [rbp + 0xe80], eax
movzx eax, word [0x140066d54]
mov word [rbp + 0xe84], ax
xor edi, edi
mov qword [rsp + 0x30], rdi
lea rax, [rbp + 0xe80]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3c18]
lea rdx, [rbp + 0x218]
mov rcx, qword [r15 + 0x3c10]
call fcn.14002a8f0
movss xmm0, dword [rbp + 0x218]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x218], xmm0
lea rax, [rbp + 0xe80]
jmp 0x140050df7
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x1400502bd
mov dword [rbp + 0xb80], 0x534f49
xor edi, edi
mov qword [rsp + 0x30], rdi
lea rax, [rbp + 0xb80]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3c18]
lea rdx, [rbp + 0x220]
mov rcx, qword [r15 + 0x3c10]
call fcn.14002a8f0
movss xmm0, dword [rbp + 0x220]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x220], xmm0
lea rax, [rbp + 0xb80]
jmp 0x140050df7
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x14005031d
movabs rax, 0x44494f52444e41
mov qword [rbp + 0xe88], rax
xor edi, edi
mov qword [rsp + 0x30], rdi
lea rax, [rbp + 0xe88]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3c18]
lea rdx, [rbp + 0x228]
mov rcx, qword [r15 + 0x3c10]
call fcn.14002a8f0
movss xmm0, dword [rbp + 0x228]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x228], xmm0
lea rax, [rbp + 0xe88]
movsd xmm0, qword [rbp - 0x78]
movaps xmm1, xmm15
addsd xmm0, qword [0x140067b48]
subsd xmm1, qword [0x140067b88]
cvttsd2si edx, xmm0
cvttsd2si r8d, xmm1
movdqa xmmword [rsp + 0x60], xmm11
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x60]
movss xmm0, dword [0x140067c60]
movd ecx, xmm0
call fcn.140049670
jmp 0x14005037c
xor dl, dl
add rcx, 0x53d8
call fcn.14005c530
lea r14, [rbp + 0x1508]
cmp byte [0x14007901e], 0
je 0x140050f25
xorps xmm0, xmm0
movups xmmword [rbp + 0xd00], xmm0
movabs rsi, 0xff00ff00ff00ff00
mov qword [rbp + 0xd08], rsi
mov qword [rbp + 0xd10], r14
mov rbx, qword [r14]
xor rbx, rsi
mov qword [rbp + 0xd00], rbx
mov qword [r14], rdi
mov rax, qword [0x140078cb8]
mov ecx, 0x10
call rax
nop
xor rbx, rsi
mov qword [rbp + 0xd00], rbx
mov qword [r14], rbx
test ax, ax
je 0x140050f25
mov rax, qword [0x140079090]
mov rcx, qword [rax + 0xc0]
add rcx, 0x25b8
call fcn.14005be90
mov rbx, rax
lea rcx, [rax + 0xcecd]
movss xmm6, dword [0x140067c7c]
movaps xmm1, xmm6
call fcn.14005c490
lea rcx, [rbx + 0x950]
movaps xmm1, xmm6
call fcn.14005c490
lea rcx, [rbx + 0x954]
movaps xmm1, xmm6
call fcn.14005c490
lea rcx, [rbx + 0x7e4]
movss xmm1, dword [0x140067db0]
call fcn.14005c490
mov rsi, qword [rbp - 0x50]
mov r15, 0xffffffffffffffff
jmp 0x140050f39
lea r14, [rbp + 0x1508]
mov eax, dword [0x1400791b0]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mov eax, dword [0x1400791a8]
cdq
sub eax, edx
sar eax, 1
movd xmm6, eax
cvtdq2pd xmm6, xmm6
subsd xmm0, xmm15
movsd xmm1, qword [0x140067b38]
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm7, xmm0
subsd xmm6, qword [rbp - 0x78]
movsd xmm1, qword [0x140067b38]
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm7, xmm0
xorps xmm1, xmm1
ucomisd xmm1, xmm7
ja 0x140050fa1
xorps xmm8, xmm8
sqrtsd xmm8, xmm7
jmp 0x140050fad
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movaps xmm8, xmm0
movss xmm1, dword [0x140077858]
cvtps2pd xmm1, xmm1
comisd xmm1, xmm8
jbe 0x140051058
movsd xmm0, qword [rbp + 0x10]
comisd xmm0, xmm8
jbe 0x140051058
cmp dword [r12 + 0x3c], 0xfa
jge 0x140051058
movsd qword [rbp + 0x10], xmm8
test rsi, rsi
je 0x140051003
lock inc dword [rsi + 8]
mov rsi, qword [rbp + 0xb78]
mov qword [rbp - 0x50], rsi
mov r12, qword [rbp + 0xb70]
mov qword [rbp - 0x60], r12
mov qword [rbp + 0xb40], r12
mov rbx, qword [rbp + 0xb48]
mov qword [rbp + 0xb48], rsi
test rbx, rbx
je 0x140051058
mov eax, r15d
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x140051048
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r15d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140051048
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
mov r13, qword [rbp + 0xb78]
mov r12, qword [rbp + 0xb70]
jmp 0x140051060
mov r13, qword [rbp - 0x50]
mov r12, qword [rbp - 0x60]
cmp byte [0x1400710ec], 0
je 0x140051895
movsd xmm11, qword [rbp - 0x18]
movaps xmm6, xmm11
movaps xmm7, xmm11
mov rax, qword [rbp + 0xb40]
mov rcx, qword [rax + 8]
mov rbx, qword [r14]
mov qword [r14], rdi
test rcx, rcx
jne 0x1400510a6
xorps xmm0, xmm0
movups xmmword [rbp + 0x460], xmm0
movsd qword [rbp + 0x470], xmm11
jmp 0x1400510b8
mov r8d, 0x6e
lea rdx, [rbp + 0x460]
call fcn.1400481a0
mov rax, r14
mov qword [rax], rbx
movups xmm0, xmmword [rbp + 0x460]
movaps xmmword [rbp + 0x830], xmm0
movsd xmm1, qword [rbp + 0x470]
movsd qword [rbp + 0x840], xmm1
lea rdx, [rbp + 0x830]
lea rcx, [rbp + 0x9f8]
call fcn.140042a90
movsd xmm9, qword [rax]
movsd xmm10, qword [rax + 8]
cmp byte [0x140079006], 0
je 0x1400511bb
mov rax, qword [rbp + 0xb40]
mov rcx, qword [rax + 8]
mov rbx, qword [r14]
mov qword [r14], rdi
test rcx, rcx
jne 0x140051132
xorps xmm0, xmm0
movups xmmword [rbp + 0x810], xmm0
movsd qword [rbp + 0x820], xmm11
jmp 0x140051144
mov r8d, 0x6e
lea rdx, [rbp + 0x810]
call fcn.1400481a0
mov rax, r14
mov qword [rax], rbx
mov rax, qword [rbp + 0xb40]
mov rcx, qword [rax + 8]
mov qword [r14], rdi
test rcx, rcx
jne 0x140051172
xorps xmm0, xmm0
movups xmmword [rbp + 0x478], xmm0
movsd qword [rbp + 0x488], xmm11
jmp 0x140051184
mov r8d, 0x6e
lea rdx, [rbp + 0x478]
call fcn.1400481a0
mov rax, r14
mov qword [rax], rbx
movups xmm0, xmmword [rbp + 0x478]
movaps xmmword [rbp + 0x7f0], xmm0
movsd xmm1, qword [rbp + 0x488]
movsd qword [rbp + 0x800], xmm1
lea rdx, [rbp + 0x7f0]
lea rcx, [rbp + 0xa48]
jmp 0x140051372
cmp byte [0x140078fe4], 0
je 0x140051228
mov rax, qword [rbp + 0xb40]
mov r8d, 0x42
lea rdx, [rbp + 0xa70]
mov rcx, qword [rax + 8]
call fcn.1400481a0
mov rax, qword [rbp + 0xb40]
mov r8d, 0x42
lea rdx, [rbp + 0xa88]
mov rcx, qword [rax + 8]
call fcn.1400481a0
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x7d0], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x7e0], xmm1
lea rdx, [rbp + 0x7d0]
lea rcx, [rbp + 0x9c8]
jmp 0x140051372
cmp byte [0x140079030], 0
je 0x14005130a
mov rax, qword [rbp + 0xb40]
mov r8d, 0x25
lea rdx, [rbp + 0xa58]
mov rcx, qword [rax + 8]
call fcn.1400481a0
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x7b0], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x7c0], xmm1
lea rdx, [rbp + 0x7b0]
lea rcx, [rbp + 0x4a0]
call fcn.140042a90
mov rax, qword [rbp + 0xb40]
mov r8d, 8
lea rdx, [rbp + 0xaa0]
mov rcx, qword [rax + 8]
call fcn.1400481a0
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x790], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x7a0], xmm1
lea rdx, [rbp + 0x790]
lea rcx, [rbp + 0x620]
call fcn.140042a90
mov rax, qword [rbp + 0xb40]
mov r8d, 8
lea rdx, [rbp + 0xab8]
mov rcx, qword [rax + 8]
call fcn.1400481a0
movsd xmm6, qword [rbp + 0x620]
subsd xmm6, qword [rbp + 0x4a0]
mulsd xmm6, qword [0x140067b18]
addsd xmm6, qword [rbp + 0x4a0]
movsd xmm7, qword [rbp + 0x4a8]
jmp 0x140051380
cmp byte [0x140079036], 0
je 0x140051380
mov rax, qword [rbp + 0xb40]
mov r8d, 2
lea rdx, [rbp + 0xad0]
mov rcx, qword [rax + 8]
call fcn.1400481a0
mov rax, qword [rbp + 0xb40]
mov r8d, 2
lea rdx, [rbp + 0xae8]
mov rcx, qword [rax + 8]
call fcn.1400481a0
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x770], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x780], xmm1
lea rdx, [rbp + 0x770]
lea rcx, [rbp + 0x9d8]
call fcn.140042a90
movsd xmm6, qword [rax]
movsd xmm7, qword [rax + 8]
movss xmm1, dword [0x140077858]
cmp byte [0x14007900e], 0
je 0x1400513a4
cvtps2pd xmm0, xmm1
comisd xmm0, xmm8
jbe 0x1400513a4
cmp byte [0x140079006], 0
jne 0x1400513c3
cmp byte [0x140078fe4], 0
jne 0x1400513c3
cmp byte [0x140079030], 0
jne 0x1400513c3
cmp byte [0x140079036], 0
je 0x14005147a
mov rax, qword [0x140078060]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.140007320
mov r10, rax
movups xmm0, xmmword [rbp + 0x2d0]
movups xmmword [rbp + 0x630], xmm0
lea rcx, [rbp + 0x630]
call fcn.140003510
mov r9d, eax
cvtpd2ps xmm1, xmm7
cvtpd2ps xmm0, xmm6
movss dword [rbp + 0x240], xmm0
movss dword [rbp + 0x244], xmm1
mov eax, dword [0x1400791b0]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400791a8]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x248], xmm0
movss dword [rbp + 0x24c], xmm1
movss xmm0, dword [rbp - 0x44]
movss dword [rsp + 0x20], xmm0
lea r8, [rbp + 0x240]
lea rdx, [rbp + 0x248]
mov rcx, r10
call fcn.140026150
movss xmm1, dword [0x140077858]
cmp byte [0x140079054], 0
je 0x140051496
cvtps2pd xmm0, xmm1
comisd xmm0, xmm8
jbe 0x140051496
cmp byte [0x140079006], 0
jne 0x1400514b5
cmp byte [0x140078fe4], 0
jne 0x1400514b5
cmp byte [0x140079030], 0
jne 0x1400514b5
cmp byte [0x140079036], 0
je 0x1400517ff
mov rdx, qword [rbp + 0xb40]
mov rdx, qword [rdx + 0x18]
lea rcx, [rbp + 0xce0]
call fcn.14004c800
nop
mov r14, qword [rbp + 0xcf0]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r14
cmp rax, 8
jb 0x140051b02
lea r15, [rbp + 0xce0]
cmp qword [rbp + 0xcf8], 0xf
cmova r15, qword [rbp + 0xce0]
xorps xmm0, xmm0
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x60], rdi
mov qword [rbp + 0x68], rdi
lea rsi, [r14 + 8]
mov edi, 0xf
lea rbx, [rbp + 0x50]
cmp rsi, rdi
jbe 0x1400515a0
mov rdi, rsi
or rdi, 0xf
cmp rdi, rcx
jbe 0x140051545
mov rdi, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x140051575
cmp rdi, 0x16
mov eax, 0x16
cmovb rdi, rax
lea rcx, [rdi + 1]
test rcx, rcx
jne 0x14005155f
xor eax, eax
jmp 0x140051599
cmp rcx, 0x1000
jb 0x140051594
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140051b20
mov rcx, rax
call fcn.14005ddf8
test rax, rax
je 0x1400519b2
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x14005159c
call fcn.14005ddf8
mov rbx, rax
mov qword [rbp + 0x50], rbx
mov qword [rbp + 0x60], rsi
mov qword [rbp + 0x68], rdi
mov rcx, qword [str.Target:]
mov qword [rbx], rcx
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, [0x140060876]
lea rcx, [rbp + 0x50]
call fcn.14005ba40
xorps xmm0, xmm0
movups xmmword [rbp + 0xc20], xmm0
xor edi, edi
mov qword [rbp + 0xc30], rdi
mov qword [rbp + 0xc38], rdi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xc20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xc30], xmm1
mov qword [rax + 0x10], rdi
mov ebx, 0xf
mov qword [rax + 0x18], rbx
mov byte [rax], dil
mov rdx, qword [rbp + 0x68]
cmp rdx, rbx
jbe 0x140051651
inc rdx
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005164c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400519ab
call fcn.14005dc9c
mov qword [rbp + 0x60], rdi
mov qword [rbp + 0x68], rbx
mov byte [rbp + 0x50], 0
lea r8, [rbp + 0xc20]
mov r9, qword [rbp + 0xc20]
mov r10, qword [rbp + 0xc38]
cmp r10, 0xf
cmova r8, r9
movdqa xmm0, xmmword [rbp + 0x640]
movups xmmword [rbp + 0x650], xmm0
lea rcx, [rbp + 0x650]
call fcn.140003510
mov r11d, eax
mov eax, dword [0x1400791b0]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x5a
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400791a8]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x41
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x250], xmm0
movss dword [rbp + 0x254], xmm1
test r11d, 0xff000000
je 0x140051755
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1400516e2
add rcx, r8
cmp r8, rcx
je 0x140051755
mov rdx, qword [rbp - 0x40]
mov rax, qword [rdx + 0x38]
movups xmm0, xmmword [rdx + 0x88]
movups xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x48], 0
movss xmm0, dword [rsp + 0x54]
movss dword [rsp + 0x40], xmm0
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], r8
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r11d
lea r9, [rbp + 0x250]
movss xmm2, dword [rax + 0x10]
mov rcx, qword [rax + 8]
call fcn.14002ab10
mov r10, qword [rbp + 0xc38]
mov r9, qword [rbp + 0xc20]
cmp r10, 0xf
jbe 0x14005178c
lea rdx, [r10 + 1]
mov rax, r9
cmp rdx, 0x1000
jb 0x140051784
add rdx, 0x27
mov r9, qword [r9 - 8]
sub rax, r9
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400519b2
mov rcx, r9
call fcn.14005dc9c
mov qword [rbp + 0xc30], rdi
mov qword [rbp + 0xc38], rbx
mov byte [rbp + 0xc20], 0
mov rdx, qword [rbp + 0xcf8]
cmp rdx, 0xf
jbe 0x1400517e2
inc rdx
mov rcx, qword [rbp + 0xce0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400517dd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400519b9
call fcn.14005dc9c
mov qword [rbp + 0xcf0], rdi
mov qword [rbp + 0xcf8], rbx
mov byte [rbp + 0xce0], 0
movss xmm1, dword [0x140077858]
cmp byte [0x14007901b], 0
je 0x140051824
cvtps2pd xmm0, xmm1
comisd xmm0, xmm8
jbe 0x140051824
cmp qword [rbp + 0xb40], r12
jne 0x140051824
cmp byte [0x140079006], 0
jne 0x14005183f
cmp byte [0x140078fe4], 0
jne 0x14005183f
cmp byte [0x140079030], 0
jne 0x14005183f
cmp byte [0x140079036], 0
je 0x140051895
movups xmm0, xmmword [rbp + 0x2e0]
movdqa xmmword [rsp + 0x60], xmm0
subsd xmm10, qword [0x140067ba0]
cvttsd2si r8d, xmm10
subsd xmm9, qword [0x140067b50]
cvttsd2si edx, xmm9
lea rax, [0x140066d64]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x60]
movss xmm0, dword [0x140067c60]
movd ecx, xmm0
call fcn.140049670
nop
mov r15, 0xffffffffffffffff
test r13, r13
je 0x1400518d8
mov eax, r15d
lock xadd dword [r13 + 8], eax
cmp eax, 1
jne 0x1400518d8
mov rbx, qword [rbp + 0xb78]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r15d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x1400518d8
mov rcx, qword [rbp + 0xb78]
mov rax, qword [rcx]
call qword [rax + 8]
mov r14, qword [rbp - 0x40]
lea rdx, [rbp + 0x1508]
mov rcx, qword [rbp + 0x258]
add rcx, 0x10
mov qword [rbp + 0x258], rcx
cmp rcx, qword [rbp + 0x260]
je 0x1400519c0
movsd xmm15, qword [rbp - 0x18]
movsd xmm6, qword [rbp - 0x58]
movups xmm11, xmmword [rbp + 0x2d0]
movdqa xmm7, xmmword [rbp + 0x660]
jmp 0x14004d820
mov qword [rbx], rcx
test rsi, rsi
je 0x1400518e3
mov eax, r15d
lock xadd dword [rsi + 8], eax
cmp eax, 1
jne 0x1400518e3
mov rbx, qword [rbp + 0xb78]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r15d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x1400518dc
mov rcx, qword [rbp + 0xb78]
mov rax, qword [rcx]
call qword [rax + 8]
jmp 0x1400518dc
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]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov rsi, qword [rbp + 0xb88]
movsd xmm6, qword [rbp + 0x10]
cmp byte [0x1400710ec], 0
je 0x140051a59
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x410], xmm0
mov rax, qword [rbp + 0xb48]
test rax, rax
je 0x1400519fb
lock inc dword [rax + 8]
mov rsi, qword [rbp + 0xb88]
movaps xmm0, xmmword [rbp + 0xb40]
movdqa xmmword [rbp + 0x410], xmm0
lea rdx, [rbp + 0x410]
movaps xmm0, xmm6
call fcn.14004be30
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x420], xmm1
mov rax, qword [rbp + 0xb48]
test rax, rax
je 0x140051a3b
lock inc dword [rax + 8]
mov rsi, qword [rbp + 0xb88]
movaps xmm1, xmmword [rbp + 0xb40]
movdqa xmmword [rbp + 0x420], xmm1
lea rdx, [rbp + 0x420]
movaps xmm0, xmm6
call fcn.14004c280
mov rcx, rsi
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
nop
mov rbx, qword [rbp + 0xb48]
test rbx, rbx
je 0x140051a9a
mov eax, r15d
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x140051a9a
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r15d
cmp r15d, 1
jne 0x140051a9a
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
nop
mov rcx, qword [rbp + 0x1430]
xor rcx, rsp
call fcn.14005da30
lea r11, [rsp + 0x15e0]
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
call fcn.14002eee0
nop
call fcn.14002ee40
int3
call fcn.14002eee0
nop
call fcn.14002ee40
int3
call fcn.14002eee0
nop
call fcn.14002ee40
int3