Function at 0x140054430
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 - 0x1490]
mov eax, 0x1590
call fcn.14006a870
sub rsp, rax
movaps xmmword [rsp + 0x1580], xmm6
movaps xmmword [rsp + 0x1570], xmm7
movaps xmmword [rsp + 0x1560], xmm8
movaps xmmword [rsp + 0x1550], xmm9
movaps xmmword [rsp + 0x1540], xmm10
movaps xmmword [rsp + 0x1530], xmm11
movaps xmmword [rsp + 0x1520], xmm12
movaps xmmword [rsp + 0x1510], xmm13
movaps xmmword [rsp + 0x1500], xmm14
movaps xmmword [rsp + 0x14f0], xmm15
mov rax, qword [0x14007f010]
xor rax, rsp
mov qword [rbp + 0x13e0], rax
xor r12d, r12d
movss xmm0, dword [0x14007f068]
movss xmm1, dword [0x14010c248]
movss xmm2, dword [0x14010c2f0]
mov rax, qword [0x14010b5b0]
movss dword [rbp + 0x278], xmm0
movss dword [rbp + 0x27c], xmm1
movss dword [rbp + 0x280], xmm2
movss xmm0, dword [rax + 0x37d0]
mulss xmm0, dword [0x140074264]
movss dword [rbp + 0x284], xmm0
lea rcx, [rbp + 0x278]
call fcn.1400037e0
mov r15d, eax
mov dword [rbp + 8], r15d
cmp byte [0x14010c5ab], r12b
je 0x140054540
lea rcx, str._n____ActorLoop_called
call fcn.140001670
xorps xmm0, xmm0
movups xmmword [rbp + 0xba0], xmm0
mov rsi, qword [0x14010c678]
add rsi, 0x128
mov qword [rbp + 0xba0], rsi
mov byte [rbp + 0xba8], r12b
mov rcx, rsi
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x14005457f
mov ecx, 5
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
cmp dword [rsi + 0x4c], 0x7fffffff
jne 0x140054597
dec dword [rsi + 0x4c]
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov byte [rbp + 0xba8], 1
xorps xmm13, xmm13
movsd qword [rbp - 0x18], xmm13
mov rax, qword [0x14010c678]
mov rcx, qword [rax]
add rcx, 0x110
call fcn.140067790
mov rdi, rax
mov rcx, qword [0x14010c678]
mov rcx, qword [rcx]
add rcx, 0x120
call fcn.140067790
mov rbx, rax
mov rcx, rax
call fcn.140067b40
movaps xmm12, xmm0
lea rcx, [rbx + 0x20]
call fcn.140067b40
movaps xmm8, xmm0
lea rcx, [rbx + 0x1d0]
call fcn.140067b40
movaps xmm6, xmm0
lea r14, [rbp + 0x14b8]
mov rbx, qword [r14]
mov qword [r14], r12
xorps xmm1, xmm1
movups xmmword [rbp + 0x460], xmm1
movsd qword [rbp + 0x470], xmm13
mov r8d, 0x18
lea rdx, [rbp + 0x460]
mov rcx, rdi
call fcn.14004b200
mov qword [r14], rbx
movups xmm11, xmmword [rbp + 0x460]
movups xmmword [rbp + 0x988], xmm11
movsd xmm10, qword [rbp + 0x470]
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_asin
movaps xmm9, xmm0
mulsd xmm9, qword [0x1400740d0]
movsd xmm7, qword [0x140074320]
mulsd xmm12, xmm7
movaps xmm1, xmm8
movaps xmm0, xmm12
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2
movaps xmm8, xmm0
mulsd xmm8, qword [0x1400740d0]
mulsd xmm8, xmm7
mulsd xmm8, xmm7
mov rax, qword [0x14010c678]
mov rcx, qword [rax + 0x18]
add rcx, 0x394
call fcn.140067990
movaps xmm3, xmm0
mulss xmm3, dword [0x1400741f0]
movups xmmword [0x14010aa28], xmm11
movaps xmm1, xmm10
unpcklpd xmm1, xmm9
movups xmmword [rbp + 0x998], xmm1
movups xmmword [0x14010aa38], xmm1
movaps xmm2, xmm8
unpcklpd xmm2, xmm13
movups xmmword [rbp + 0x9a8], xmm2
movups xmmword [0x14010aa48], xmm2
movsd xmm0, qword [rbp + 0x9b8]
movss xmm0, xmm3
movsd qword [rbp + 0x9b8], xmm0
movsd qword [0x14010aa58], xmm0
mov rax, qword [0x14010b5b0]
mov rax, qword [rax + 0x48a8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.140007790
mov r14, rax
mov qword [rbp - 0x28], rax
mov ecx, dword [0x14010c330]
add ecx, 0xffffffb0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x14010a9ec]
cvttss2si ebx, xmm0
movss xmm7, dword [0x140073ffc]
movss dword [rbp - 0x3c], xmm7
movss xmm1, dword [0x140073f78]
movss dword [rbp + 0xc], xmm1
movss xmm9, dword [0x140073fc0]
movss dword [rsp + 0x54], xmm9
xorps xmm6, xmm6
movss dword [rsp + 0x50], xmm6
cmp byte [0x14010c622], 0
je 0x140054a33
cmp byte [0x14010c53a], 0
je 0x14005496a
movzx eax, r15b
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm1
movss dword [rbp + 0x288], xmm0
mov eax, r15d
shr eax, 8
movzx eax, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm1
movss dword [rbp + 0x28c], xmm0
mov eax, r15d
shr eax, 0x10
movzx eax, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm1
movss dword [rbp + 0x290], xmm0
mov eax, r15d
shr eax, 0x18
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm1
movss dword [rbp + 0x294], xmm0
lea rcx, [rbp + 0x288]
call fcn.1400037e0
mov edi, eax
mov eax, dword [0x14010c79c]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x14010c798]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x70], xmm0
movss dword [rbp + 0x74], xmm1
movd xmm2, ebx
cvtdq2ps xmm2, xmm2
movss xmm6, dword [0x140074144]
test edi, 0xff000000
je 0x1400548b1
comiss xmm9, xmm2
ja 0x1400548b1
subss xmm2, xmm9
mov dword [rsp + 0x28], 0x20
movss dword [rsp + 0x20], xmm6
movss xmm3, dword [rsp + 0x50]
lea rdx, [rbp + 0x70]
mov rcx, r14
call fcn.140026360
movss dword [rsp + 0x28], xmm7
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [r14 + 0x78]
mov rdx, qword [r14 + 0x80]
mov rcx, r14
call fcn.1400248e0
mov dword [r14 + 0x78], r12d
movaps xmm0, xmmword [0x140074540]
movups xmmword [rbp + 0x50], xmm0
lea rcx, [rbp + 0x50]
call fcn.1400037e0
mov edi, eax
mov eax, dword [0x14010c79c]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x14010c798]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x74], xmm0
movss dword [rbp - 0x70], xmm1
lea eax, [rbx + 1]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
test edi, 0xff000000
je 0x140054a2d
comiss xmm9, xmm2
ja 0x140054a2d
subss xmm2, xmm9
mov dword [rsp + 0x28], 0x20
movss dword [rsp + 0x20], xmm6
movss xmm6, dword [rsp + 0x50]
movaps xmm3, xmm6
lea rdx, [rbp - 0x74]
mov rcx, r14
call fcn.140026360
movss dword [rsp + 0x28], xmm7
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [r14 + 0x78]
mov rdx, qword [r14 + 0x80]
mov rcx, r14
call fcn.1400248e0
mov dword [r14 + 0x78], r12d
jmp 0x140054a33
movd xmm6, ebx
cvtdq2ps xmm6, xmm6
lea rcx, [rbp + 0x50]
cmp byte [0x14010c4cc], 0
je 0x140054987
movups xmm0, xmmword [0x14010aa00]
jmp 0x14005498e
movaps xmm0, xmmword [0x140074660]
movups xmmword [rbp + 0x50], xmm0
call fcn.1400037e0
mov ebx, eax
mov eax, dword [0x14010c79c]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
mov eax, dword [0x14010c798]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
test ebx, 0xff000000
movss dword [rbp - 0x70], xmm1
movss dword [rbp - 0x74], xmm0
je 0x140054a2d
comiss xmm9, xmm6
ja 0x140054a2d
mov dword [rsp + 0x28], 0x63
movss xmm0, dword [0x14007414c]
subss xmm6, xmm9
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rsp + 0x50]
movaps xmm2, xmm6
lea rdx, [rbp - 0x74]
mov rcx, r14
call fcn.140026360
movss dword [rsp + 0x28], xmm7
mov dword [rsp + 0x20], 1
mov r9d, ebx
mov r8d, dword [r14 + 0x78]
mov rdx, qword [r14 + 0x80]
mov rcx, r14
call fcn.1400248e0
mov dword [r14 + 0x78], r12d
movss xmm6, dword [rsp + 0x50]
movaps xmm0, xmmword [0x140074530]
movups xmmword [rbp + 0x968], xmm0
lea rcx, [rbp + 0x968]
call fcn.1400037e0
mov r9d, eax
mov eax, dword [0x14010c79c]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x14010c798]
cdq
sub eax, edx
sar eax, 1
lea ecx, [rax - 9]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x80], xmm0
movss dword [rbp + 0x84], xmm1
add eax, 0xfffffffe
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x88], xmm0
movss dword [rbp + 0x8c], xmm1
movss xmm1, dword [0x140074048]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0x80]
lea rdx, [rbp + 0x88]
mov rcx, r14
call fcn.140026d00
movaps xmm0, xmmword [0x140074530]
movups xmmword [rbp + 0x978], xmm0
lea rcx, [rbp + 0x978]
call fcn.1400037e0
mov r9d, eax
mov eax, dword [0x14010c79c]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x14010c798]
cdq
sub eax, edx
sar eax, 1
lea ecx, [rax + 9]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x90], xmm0
movss dword [rbp + 0x94], xmm1
add eax, 2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x98], xmm0
movss dword [rbp + 0x9c], xmm1
movss xmm1, dword [0x140074048]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0x90]
lea rdx, [rbp + 0x98]
mov rcx, r14
call fcn.140026d00
movaps xmm0, xmmword [0x140074530]
movups xmmword [rbp + 0x530], xmm0
lea rcx, [rbp + 0x530]
call fcn.1400037e0
mov r9d, eax
mov eax, dword [0x14010c79c]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
lea ecx, [rax - 9]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x14010c798]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0xa0], xmm1
movss dword [rbp + 0xa4], xmm0
lea eax, [r8 - 2]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xa8], xmm1
movss dword [rbp + 0xac], xmm0
movss xmm1, dword [0x140074048]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0xa0]
lea rdx, [rbp + 0xa8]
mov rcx, r14
call fcn.140026d00
movaps xmm0, xmmword [0x140074530]
movups xmmword [rbp + 0x540], xmm0
lea rcx, [rbp + 0x540]
call fcn.1400037e0
mov r9d, eax
mov eax, dword [0x14010c79c]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
lea ecx, [rax + 9]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x14010c798]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0xb0], xmm1
movss dword [rbp + 0xb4], xmm0
lea eax, [r8 + 2]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xb8], xmm1
movss dword [rbp + 0xbc], xmm0
movss xmm1, dword [0x140074048]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0xb0]
lea rdx, [rbp + 0xb8]
mov rcx, r14
call fcn.140026d00
movaps xmm0, xmmword [0x140074660]
movups xmmword [rbp + 0x550], xmm0
lea rcx, [rbp + 0x550]
call fcn.1400037e0
mov r9d, eax
mov eax, dword [0x14010c79c]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x14010c798]
cdq
sub eax, edx
sar eax, 1
lea ecx, [rax - 8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xc0], xmm0
movss dword [rbp + 0xc4], xmm1
add eax, 0xfffffffd
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xc8], xmm0
movss dword [rbp + 0xcc], xmm1
movss dword [rsp + 0x20], xmm7
lea r8, [rbp + 0xc0]
lea rdx, [rbp + 0xc8]
mov rcx, r14
call fcn.140026d00
movaps xmm0, xmmword [0x140074660]
movups xmmword [rbp + 0x560], xmm0
lea rcx, [rbp + 0x560]
call fcn.1400037e0
mov r9d, eax
mov eax, dword [0x14010c79c]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x14010c798]
cdq
sub eax, edx
sar eax, 1
lea ecx, [rax + 8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xd0], xmm0
movss dword [rbp + 0xd4], xmm1
add eax, 3
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xd8], xmm0
movss dword [rbp + 0xdc], xmm1
movss dword [rsp + 0x20], xmm7
lea r8, [rbp + 0xd0]
lea rdx, [rbp + 0xd8]
mov rcx, r14
call fcn.140026d00
movaps xmm0, xmmword [0x140074660]
movups xmmword [rbp + 0x570], xmm0
lea rcx, [rbp + 0x570]
call fcn.1400037e0
mov r9d, eax
mov eax, dword [0x14010c79c]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
lea ecx, [rax - 8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x14010c798]
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 - 3]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xe8], xmm1
movss dword [rbp + 0xec], xmm0
movss dword [rsp + 0x20], xmm7
lea r8, [rbp + 0xe0]
lea rdx, [rbp + 0xe8]
mov rcx, r14
call fcn.140026d00
movaps xmm0, xmmword [0x140074660]
movups xmmword [rbp + 0x580], xmm0
lea rcx, [rbp + 0x580]
call fcn.1400037e0
mov r9d, eax
mov eax, dword [0x14010c79c]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
lea ecx, [rax + 8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x14010c798]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0xf0], xmm1
movss dword [rbp + 0xf4], xmm0
lea eax, [r8 + 3]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xf8], xmm1
movss dword [rbp + 0xfc], xmm0
movss dword [rsp + 0x20], xmm7
lea r8, [rbp + 0xf0]
lea rdx, [rbp + 0xf8]
mov rcx, r14
call fcn.140026d00
mov rax, qword [0x14010b5b0]
movss xmm2, dword [rax + 0xe0]
cvtps2pd xmm2, xmm2
movq r8, xmm2
lea rdx, str.PLAXY__PRV_
lea rcx, [rbp + 0xe60]
call fcn.140067c30
movaps xmm0, xmmword [0x140074660]
movups xmmword [rbp + 0x590], xmm0
lea rcx, [rbp + 0x590]
call fcn.1400037e0
mov r8d, eax
mov dword [rbp + 0x100], 0x45160000
mov dword [rbp + 0x104], 0x41700000
mov rdi, 0xffffffffffffffff
test eax, 0xff000000
je 0x140054fa7
lea rax, [rbp + 0xe60]
mov rcx, rdi
nop word [rax + rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x140054f30
lea rdx, [rbp + 0xe60]
add rdx, rcx
lea rax, [rbp + 0xe60]
cmp rax, rdx
je 0x140054fa7
mov rax, qword [r14 + 0x38]
movups xmm0, xmmword [r14 + 0x88]
movups xmmword [rbp + 0x5a0], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm6
mov qword [rsp + 0x38], rdx
lea rcx, [rbp + 0xe60]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp + 0x5a0]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r8d
lea r9, [rbp + 0x100]
movss xmm2, dword [rax + 0x10]
mov rdx, r14
mov rcx, qword [rax + 8]
call fcn.14002ba40
mov rcx, qword [0x14010c678]
mov rax, qword [rcx + 0x118]
sub rax, qword [rcx + 0x110]
sar rax, 4
cmp rax, 1
jae 0x140054fd4
mov rcx, rsi
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
jmp 0x140059283
mov rcx, qword [rcx + 0xc0]
add rcx, 0x318
call fcn.140067790
mov qword [rbp + 0x350], rax
movsd xmm7, qword [0x1400742f8]
movsd qword [rbp], xmm7
mov ecx, 0x50
call fcn.140069ae8
mov qword [rbp - 0x38], 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], r12
mov qword [rcx + 8], r12
mov qword [rcx + 0x10], r12
mov qword [rcx + 0x18], r12
mov qword [rcx + 0x20], r12
mov qword [rcx + 0x28], r12
mov qword [rcx + 0x30], r12
mov qword [rcx + 0x38], r12
movups xmmword [rbp + 0xb10], xmm0
mov qword [rbp + 0xb10], rcx
mov qword [rbp + 0xb18], rax
mov rax, qword [0x14010c678]
mov rdx, qword [rax + 0x110]
mov qword [rbp + 0x200], rdx
mov rax, qword [rax + 0x118]
mov qword [rbp + 0x30], rax
cmp rdx, rax
je 0x1400591c3
movaps xmm15, xmmword [0x140074660]
movups xmmword [rbp + 0x780], xmm15
movss xmm0, dword [0x1400748a0]
movss dword [rbp - 0x50], xmm0
movsd xmm8, qword [0x140074880]
movsd qword [rbp + 0x40], xmm8
movsd xmm7, qword [0x140074090]
movsd qword [rbp - 0x80], xmm7
movsd xmm11, qword [0x140074030]
movsd qword [rbp - 0x38], xmm11
movsd xmm0, qword [0x140074040]
movsd qword [rbp - 0x30], xmm0
movss xmm0, dword [0x14007415c]
movss dword [rbp - 0x60], xmm0
movss xmm0, dword [0x1400741f8]
movss dword [rbp - 0x40], xmm0
movss xmm0, dword [0x140074314]
movss dword [rsp + 0x68], xmm0
movss xmm0, dword [0x1400742f4]
movss dword [rbp - 0x78], xmm0
lea rsi, [rbp + 0x14b8]
xorps xmm0, xmm0
movups xmmword [rbp + 0xb30], xmm0
mov rax, qword [rdx + 8]
test rax, rax
je 0x140055150
lock inc dword [rax + 8]
mov rcx, qword [rbp + 0xb10]
mov qword [rsp + 0x70], rcx
mov r13, qword [rdx]
mov qword [rbp + 0x168], r13
mov qword [rbp + 0xb30], r13
mov qword [rbp + 0x368], r13
mov r12, qword [rdx + 8]
mov qword [rbp - 0x68], r12
mov qword [rbp + 0xb38], r12
mov rcx, qword [r13 + 8]
mov rbx, qword [rsi]
xor edi, edi
mov qword [rsi], rdi
test rcx, rcx
jne 0x14005519e
movups xmmword [rbp + 0x250], xmm0
movaps xmm14, xmm13
movsd qword [rbp + 0x260], xmm13
jmp 0x1400551b9
mov r8d, 0x6d
lea rdx, [rbp + 0x250]
call fcn.14004f8d0
movsd xmm14, qword [rbp + 0x260]
mov qword [rbp - 0x20], rsi
mov r15, rsi
mov qword [rsi], rbx
movaps xmm1, xmm14
addsd xmm1, xmm7
movsd xmm0, qword [rbp + 0x250]
movsd qword [rbp - 0x10], xmm0
movsd xmm2, qword [rbp + 0x258]
movsd qword [rbp - 8], xmm2
unpcklpd xmm0, xmm2
movaps xmmword [rbp + 0x790], xmm0
movsd qword [rbp + 0x520], xmm1
movsd qword [rbp + 0x7a0], xmm1
lea rdx, [rbp + 0x790]
lea rcx, [rsp + 0x58]
call fcn.140043b40
mov rcx, qword [r13]
add rcx, 0x308
call fcn.140067790
mov rcx, qword [r13 + 8]
mov rbx, qword [rsi]
mov qword [rsi], rdi
test rcx, rcx
jne 0x140055245
xorps xmm1, xmm1
movups xmmword [rbp + 0x478], xmm1
movsd qword [rbp + 0x488], xmm13
jmp 0x14005525b
xor r8d, r8d
lea rdx, [rbp + 0x478]
call fcn.14004f8d0
movups xmm1, xmmword [rbp + 0x478]
mov qword [r15], rbx
movups xmmword [rbp + 0x4f0], xmm1
movsd xmm0, qword [rbp + 0x488]
movsd qword [rbp + 0x500], xmm0
movaps xmmword [rbp + 0x510], xmm1
movsd qword [rbp + 0x520], xmm0
lea rdx, [rbp + 0x510]
lea rcx, [rbp + 0x4a0]
call fcn.140043b40
movsd xmm7, qword [rsp + 0x60]
movaps xmm0, xmm7
movsd xmm13, qword [rbp + 0x4a8]
subsd xmm0, xmm13
andps xmm0, xmm8
cvtpd2ps xmm12, xmm0
cvtps2pd xmm10, xmm12
movaps xmm0, xmm10
mulsd xmm0, xmm11
cvtpd2ps xmm8, xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0x10], xmm1
xorps xmm11, xmm11
movups xmmword [rbp + 0x60], xmm11
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
mov rax, qword [0x14010c678]
mov rsi, qword [rax + 0xc0]
mov qword [rbp + 0x208], rsi
lea rax, [rbp + 0x14b8]
mov rbx, qword [rax]
mov qword [rax], rdi
movd xmm0, dword [0x14010c798]
cvtdq2pd xmm0, xmm0
movsd xmm1, qword [rsp + 0x58]
comisd xmm1, xmm0
ja 0x140059099
movd xmm0, dword [0x14010c79c]
cvtdq2pd xmm0, xmm0
comisd xmm7, xmm0
ja 0x140059099
movsd xmm0, qword [rbp - 0x18]
comisd xmm0, xmm1
jae 0x140059099
comisd xmm0, xmm7
jae 0x140059099
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll__dclass
cmp ax, 2
je 0x140059099
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll__dclass
cmp ax, 2
je 0x140059099
lea rcx, [rbp + 0x14b8]
mov qword [rcx], rbx
cmp byte [0x14010c5a9], dil
je 0x1400587fe
cmp byte [0x14010c53a], dil
je 0x14005547c
mov ecx, dword [rbp + 8]
movzx eax, cl
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
movss xmm4, dword [rbp + 0xc]
mulss xmm0, xmm4
movaps xmm15, 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 + 0x10], xmm0
movaps xmm11, xmm15
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
movups xmmword [rbp + 0x60], xmm11
movaps xmm0, xmm15
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 + 0x20], xmm0
shufps xmm15, xmm15, 0xe1
movss xmm15, xmm3
shufps xmm15, xmm15, 0xc6
movss xmm15, xmm2
shufps xmm15, xmm15, 0x27
movss xmm15, xmm1
shufps xmm15, xmm15, 0x39
mov rcx, qword [r13 + 8]
call fcn.14004fa80
test al, al
je 0x1400555e3
cmp byte [0x14010c53a], dil
jne 0x1400555d7
movss xmm0, dword [0x14010c3f8]
movss xmm1, dword [0x14010c3fc]
movss xmm2, dword [0x14010c400]
mov dword [rbp + 0x2a4], 0x3f800000
movups xmm3, xmmword [rbp + 0x298]
movss xmm3, xmm0
shufps xmm3, xmm3, 0xe1
movss xmm3, xmm1
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm2
shufps xmm3, xmm3, 0xc9
movups xmmword [rbp + 0x298], xmm3
movups xmmword [rbp + 0x10], xmm3
movss xmm0, dword [0x14010c3e8]
movss xmm1, dword [0x14010c3ec]
movss xmm2, dword [0x14010c3f0]
mov dword [rbp + 0x2b4], 0x3f800000
movups xmm11, xmmword [rbp + 0x2a8]
movss xmm11, xmm0
shufps xmm11, xmm11, 0xe1
movss xmm11, xmm1
shufps xmm11, xmm11, 0xc6
movss xmm11, xmm2
shufps xmm11, xmm11, 0xc9
movups xmmword [rbp + 0x2a8], xmm11
movups xmmword [rbp + 0x60], xmm11
movss xmm0, dword [0x14010c3a8]
movss xmm1, dword [0x14010c3ac]
movss xmm2, dword [0x14010c3b0]
mov dword [rbp + 0x2c4], 0x3f800000
movups xmm3, xmmword [rbp + 0x2b8]
movss xmm3, xmm0
shufps xmm3, xmm3, 0xe1
movss xmm3, xmm1
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm2
shufps xmm3, xmm3, 0xc9
movups xmmword [rbp + 0x2b8], xmm3
movups xmmword [rbp + 0x20], xmm3
movss xmm0, dword [0x14010a8e0]
movss xmm1, dword [0x14010a8e4]
movss xmm2, dword [0x14010a8e8]
mov dword [rbp + 0x2d4], 0x3f800000
movups xmm15, xmmword [rbp + 0x2c8]
movss xmm15, xmm0
shufps xmm15, xmm15, 0xe1
movss xmm15, xmm1
shufps xmm15, xmm15, 0xc6
movss xmm15, xmm2
shufps xmm15, xmm15, 0xc9
movups xmmword [rbp + 0x2c8], xmm15
mov byte [0x14007f06c], 1
jmp 0x140055745
mov rcx, qword [r13 + 8]
call fcn.14004fa80
test al, al
jne 0x140055745
cmp byte [0x14010c53a], dil
jne 0x14005573e
movss xmm0, dword [0x14010c3c8]
movss xmm1, dword [0x14010c3cc]
movss xmm2, dword [0x14010c3d0]
mov dword [rbp + 0x2e4], 0x3f800000
movups xmm3, xmmword [rbp + 0x2d8]
movss xmm3, xmm0
shufps xmm3, xmm3, 0xe1
movss xmm3, xmm1
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm2
shufps xmm3, xmm3, 0xc9
movups xmmword [rbp + 0x2d8], xmm3
movups xmmword [rbp + 0x10], xmm3
movss xmm0, dword [0x14010c3d8]
movss xmm1, dword [0x14010c3dc]
movss xmm2, dword [0x14010c3e0]
mov dword [rbp + 0x2f4], 0x3f800000
movups xmm11, xmmword [rbp + 0x2e8]
movss xmm11, xmm0
shufps xmm11, xmm11, 0xe1
movss xmm11, xmm1
shufps xmm11, xmm11, 0xc6
movss xmm11, xmm2
shufps xmm11, xmm11, 0xc9
movups xmmword [rbp + 0x2e8], xmm11
movups xmmword [rbp + 0x60], xmm11
movss xmm0, dword [0x14010c3b8]
movss xmm1, dword [0x14010c3bc]
movss xmm2, dword [0x14010c3c0]
mov dword [rbp + 0x304], 0x3f800000
movups xmm3, xmmword [rbp + 0x2f8]
movss xmm3, xmm0
shufps xmm3, xmm3, 0xe1
movss xmm3, xmm1
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm2
shufps xmm3, xmm3, 0xc9
movups xmmword [rbp + 0x2f8], xmm3
movups xmmword [rbp + 0x20], xmm3
movss xmm0, dword [0x14010a8d0]
movss xmm1, dword [0x14010a8d4]
movss xmm2, dword [0x14010a8d8]
mov dword [rbp + 0x314], 0x3f800000
movups xmm15, xmmword [rbp + 0x308]
movss xmm15, xmm0
shufps xmm15, xmm15, 0xe1
movss xmm15, xmm1
shufps xmm15, xmm15, 0xc6
movss xmm15, xmm2
shufps xmm15, xmm15, 0xc9
movups xmmword [rbp + 0x308], xmm15
mov byte [0x14007f06c], dil
cmp byte [0x14010c621], dil
je 0x1400558c3
cmp byte [0x14010c515], dil
je 0x14005581d
movss xmm0, dword [0x14010a9f0]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [rbp - 0x30]
cvtpd2ps xmm6, xmm0
movaps xmm1, xmmword [0x140074530]
movups xmmword [rbp + 0x5b0], xmm1
lea rcx, [rbp + 0x5b0]
call fcn.1400037e0
movaps xmm0, xmm7
addsd xmm0, xmm10
cvtpd2ps xmm3, xmm0
movaps xmm1, xmm8
mulss xmm1, xmm9
cvtps2pd xmm0, xmm1
movsd xmm9, qword [rsp + 0x58]
movaps xmm2, xmm9
subsd xmm2, xmm0
cvtps2pd xmm1, xmm8
addsd xmm1, xmm2
cvtpd2ps xmm0, xmm1
movss dword [rbp + 0x108], xmm0
movss dword [rbp + 0x10c], xmm3
cvtpd2ps xmm1, xmm7
cvtpd2ps xmm0, xmm2
movss dword [rbp + 0x110], xmm0
movss dword [rbp + 0x114], xmm1
movss dword [rsp + 0x30], xmm6
mov dword [rsp + 0x28], 0x100
movss xmm6, dword [rsp + 0x50]
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x108]
lea rdx, [rbp + 0x110]
mov rcx, r14
call fcn.140026e60
jmp 0x140055824
movsd xmm9, qword [rsp + 0x58]
movaps xmm7, xmm8
mulss xmm7, dword [rsp + 0x54]
lea rcx, [rbp + 0x10]
call fcn.1400037e0
movsd xmm4, qword [rsp + 0x60]
movaps xmm0, xmm4
addsd xmm0, xmm10
cvtpd2ps xmm2, xmm0
cvtps2pd xmm1, xmm7
movaps xmm3, xmm9
subsd xmm3, xmm1
cvtps2pd xmm9, xmm8
movaps xmm0, xmm9
addsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x118], xmm0
movss dword [rbp + 0x11c], xmm2
cvtpd2ps xmm1, xmm4
cvtpd2ps xmm0, xmm3
movss dword [rbp + 0x120], xmm0
movss dword [rbp + 0x124], xmm1
movss xmm1, dword [0x14010a9f0]
movss dword [rsp + 0x30], xmm1
mov dword [rsp + 0x28], 0x100
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x118]
lea rdx, [rbp + 0x120]
mov rcx, r14
call fcn.140026e60
jmp 0x1400558d0
movaps xmm7, xmm8
mulss xmm7, xmm9
cvtps2pd xmm9, xmm8
movzx r11d, byte [0x14010c520]
test r11b, r11b
je 0x140055a4c
cmp byte [0x14010c515], dil
je 0x1400559a5
movss xmm0, dword [0x14010a9f0]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [rbp - 0x30]
cvtpd2ps xmm6, xmm0
movaps xmm1, xmmword [0x140074530]
movups xmmword [rbp + 0x5c0], xmm1
lea rcx, [rbp + 0x5c0]
call fcn.1400037e0
movsd xmm4, qword [rsp + 0x60]
movaps xmm0, xmm4
addsd xmm0, xmm10
cvtpd2ps xmm2, xmm0
cvtps2pd xmm1, xmm7
movsd xmm3, qword [rsp + 0x58]
subsd xmm3, xmm1
cvtps2pd xmm9, xmm8
movaps xmm0, xmm9
addsd xmm0, xmm3
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x128], xmm0
movss dword [rbp + 0x12c], xmm2
cvtpd2ps xmm1, xmm4
cvtpd2ps xmm0, xmm3
movss dword [rbp + 0x130], xmm0
movss dword [rbp + 0x134], xmm1
movss dword [rsp + 0x30], xmm6
mov dword [rsp + 0x28], 0xf0
movss xmm0, dword [rbp - 0x60]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x128]
lea rdx, [rbp + 0x130]
mov rcx, r14
call fcn.140026e60
cvtps2pd xmm6, xmm7
lea rcx, [rbp + 0x10]
call fcn.1400037e0
movsd xmm7, qword [rsp + 0x60]
movaps xmm0, xmm7
addsd xmm0, xmm10
cvtpd2ps xmm1, xmm0
movsd xmm10, qword [rsp + 0x58]
movaps xmm2, xmm10
subsd xmm2, xmm6
movaps xmm0, xmm2
addsd xmm0, xmm9
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x138], xmm0
movss dword [rbp + 0x13c], xmm1
cvtpd2ps xmm1, xmm7
cvtpd2ps xmm0, xmm2
movss dword [rbp + 0x140], xmm0
movss dword [rbp + 0x144], xmm1
movss xmm1, dword [0x14010a9f0]
movss dword [rsp + 0x30], xmm1
mov dword [rsp + 0x28], 0xf0
movss xmm9, dword [rbp - 0x60]
movss dword [rsp + 0x20], xmm9
mov r9d, eax
lea r8, [rbp + 0x138]
lea rdx, [rbp + 0x140]
mov rcx, r14
call fcn.140026e60
movzx r11d, byte [0x14010c520]
jmp 0x140055a62
cvtps2pd xmm6, xmm7
movsd xmm7, qword [rsp + 0x60]
movsd xmm10, qword [rsp + 0x58]
movss xmm9, dword [rbp - 0x60]
cmp byte [0x14010c810], dil
je 0x140055b23
cmp byte [0x14010c515], dil
je 0x140055ae1
movaps xmm0, xmmword [0x140074530]
movups xmmword [rbp + 0x5d0], xmm0
lea rcx, [rbp + 0x5d0]
call fcn.1400037e0
movss xmm0, dword [0x14010a9f0]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [rbp - 0x30]
cvttsd2si r9d, xmm0
cvttss2si ebx, xmm12
cvttss2si r8d, xmm8
cvttsd2si edx, xmm7
movaps xmm0, xmm10
subsd xmm0, xmm6
cvttsd2si ecx, xmm0
mov byte [rsp + 0x30], r11b
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r9d
mov r9d, ebx
call fcn.140050c30
movzx r11d, byte [0x14010c520]
jmp 0x140055ae6
cvttss2si ebx, xmm12
lea rcx, [rbp + 0x10]
call fcn.1400037e0
cvttss2si r10d, dword [0x14010a9f0]
cvttss2si r8d, xmm8
cvttsd2si edx, xmm7
movaps xmm0, xmm10
subsd xmm0, xmm6
cvttsd2si ecx, xmm0
mov byte [rsp + 0x30], r11b
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r10d
mov r9d, ebx
call fcn.140050c30
cmp byte [0x14010cab0], dil
je 0x140055bca
cmp byte [0x14010c515], dil
je 0x140055b91
movaps xmm0, xmmword [0x140074530]
movups xmmword [rbp + 0x5e0], xmm0
lea rcx, [rbp + 0x5e0]
call fcn.1400037e0
movss xmm0, dword [0x14010a9f0]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [rbp - 0x30]
cvtpd2ps xmm1, xmm0
mov dword [rsp + 0x28], eax
movss dword [rsp + 0x20], xmm1
movss xmm6, dword [rbp - 0x40]
movaps xmm3, xmm6
movaps xmm2, xmm6
lea rdx, [rbp + 0x250]
lea rcx, [rbp + 0x4f0]
call fcn.1400516c0
jmp 0x140055b96
movss xmm6, dword [rbp - 0x40]
lea rcx, [rbp + 0x10]
call fcn.1400037e0
mov dword [rsp + 0x28], eax
movss xmm0, dword [0x14010a9f0]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm6
movaps xmm2, xmm6
lea rdx, [rbp + 0x250]
lea rcx, [rbp + 0x4f0]
call fcn.1400516c0
cmp byte [0x14010c532], dil
je 0x140055c33
lea rcx, [rbp + 0x20]
call fcn.1400037e0
mov r9d, eax
cvtpd2ps xmm1, xmm7
cvtpd2ps xmm0, xmm10
movss dword [rbp + 0x148], xmm0
movss dword [rbp + 0x14c], xmm1
mov eax, dword [0x14010c798]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x78], xmm0
mov dword [rbp + 0x7c], edi
movss xmm1, dword [0x140074048]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0x148]
lea rdx, [rbp + 0x78]
mov rcx, r14
call fcn.140026d00
cmp byte [0x14010c4fc], dil
je 0x140055cab
lea rcx, [rbp + 0x20]
call fcn.1400037e0
cvtpd2ps xmm1, xmm7
cvtpd2ps xmm0, xmm10
movss dword [rbp + 0x150], xmm0
movss dword [rbp + 0x154], xmm1
movd xmm2, dword [0x14010c7c0]
cvtdq2ps xmm2, xmm2
movd xmm0, dword [0x14010c7c4]
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x158], xmm0
movss dword [rbp + 0x15c], xmm2
movss xmm1, dword [0x140074048]
movss dword [rsp + 0x20], xmm1
mov r9d, eax
lea r8, [rbp + 0x150]
lea rdx, [rbp + 0x158]
mov rcx, r14
call fcn.140026d00
test rsi, rsi
je 0x14005660e
cmp byte [0x14010c4de], dil
je 0x14005660e
mov rcx, qword [r13]
add rcx, 0x948
call fcn.140067790
lea rcx, [rax + 0xc65]
call fcn.140067c90
movzx r15d, al
mov rcx, qword [r13]
add rcx, 0x45c
call fcn.140067c90
movzx r14d, al
mov rcx, qword [r13]
add rcx, 0x753
call fcn.140067c90
movzx edi, al
mov rcx, qword [r13]
add rcx, 0x940
call fcn.140067c90
movzx esi, al
mov rcx, qword [r13 + 0x18]
add rcx, 0x10ec
call fcn.1400676b0
mov r12d, eax
mov rcx, qword [r13 + 0x18]
add rcx, 0x10f0
call fcn.1400676b0
mov r13d, eax
mov rcx, qword [rbp + 0x168]
mov rcx, qword [rcx + 0x18]
add rcx, 0x1245
call fcn.1400676b0
xorps xmm0, xmm0
movups xmmword [rbp + 0xbd0], xmm0
xor eax, eax
mov qword [rbp + 0xbe0], rax
mov edx, 0xf
mov qword [rbp + 0xbe8], rdx
mov byte [rbp + 0xbd0], al
movups xmmword [rbp + 0xbb0], xmm0
mov qword [rbp + 0xbc0], rax
mov qword [rbp + 0xbc8], rdx
mov byte [rbp + 0xbb0], al
movups xmmword [rbp + 0xb40], xmm0
mov qword [rbp + 0xb50], rax
mov ecx, edx
mov qword [rbp + 0xb58], rdx
mov byte [rbp + 0xb40], al
movups xmmword [rbp + 0xb60], xmm0
mov qword [rbp + 0xb70], rax
mov qword [rbp + 0xb78], rdx
mov byte [rbp + 0xb60], al
test dil, dil
je 0x140055e0f
mov qword [rbp + 0xbe0], 7
mov rax, qword [str.Sliding]
mov dword [rbp + 0xbd0], eax
movzx eax, word [0x140072ebc]
mov word [rbp + 0xbd4], ax
movzx eax, byte [0x140072ebe]
mov byte [rbp + 0xbd6], al
mov byte [rbp + 0xbd7], 0
test sil, sil
je 0x140055e46
lea rbx, [rbp + 0xbb0]
mov qword [rbp + 0xbc0], 7
mov r8d, 7
lea rdx, str.Jumping
mov rcx, rbx
call fcn.14006a8d0
mov byte [rbx + 7], 0
mov rcx, qword [rbp + 0xb58]
test r14b, r14b
je 0x140055ea9
test dil, dil
jne 0x140055eae
cmp rcx, 0xa
jb 0x140055e8f
lea rbx, [rbp + 0xb40]
cmp rcx, 0x10
cmovae rbx, qword [rbp + 0xb40]
mov qword [rbp + 0xb50], 0xa
mov r8d, 0xa
lea rdx, str.Chrouching
mov rcx, rbx
call fcn.14006a8d0
mov byte [rbx + 0xa], dil
jmp 0x140055ebd
lea r9, str.Chrouching
mov edx, 0xa
lea rcx, [rbp + 0xb40]
call fcn.140042830
jmp 0x140055ebd
test dil, dil
je 0x140055ebd
test sil, sil
je 0x140055eb8
test r14b, r14b
jne 0x140055f25
test dil, dil
jne 0x140055f25
test sil, sil
jne 0x140055f25
test r14b, r14b
jne 0x140055f25
mov rax, qword [rbp + 0xb78]
cmp rax, 6
jb 0x140055f0d
lea rbx, [rbp + 0xb60]
cmp rax, 0x10
cmovae rbx, qword [rbp + 0xb60]
mov qword [rbp + 0xb70], 6
mov r8d, 6
lea rdx, str.Normal
mov rcx, rbx
call fcn.14006a8d0
mov byte [rbx + 6], r14b
jmp 0x140055f25
lea r9, str.Normal
mov edx, 6
lea rcx, [rbp + 0xb60]
call fcn.140042830
lea rdx, str.Player_State:
add rdx, rdi
lea r8, [rbp + 0xbb0]
lea rcx, [rbp + 0x4b0]
call fcn.140067d70
nop
lea rdx, [rbp + 0xb40]
cmp qword [rbp + 0xb58], 0x10
cmovae rdx, qword [rbp + 0xb40]
mov r8, qword [rbp + 0xb50]
mov rcx, rax
call fcn.140067100
xorps xmm0, xmm0
movups xmmword [rbp + 0x230], xmm0
xor ebx, ebx
mov qword [rbp + 0x240], rbx
mov qword [rbp + 0x248], rbx
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x230], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x240], xmm1
mov qword [rax + 0x10], rbx
mov edi, 0xf
mov qword [rax + 0x18], rdi
mov byte [rax], bl
lea rdx, [rbp + 0xb60]
cmp qword [rbp + 0xb78], 0x10
cmovae rdx, qword [rbp + 0xb60]
mov r8, qword [rbp + 0xb70]
lea rcx, [rbp + 0x230]
call fcn.140067100
xorps xmm0, xmm0
movups xmmword [rbp + 0x210], xmm0
mov qword [rbp + 0x220], rbx
mov qword [rbp + 0x228], rbx
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x210], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x220], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rdi
mov byte [rax], bl
lea r8d, [rbx + 1]
lea rdx, [0x140072754]
lea rcx, [rbp + 0x210]
call fcn.140067100
xorps xmm0, xmm0
movups xmmword [rbp + 0xc10], xmm0
mov qword [rbp + 0xc20], rbx
mov qword [rbp + 0xc28], rbx
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xc10], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xc20], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rdi
mov byte [rax], bl
mov rdx, qword [rbp + 0x228]
cmp rdx, 0x10
jb 0x140056097
inc rdx
mov rcx, qword [rbp + 0x210]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140056092
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140059139
call fcn.14006998c
mov qword [rbp + 0x220], rbx
mov qword [rbp + 0x228], rdi
mov byte [rbp + 0x210], 0
mov rdx, qword [rbp + 0x248]
cmp rdx, 0x10
jb 0x1400560ed
inc rdx
mov rcx, qword [rbp + 0x230]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400560e8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140059140
call fcn.14006998c
mov qword [rbp + 0x240], rbx
mov qword [rbp + 0x248], rdi
mov byte [rbp + 0x230], 0
mov rdx, qword [rbp + 0x4c8]
cmp rdx, 0x10
jb 0x140056143
inc rdx
mov rcx, qword [rbp + 0x4b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005613e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140059147
call fcn.14006998c
mov qword [rbp + 0x4c0], rbx
mov qword [rbp + 0x4c8], rdi
mov byte [rbp + 0x4b0], 0
mov r8d, r12d
lea rdx, str._Kills:__d_
lea rcx, [rbp + 0xfe0]
call fcn.140067c30
mov r8d, r13d
lea rdx, str._Levels:__d_
lea rcx, [rbp + 0x10e0]
call fcn.140067c30
mov r8, qword [0x14010c678]
mov r8d, dword [r8 + 0x20]
lea rdx, str._Ammo:__d_
lea rcx, [rbp + 0x12e0]
call fcn.140067c30
lea rdx, str._Aiming_State:_Aiming_
test r15b, r15b
lea rax, str._Aiming_State:_Not_Aiming_
cmove rdx, rax
lea rcx, [rbp + 0x11e0]
call fcn.140067c30
mov rax, qword [0x14010b5b0]
xor r12d, r12d
mov qword [rsp + 0x30], r12
lea rcx, [rbp + 0xfe0]
mov qword [rsp + 0x28], rcx
movss xmm0, dword [rsp + 0x68]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rbp - 0x78]
movss xmm2, dword [rax + 0x3c08]
lea rdx, [rbp + 0x160]
mov rcx, qword [rax + 0x3c00]
call fcn.14002b820
movss xmm0, dword [rbp + 0x160]
addss xmm0, dword [0x140073ff4]
cvttss2si eax, xmm0
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movss dword [rbp + 0x160], xmm2
mov r13, qword [rbp + 0x168]
mov eax, dword [r13 + 0x3c]
mov ecx, 0xa
cmp eax, 0x3c
mov edx, 5
cmovle ecx, edx
cmp eax, 0x5a
cmovg ecx, edi
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
movdqa xmmword [rbp + 0x5f0], xmm15
movd xmm6, ecx
cvtdq2pd xmm6, xmm6
movaps xmm1, xmm10
addsd xmm1, qword [0x1400740e8]
mulss xmm2, dword [rsp + 0x54]
cvtps2pd xmm0, xmm2
subsd xmm1, xmm0
cvttsd2si ebx, xmm1
movaps xmm0, xmm7
addsd xmm0, qword [0x1400740b0]
subsd xmm0, xmm6
cvttsd2si r8d, xmm0
lea rax, [rbp + 0xfe0]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], r12b
lea r9, [rbp + 0x5f0]
mov edx, ebx
movss xmm8, dword [0x140074170]
movaps xmm0, xmm8
movd ecx, xmm0
call fcn.140050e10
movdqa xmmword [rbp + 0x600], xmm15
movaps xmm0, xmm7
addsd xmm0, qword [0x1400740c8]
subsd xmm0, xmm6
cvttsd2si r8d, xmm0
lea rax, [rbp + 0x10e0]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], r12b
lea r9, [rbp + 0x600]
mov edx, ebx
movaps xmm0, xmm8
movd ecx, xmm0
call fcn.140050e10
lea rax, [rbp + 0xc10]
cmp qword [rbp + 0xc28], 0x10
cmovae rax, qword [rbp + 0xc10]
movdqa xmmword [rbp + 0x610], xmm15
movaps xmm0, xmm7
addsd xmm0, qword [0x1400740e0]
subsd xmm0, xmm6
cvttsd2si r8d, xmm0
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], r12b
lea r9, [rbp + 0x610]
mov edx, ebx
movaps xmm0, xmm8
movd ecx, xmm0
call fcn.140050e10
movdqa xmmword [rbp + 0x620], xmm15
movaps xmm0, xmm7
addsd xmm0, qword [0x1400740f0]
subsd xmm0, xmm6
cvttsd2si r8d, xmm0
lea rax, [rbp + 0x11e0]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], r12b
lea r9, [rbp + 0x620]
mov edx, ebx
movaps xmm0, xmm8
movd ecx, xmm0
call fcn.140050e10
movdqa xmmword [rbp + 0x630], xmm15
movaps xmm0, xmm7
addsd xmm0, qword [0x140074100]
subsd xmm0, xmm6
cvttsd2si r8d, xmm0
lea rax, [rbp + 0x12e0]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], r12b
lea r9, [rbp + 0x630]
mov edx, ebx
movaps xmm0, xmm8
movd ecx, xmm0
call fcn.140050e10
nop
mov rdx, qword [rbp + 0xc28]
cmp rdx, 0x10
jb 0x140056494
inc rdx
mov rcx, qword [rbp + 0xc10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005648f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005914e
call fcn.14006998c
mov qword [rbp + 0xc20], r12
mov qword [rbp + 0xc28], rdi
mov byte [rbp + 0xc10], 0
mov rdx, qword [rbp + 0xb78]
cmp rdx, 0x10
jb 0x1400564ea
inc rdx
mov rcx, qword [rbp + 0xb60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400564e5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140059155
call fcn.14006998c
mov qword [rbp + 0xb70], r12
mov qword [rbp + 0xb78], rdi
mov byte [rbp + 0xb60], 0
mov rdx, qword [rbp + 0xb58]
cmp rdx, 0x10
jb 0x140056540
inc rdx
mov rcx, qword [rbp + 0xb40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005653b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005915c
call fcn.14006998c
mov qword [rbp + 0xb50], r12
mov qword [rbp + 0xb58], rdi
mov byte [rbp + 0xb40], 0
mov rdx, qword [rbp + 0xbc8]
cmp rdx, 0x10
jb 0x140056596
inc rdx
mov rcx, qword [rbp + 0xbb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140056591
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140059163
call fcn.14006998c
mov qword [rbp + 0xbc0], r12
mov qword [rbp + 0xbc8], rdi
mov byte [rbp + 0xbb0], 0
mov rdx, qword [rbp + 0xbe8]
cmp rdx, 0x10
jb 0x1400565ec
inc rdx
mov rcx, qword [rbp + 0xbd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400565e7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005916a
call fcn.14006998c
mov qword [rbp + 0xbe0], r12
mov qword [rbp + 0xbe8], rdi
mov byte [rbp + 0xbd0], 0
mov rsi, qword [rbp + 0x208]
mov r14, qword [rbp - 0x28]
jmp 0x140056611
xor r12d, r12d
movsd xmm10, qword [rbp - 0x10]
movsd xmm12, qword [rbp - 8]
cmp byte [0x14010c522], 0
je 0x140056bc8
mov rax, qword [0x14010c678]
movaps xmm1, xmm14
movaps xmm0, xmm10
unpcklpd xmm0, xmm12
cmp qword [rax + 0xc0], 0
jne 0x140056936
addsd xmm1, qword [rbp - 0x80]
movaps xmmword [rbp + 0x7b0], xmm0
movsd qword [rbp + 0x340], xmm1
movsd qword [rbp + 0x7c0], xmm1
lea rdx, [rbp + 0x7b0]
lea rcx, [rbp + 0x358]
call fcn.140043b40
movaps xmm1, xmm14
subsd xmm1, qword [0x14010aa38]
movaps xmm0, xmm12
subsd xmm0, qword [0x14010aa30]
movaps xmm2, xmm10
subsd xmm2, qword [0x14010aa28]
mulsd xmm2, xmm2
mulsd xmm0, xmm0
addsd xmm2, xmm0
mulsd xmm1, xmm1
addsd xmm2, xmm1
xorps xmm0, xmm0
ucomisd xmm0, xmm2
ja 0x1400566c2
sqrtpd xmm0, xmm2
jmp 0x1400566ca
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 [0x14010c79c]
movss xmm0, dword [0x14010aa58]
mulss xmm0, dword [0x1400740c0]
divss xmm0, dword [0x140074290]
call sub.api_ms_win_crt_math_l1_1_0.dll_tanf
addss xmm6, xmm6
mulss xmm0, xmm6
divss xmm7, xmm0
mulss xmm7, dword [0x1400a46c0]
movsd xmm6, qword [rbp + 0x360]
addsd xmm6, qword [0x1400740d8]
movsd qword [rbp + 0x360], xmm6
movsd xmm9, qword [rbp + 0x358]
cmp byte [0x14010c515], 0
je 0x140056811
mov rax, qword [0x14010b5b0]
mov rax, qword [rax + 0x48a8]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140007790
mov rbx, rax
movss xmm8, dword [0x14007f060]
addss xmm8, dword [0x140074048]
movaps xmm0, xmmword [0x140074530]
movups xmmword [rbp + 0x640], xmm0
lea rcx, [rbp + 0x640]
call fcn.1400037e0
mov edi, eax
cvtpd2ps xmm1, xmm6
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x170], xmm0
movss dword [rbp + 0x174], xmm1
test eax, 0xff000000
je 0x140056811
movss xmm0, dword [rsp + 0x54]
comiss xmm0, xmm7
ja 0x140056811
movaps xmm2, xmm7
subss xmm2, xmm0
mov dword [rsp + 0x28], 0x31
movss xmm0, dword [0x140074148]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rsp + 0x50]
lea rdx, [rbp + 0x170]
mov rcx, rbx
call fcn.140026360
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.1400248e0
mov dword [rbx + 0x78], r12d
mov rax, qword [0x14010b5b0]
mov rax, qword [rax + 0x48a8]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140007790
mov rbx, rax
movss xmm8, dword [0x14007f060]
lea rcx, [rbp + 0x60]
call fcn.1400037e0
mov edi, eax
cvtpd2ps xmm1, xmm6
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x178], xmm0
movss dword [rbp + 0x17c], xmm1
movss xmm6, dword [rsp + 0x54]
movss xmm9, dword [rsp + 0x50]
test eax, 0xff000000
je 0x1400568d2
comiss xmm6, xmm7
ja 0x1400568d2
lea rdx, [rbp + 0x178]
subss xmm7, xmm6
mov dword [rsp + 0x28], 0x31
movss xmm0, dword [0x140074148]
movaps xmm2, xmm7
movaps xmm3, xmm9
movss dword [rsp + 0x20], xmm0
mov rcx, rbx
call fcn.140026360
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.1400248e0
mov dword [rbx + 0x78], r12d
movsd xmm8, qword [rbp - 0x80]
cmp byte [0x14010c5d1], 0
je 0x140056f65
mov r8d, dword [r13 + 0x3c]
lea r9, [rbp + 0xe55]
test r8d, r8d
jns 0x140056bf0
neg r8d
nop dword [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 0x140056900
dec r9
mov byte [r9], 0x2d
jmp 0x140056c1a
movsd xmm8, qword [rbp - 0x80]
addsd xmm1, xmm8
movaps xmmword [rbp + 0x7d0], xmm0
movsd qword [rbp + 0x340], xmm1
movsd qword [rbp + 0x7e0], xmm1
lea rdx, [rbp + 0x7d0]
lea rcx, [rbp + 0x318]
call fcn.140043b40
movaps xmm1, xmm14
subsd xmm1, qword [0x14010aa38]
movaps xmm0, xmm12
subsd xmm0, qword [0x14010aa30]
movaps xmm2, xmm10
subsd xmm2, qword [0x14010aa28]
mulsd xmm2, xmm2
mulsd xmm0, xmm0
addsd xmm2, xmm0
mulsd xmm1, xmm1
addsd xmm2, xmm1
xorps xmm0, xmm0
ucomisd xmm0, xmm2
ja 0x1400569b2
sqrtpd xmm0, xmm2
jmp 0x1400569ba
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 [0x14010c79c]
movss xmm0, dword [0x14010aa58]
mulss xmm0, dword [0x1400740c0]
divss xmm0, dword [0x140074290]
call sub.api_ms_win_crt_math_l1_1_0.dll_tanf
addss xmm6, xmm6
mulss xmm0, xmm6
divss xmm7, xmm0
mulss xmm7, dword [0x1400a46c0]
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [r13 + 0x3c]
movsd xmm6, qword [rbp + 0x320]
comiss xmm9, xmm0
jbe 0x140056a1c
addsd xmm6, qword [0x140074088]
movss xmm1, dword [0x140074130]
comiss xmm1, xmm0
jbe 0x140056a2e
addsd xmm6, xmm8
movss xmm1, dword [0x1400740ac]
comiss xmm1, xmm0
jbe 0x140056a43
addsd xmm6, qword [0x140074098]
addsd xmm6, qword [0x140074078]
movsd qword [rbp + 0x320], xmm6
movss xmm1, dword [0x1400741b4]
comiss xmm1, xmm0
jbe 0x140056bda
movsd xmm9, qword [rbp + 0x318]
cmp byte [0x14010c515], 0
je 0x140056b50
mov rax, qword [0x14010b5b0]
mov rax, qword [rax + 0x48a8]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140007790
mov rbx, rax
movss xmm8, dword [0x14007f060]
addss xmm8, dword [0x140074048]
movaps xmm0, xmmword [0x140074530]
movups xmmword [rbp + 0x650], xmm0
lea rcx, [rbp + 0x650]
call fcn.1400037e0
mov edi, eax
cvtpd2ps xmm1, xmm6
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x180], xmm0
movss dword [rbp + 0x184], xmm1
test eax, 0xff000000
je 0x140056b50
movss xmm0, dword [rsp + 0x54]
comiss xmm0, xmm7
ja 0x140056b50
movaps xmm2, xmm7
subss xmm2, xmm0
mov dword [rsp + 0x28], 0x31
movss xmm0, dword [0x140074148]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rsp + 0x50]
lea rdx, [rbp + 0x180]
mov rcx, rbx
call fcn.140026360
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.1400248e0
mov dword [rbx + 0x78], r12d
mov rax, qword [0x14010b5b0]
mov rax, qword [rax + 0x48a8]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140007790
mov rbx, rax
movss xmm8, dword [0x14007f060]
lea rcx, [rbp + 0x60]
call fcn.1400037e0
mov edi, eax
cvtpd2ps xmm1, xmm6
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x188], xmm0
movss dword [rbp + 0x18c], xmm1
movss xmm6, dword [rsp + 0x54]
test eax, 0xff000000
je 0x140056bce
movss xmm9, dword [rsp + 0x50]
comiss xmm6, xmm7
ja 0x1400568d2
lea rdx, [rbp + 0x188]
jmp 0x140056880
movss xmm6, dword [rsp + 0x54]
movss xmm9, dword [rsp + 0x50]
jmp 0x1400568d2
movss xmm6, dword [rsp + 0x54]
movss xmm9, dword [rsp + 0x50]
jmp 0x1400568d8
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 0x140056bf0
lea r8, [rbp + 0xe55]
mov rdx, r9
lea rcx, [rbp + 0x4d0]
call fcn.140068070
nop
lea rdx, [rbp + 0x4d0]
cmp qword [rbp + 0x4e8], 0x10
cmovae rdx, qword [rbp + 0x4d0]
xorps xmm0, xmm0
movups xmmword [rbp + 0xc88], xmm0
mov qword [rbp + 0xc98], r12
mov qword [rbp + 0xca0], r12
mov r15, 0xffffffffffffffff
mov r8, r15
nop word [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x140056c70
lea rcx, [rbp + 0xc88]
call fcn.140044980
nop
mov rdx, qword [rbp + 0x4e8]
cmp rdx, 0x10
jb 0x140056cc8
inc rdx
mov rcx, qword [rbp + 0x4d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140056cc3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140059178
call fcn.14006998c
movabs rax, 0x7fffffffffffffff
mov rcx, qword [rbp + 0xc98]
sub rax, rcx
cmp rax, 1
jb 0x1400592f1
lea rax, [rbp + 0xc88]
cmp qword [rbp + 0xca0], 0x10
cmovae rax, qword [rbp + 0xc88]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea r9, [0x140072758]
lea rcx, [rbp + 0x3b0]
call fcn.140068eb0
nop
mov r8d, 2
lea rdx, [0x140072f54]
lea rcx, [rbp + 0x3b0]
call fcn.140067100
xorps xmm0, xmm0
movups xmmword [rbp + 0xb80], xmm0
mov qword [rbp + 0xb90], r12
mov qword [rbp + 0xb98], r12
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xb80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xb90], xmm1
mov qword [rax + 0x10], r12
mov ebx, 0xf
mov qword [rax + 0x18], rbx
mov byte [rax], 0
mov rdx, qword [rbp + 0x3c8]
cmp rdx, 0x10
jb 0x140056dbb
inc rdx
mov rcx, qword [rbp + 0x3b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140056db6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140059171
call fcn.14006998c
mov qword [rbp + 0x3c0], r12
mov qword [rbp + 0x3c8], rbx
mov byte [rbp + 0x3b0], 0
lea rcx, [rbp + 0xb80]
mov rdx, qword [rbp + 0xb80]
mov r8, qword [rbp + 0xb98]
cmp r8, 0x10
cmovae rcx, rdx
mov rax, qword [0x14010b5b0]
test rcx, rcx
jne 0x140056dff
movaps xmm0, xmm9
jmp 0x140056e66
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rcx
movss xmm0, dword [rsp + 0x68]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rbp - 0x78]
movss xmm2, dword [rax + 0x3c08]
lea rdx, [rbp + 0x190]
mov rcx, qword [rax + 0x3c00]
call fcn.14002b820
movss xmm0, dword [rbp + 0x190]
addss xmm0, dword [0x140073ff4]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x190], xmm0
mov r8, qword [rbp + 0xb98]
mov rdx, qword [rbp + 0xb80]
lea rax, [rbp + 0xb80]
cmp r8, 0x10
cmovae rax, rdx
movdqa xmmword [rbp + 0x660], xmm15
addsd xmm13, qword [0x140074060]
cvttsd2si r8d, xmm13
mulss xmm0, xmm6
cvtss2sd xmm0, xmm0
movsd xmm1, qword [rbp + 0x4a0]
subsd xmm1, xmm0
cvttsd2si edx, xmm1
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x660]
movss xmm0, dword [0x140074170]
movd ecx, xmm0
call fcn.140050e10
nop
mov rdx, qword [rbp + 0xb98]
cmp rdx, 0x10
jb 0x140056f0d
inc rdx
mov rcx, qword [rbp + 0xb80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140056f08
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140059178
call fcn.14006998c
mov qword [rbp + 0xb90], r12
mov qword [rbp + 0xb98], rbx
mov byte [rbp + 0xb80], 0
mov rdx, qword [rbp + 0xca0]
cmp rdx, 0x10
jb 0x140056f6e
inc rdx
mov rcx, qword [rbp + 0xc88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140056f5e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005917f
call fcn.14006998c
jmp 0x140056f6e
mov ebx, 0xf
lea r15, [rbx - 0x10]
cmp byte [0x14010c4f9], 0
je 0x140057077
mov rdx, qword [r13 + 0x18]
lea rcx, [rbp + 0xc30]
call fcn.140054080
nop
mov rax, qword [0x14010c678]
movsd xmm4, qword [rsp + 0x60]
movsd xmm1, qword [rsp + 0x58]
movss xmm0, dword [0x140074178]
subsd xmm4, qword [0x140074080]
movd ecx, xmm0
cvttsd2si r8d, xmm4
cmp qword [rax + 0xc0], 0
lea rax, [rbp + 0xc30]
jne 0x140056fe3
movdqa xmmword [rbp + 0x670], xmm15
subsd xmm1, qword [0x140074068]
lea r9, [rbp + 0x670]
jmp 0x140056ff8
movdqa xmmword [rbp + 0x680], xmm15
subsd xmm1, xmm8
lea r9, [rbp + 0x680]
cmp qword [rbp + 0xc48], 0x10
cmovae rax, qword [rbp + 0xc30]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
cvttsd2si edx, xmm1
call fcn.140050e10
nop
mov rdx, qword [rbp + 0xc48]
cmp rdx, 0x10
jb 0x140057062
inc rdx
mov rcx, qword [rbp + 0xc30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005705d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140059186
call fcn.14006998c
mov qword [rbp + 0xc40], r12
mov qword [rbp + 0xc48], rbx
mov byte [rbp + 0xc30], 0
cmp byte [0x14010c580], 0
je 0x14005710e
lea rcx, [rbp + 0x20]
call fcn.1400037e0
mov r9d, eax
movsd xmm13, qword [rsp + 0x60]
cvtpd2ps xmm1, xmm13
movsd xmm0, qword [rsp + 0x58]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x198], xmm0
movss dword [rbp + 0x19c], xmm1
mov ecx, dword [0x14010c79c]
add ecx, 0xfffffffb
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mov eax, dword [0x14010c798]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1a0], xmm0
movss dword [rbp + 0x1a4], xmm1
movss xmm1, dword [0x140074048]
movss dword [rsp + 0x20], xmm1
lea r8, [rbp + 0x198]
lea rdx, [rbp + 0x1a0]
mov rcx, r14
call fcn.140026d00
jmp 0x140057115
movsd xmm13, qword [rsp + 0x60]
lea rdi, [rbp + 0x14b8]
cmp byte [0x14010c539], 0
je 0x14005733b
mov rcx, qword [r13 + 0x10]
add rcx, 0x140
mov rbx, qword [rdi]
mov qword [rdi], r12
xorps xmm0, xmm0
movups xmmword [rbp + 0xe08], xmm0
movsd xmm1, qword [rbp - 0x18]
movsd qword [rbp + 0xe18], xmm1
mov r8d, 0x18
lea rdx, [rbp + 0xe08]
call fcn.14004b200
mov qword [rdi], rbx
movsd xmm0, qword [rbp + 0xe10]
cvtpd2ps xmm0, xmm0
cvtps2pd xmm1, xmm0
mulsd xmm1, qword [0x140074008]
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 + 0xe08]
cvtpd2ps xmm1, xmm1
cvtps2pd xmm2, xmm1
mulsd xmm2, qword [0x140074008]
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 - 0x50]
cvtss2sd xmm7, xmm7
movsd xmm0, qword [0x140074110]
mulsd xmm8, xmm0
mulsd xmm6, xmm0
mulsd xmm7, xmm0
addsd xmm7, xmm14
addsd xmm6, xmm12
addsd xmm8, xmm10
movaps xmm0, xmm10
unpcklpd xmm0, xmm12
movaps xmmword [rbp + 0x7f0], xmm0
movsd qword [rbp + 0x340], xmm14
movsd qword [rbp + 0x800], xmm14
lea rdx, [rbp + 0x7f0]
lea rcx, [rbp + 0xa10]
call fcn.140043b40
movsd xmm10, qword [rax]
movsd xmm9, qword [rax + 8]
movaps xmm0, xmm8
unpcklpd xmm0, xmm6
movaps xmmword [rbp + 0x810], xmm0
movsd qword [rbp + 0x340], xmm7
movsd qword [rbp + 0x820], xmm7
lea rdx, [rbp + 0x810]
lea rcx, [rbp + 0x9c0]
call fcn.140043b40
movsd xmm7, qword [rax]
movsd xmm6, qword [rax + 8]
mov rax, qword [0x14010b5b0]
mov rax, qword [rax + 0x48a8]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140007790
mov r10, rax
mov rcx, qword [0x14010b5b0]
mov qword [rbp + 0x268], 0x3f800000
mov dword [rbp + 0x270], 0
movss xmm0, dword [rcx + 0x37d0]
movss dword [rbp + 0x274], xmm0
lea rcx, [rbp + 0x268]
call fcn.1400037e0
cvtpd2ps xmm1, xmm6
cvtpd2ps xmm0, xmm7
movss dword [rbp + 0x1a8], xmm0
movss dword [rbp + 0x1ac], xmm1
cvtpd2ps xmm2, xmm9
cvtpd2ps xmm0, xmm10
movss dword [rbp + 0x1b0], xmm0
movss dword [rbp + 0x1b4], xmm2
movss xmm0, dword [rbp - 0x3c]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x1a8]
lea rdx, [rbp + 0x1b0]
mov rcx, r10
call fcn.140026d00
cmp byte [0x14010c513], 0
je 0x140057382
movdqa xmmword [rbp + 0x690], xmm11
movzx eax, byte [0x14010c5ad]
mov byte [rsp + 0x28], al
movzx eax, byte [0x14010c4fb]
mov byte [rsp + 0x20], al
movzx r9d, byte [0x14010c531]
lea r8, [rbp + 0x690]
movzx edx, byte [0x14010c515]
mov rcx, qword [r13 + 8]
call fcn.140051ad0
test rsi, rsi
je 0x140058109
cmp byte [0x14010c4f8], 0
je 0x140058109
mov rcx, qword [r13 + 0x18]
add rcx, 0x438
call fcn.140067790
mov rbx, qword [rdi]
mov qword [rdi], r12
mov dword [rbp + 0xcc9], r12d
mov word [rbp + 0xccd], r12w
mov byte [rbp + 0xccf], 0
mov dword [rbp + 0xca8], 0x85b3e12
mov qword [rbp + 0xcb0], rax
lea rax, [rbp + 0xf60]
mov qword [rbp + 0xcb8], rax
mov qword [rbp + 0xcc0], pe_nt_image_headers64
mov eax, dword [0x14010c218]
mov dword [rbp + 0xcac], eax
mov byte [rbp + 0xcc8], 0
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
mov r9d, 0x28
lea r8, [rbp + 0xca8]
mov edx, 0x2201c4
mov rcx, qword [0x14010c210]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [rdi], rbx
lea rdx, [rbp + 0xf60]
lea rcx, [rbp + 0xc50]
call fcn.1400664f0
nop
lea rcx, [rbp + 0xc50]
mov rax, qword [rbp + 0xc60]
cmp qword [rbp + 0xc68], 8
jb 0x140057470
mov rdi, qword [rbp + 0xc50]
lea rbx, [rdi + rax*2]
jmp 0x14005747b
lea rbx, [rcx + rax*2]
lea rdi, [rbp + 0xc50]
xorps xmm0, xmm0
movups xmmword [rbp + 0xae8], xmm0
cmp rdi, rbx
jne 0x1400574ac
mov rsi, r12
mov qword [rbp + 0xaf8], r12
mov eax, 0xf
mov qword [rbp + 0xb00], rax
mov byte [rbp + 0xae8], 0
jmp 0x1400575c5
mov rsi, rbx
sub rsi, rdi
sar rsi, 1
mov rdx, r12
mov qword [rbp + 0xaf8], rdx
mov qword [rbp + 0xb00], 0xf
movabs rax, 0x7fffffffffffffff
cmp rsi, rax
ja 0x1400592fd
cmp rsi, 0x10
jb 0x140057570
or rsi, 0xf
cmp rsi, rax
jbe 0x1400574f5
mov rsi, rax
jmp 0x140057502
cmp rsi, 0x16
mov eax, 0x16
cmovb rsi, rax
mov rcx, rsi
add rcx, 1
cmovb rcx, r15
cmp rcx, 0x1000
jb 0x14005754c
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400592f7
mov rcx, rax
call fcn.140069ae8
mov rcx, rax
test rax, rax
je 0x14005918d
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
mov rdx, qword [rbp + 0xaf8]
jmp 0x140057562
test rcx, rcx
je 0x14005755f
call fcn.140069ae8
mov rdx, qword [rbp + 0xaf8]
jmp 0x140057562
mov rax, r12
mov qword [rbp + 0xae8], rax
mov qword [rbp + 0xb00], rsi
lea rcx, [rbp + 0xae8]
call fcn.140040ce0
movzx ecx, byte [rdi]
mov byte [rdx + rax], cl
mov rdx, qword [rbp + 0xaf8]
inc rdx
mov qword [rbp + 0xaf8], rdx
add rdi, 2
cmp rdi, rbx
jne 0x140057570
lea rax, [rbp + 0xae8]
cmp qword [rbp + 0xb00], 0x10
cmovae rax, qword [rbp + 0xae8]
mov byte [rdx + rax], 0
mov rax, qword [rbp + 0xb00]
mov rsi, qword [rbp + 0xaf8]
lea rdx, [rbp + 0xae8]
mov r14, qword [rbp + 0xae8]
cmp rax, 0x10
cmovae rdx, r14
mov r15, qword [0x14010b5b0]
movss xmm6, dword [rsp + 0x68]
movss xmm7, dword [rbp - 0x78]
test rdx, rdx
je 0x140057668
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rdx
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3c08]
lea rdx, [rbp + 0x1b8]
mov rcx, qword [r15 + 0x3c00]
call fcn.14002b820
movss xmm0, dword [rbp + 0x1b8]
movss xmm8, dword [0x140073ff4]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1b8], xmm0
mov rax, qword [rbp + 0xb00]
mov rsi, qword [rbp + 0xaf8]
mov r14, qword [rbp + 0xae8]
mov r15, qword [0x14010b5b0]
jmp 0x140057671
movss xmm8, dword [0x140073ff4]
lea rbx, [rbp + 0xae8]
cmp rax, 0x10
setae r12b
cmovae rbx, r14
cmp rsi, 3
jb 0x1400576f0
lea rdi, [rsi + rbx]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x58
mov rcx, rbx
call fcn.14006a8be
test rax, rax
je 0x1400576f0
cmp byte [rax], 0x58
jne 0x1400576bc
cmp byte [rax + 1], 0x42
jne 0x1400576bc
cmp byte [rax + 2], 0x4c
jne 0x1400576bc
xor ecx, ecx
jmp 0x1400576c1
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x1400576e3
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x58
mov rcx, rax
call fcn.14006a8be
test rax, rax
jne 0x1400576a7
jmp 0x1400576f0
sub rax, rbx
cmp rax, 0xffffffffffffffff
jne 0x1400577c1
lea rbx, [rbp + 0xae8]
test r12b, r12b
cmovne rbx, r14
cmp rsi, 3
jb 0x14005775b
lea rdi, [rsi + rbx]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x58
mov rcx, rbx
call fcn.14006a8be
test rax, rax
je 0x14005775b
cmp byte [rax], 0x58
jne 0x140057736
cmp byte [rax + 1], 0x53
jne 0x140057736
cmp byte [rax + 2], 0x58
jne 0x140057736
xor ecx, ecx
jmp 0x14005773b
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x1400577b8
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x58
mov rcx, rax
call fcn.14006a8be
test rax, rax
jne 0x140057721
lea rbx, [rbp + 0xae8]
test r12b, r12b
cmovne rbx, r14
cmp rsi, 3
jb 0x1400578aa
lea rdi, [rbx + rsi]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x50
mov rcx, rbx
call fcn.14006a8be
test rax, rax
je 0x1400578aa
cmp byte [rax], 0x50
jne 0x140057872
cmp byte [rax + 1], 0x53
jne 0x140057872
cmp byte [rax + 2], 0x4e
jne 0x140057872
xor ecx, ecx
jmp 0x140057877
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x14005775b
mov eax, dword [str.XBOX]
mov dword [rbp + 0xe20], eax
movzx eax, byte [0x140072f5c]
mov byte [rbp + 0xe24], al
xor r12d, r12d
mov qword [rsp + 0x30], r12
lea rax, [rbp + 0xe20]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3c08]
lea rdx, [rbp + 0x1c0]
mov rcx, qword [r15 + 0x3c00]
call fcn.14002b820
movss xmm0, dword [rbp + 0x1c0]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1c0], xmm0
movdqa xmmword [rbp + 0x6a0], xmm15
movaps xmm1, xmm13
subsd xmm1, qword [0x1400740a0]
cvttsd2si r8d, xmm1
movsd xmm0, qword [rsp + 0x58]
addsd xmm0, qword [0x140074060]
cvttsd2si edx, xmm0
lea rax, [rbp + 0xe20]
lea r9, [rbp + 0x6a0]
jmp 0x140057f66
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x14005789d
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x50
mov rcx, rax
call fcn.14006a8be
test rax, rax
jne 0x140057794
jmp 0x1400578aa
sub rax, rbx
cmp rax, 0xffffffffffffffff
jne 0x140057980
lea rbx, [rbp + 0xae8]
test r12b, r12b
cmovne rbx, r14
cmp rsi, 3
jb 0x14005791a
lea rdi, [rbx + rsi]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x50
mov rcx, rbx
call fcn.14006a8be
test rax, rax
je 0x14005791a
nop dword [rax + rax]
cmp byte [rax], 0x50
jne 0x1400578f5
cmp byte [rax + 1], 0x53
jne 0x1400578f5
cmp byte [rax + 2], 0x35
jne 0x1400578f5
xor ecx, ecx
jmp 0x1400578fa
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x140057977
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x50
mov rcx, rax
call fcn.14006a8be
test rax, rax
jne 0x1400578e0
lea rbx, [rbp + 0xae8]
test r12b, r12b
cmovne rbx, r14
cmp rsi, 3
jb 0x140057a4b
lea rdi, [rbx + rsi]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x57
mov rcx, rbx
call fcn.14006a8be
test rax, rax
je 0x140057a4b
cmp byte [rax], 0x57
jne 0x140057a22
cmp byte [rax + 1], 0x49
jne 0x140057a22
cmp byte [rax + 2], 0x4e
jne 0x140057a22
xor ecx, ecx
jmp 0x140057a27
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x14005791a
mov dword [rbp + 0xb2c], 0x4e5350
xor r12d, r12d
mov qword [rsp + 0x30], r12
lea rax, [rbp + 0xb2c]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3c08]
lea rdx, [rbp + 0x1c8]
mov rcx, qword [r15 + 0x3c00]
call fcn.14002b820
movss xmm0, dword [rbp + 0x1c8]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1c8], xmm0
movdqa xmmword [rbp + 0x6b0], xmm15
movaps xmm1, xmm13
subsd xmm1, qword [0x1400740a0]
cvttsd2si r8d, xmm1
movsd xmm0, qword [rsp + 0x58]
addsd xmm0, qword [0x140074060]
cvttsd2si edx, xmm0
lea rax, [rbp + 0xb2c]
lea r9, [rbp + 0x6b0]
jmp 0x140057f66
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x140057aa8
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x57
mov rcx, rax
call fcn.14006a8be
test rax, rax
jne 0x140057953
lea rbx, [rbp + 0xae8]
test r12b, r12b
cmovne rbx, r14
cmp rsi, 3
jb 0x140057b8b
lea rdi, [rsi + rbx]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x53
mov rcx, rbx
call fcn.14006a8be
test rax, rax
je 0x140057b8b
cmp byte [rax], 0x53
jne 0x140057b53
cmp byte [rax + 1], 0x57
jne 0x140057b53
cmp byte [rax + 2], 0x48
jne 0x140057b53
xor ecx, ecx
jmp 0x140057b58
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x140057a4b
mov dword [rbp + 0xb28], 0x4e4957
xor r12d, r12d
mov qword [rsp + 0x30], r12
lea rax, [rbp + 0xb28]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3c08]
lea rdx, [rbp + 0x1d0]
mov rcx, qword [r15 + 0x3c00]
call fcn.14002b820
movss xmm0, dword [rbp + 0x1d0]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1d0], xmm0
movdqa xmmword [rbp + 0x6c0], xmm15
movaps xmm1, xmm13
subsd xmm1, qword [0x1400740a0]
cvttsd2si r8d, xmm1
movsd xmm0, qword [rsp + 0x58]
addsd xmm0, qword [0x140074060]
cvttsd2si edx, xmm0
lea rax, [rbp + 0xb28]
lea r9, [rbp + 0x6c0]
jmp 0x140057f66
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x140057b7e
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x53
mov rcx, rax
call fcn.14006a8be
test rax, rax
jne 0x140057a84
jmp 0x140057b8b
sub rax, rbx
cmp rax, 0xffffffffffffffff
jne 0x140057c60
lea rbx, [rbp + 0xae8]
test r12b, r12b
cmovne rbx, r14
cmp rsi, 3
jb 0x140057bfa
lea rdi, [rsi + rbx]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x53
mov rcx, rbx
call fcn.14006a8be
test rax, rax
je 0x140057bfa
nop dword [rax]
cmp byte [rax], 0x53
jne 0x140057bd5
cmp byte [rax + 1], 0x57
jne 0x140057bd5
cmp byte [rax + 2], 0x54
jne 0x140057bd5
xor ecx, ecx
jmp 0x140057bda
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x140057c57
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x53
mov rcx, rax
call fcn.14006a8be
test rax, rax
jne 0x140057bc0
lea rbx, [rbp + 0xae8]
test r12b, r12b
cmovne rbx, r14
cmp rsi, 3
jb 0x140057d4c
lea rdi, [rsi + rbx]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x4d
mov rcx, rbx
call fcn.14006a8be
test rax, rax
je 0x140057d4c
cmp byte [rax], 0x4d
jne 0x140057d1f
cmp byte [rax + 1], 0x41
jne 0x140057d1f
cmp byte [rax + 2], 0x43
jne 0x140057d1f
xor ecx, ecx
jmp 0x140057d24
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x140057bfa
mov eax, dword [str.SWITCH]
mov dword [rbp + 0xe28], eax
movzx eax, word [0x140072f64]
mov word [rbp + 0xe2c], ax
movzx eax, byte [0x140072f66]
mov byte [rbp + 0xe2e], al
xor r12d, r12d
mov qword [rsp + 0x30], r12
lea rax, [rbp + 0xe28]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3c08]
lea rdx, [rbp + 0x1d8]
mov rcx, qword [r15 + 0x3c00]
call fcn.14002b820
movss xmm0, dword [rbp + 0x1d8]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1d8], xmm0
movdqa xmmword [rbp + 0x6d0], xmm15
movaps xmm1, xmm13
subsd xmm1, qword [0x1400740a0]
cvttsd2si r8d, xmm1
movsd xmm0, qword [rsp + 0x58]
addsd xmm0, qword [0x140074060]
cvttsd2si edx, xmm0
lea rax, [rbp + 0xe28]
lea r9, [rbp + 0x6d0]
jmp 0x140057f66
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x140057dad
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x4d
mov rcx, rax
call fcn.14006a8be
test rax, rax
jne 0x140057c33
lea rbx, [rbp + 0xae8]
test r12b, r12b
cmovne rbx, r14
cmp rsi, 3
jb 0x140057e88
lea rdi, [rsi + rbx]
lea r8, [rdi - 2]
sub r8, rbx
mov edx, 0x4c
mov rcx, rbx
call fcn.14006a8be
test rax, rax
je 0x140057e88
cmp byte [rax], 0x4c
jne 0x140057e58
cmp byte [rax + 1], 0x4e
jne 0x140057e58
cmp byte [rax + 2], 0x58
jne 0x140057e58
xor r12d, r12d
mov ecx, r12d
jmp 0x140057e60
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x140057d4c
mov dword [rbp + 0xb24], 0x43414d
xor r12d, r12d
mov qword [rsp + 0x30], r12
lea rax, [rbp + 0xb24]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm7
movss xmm2, dword [r15 + 0x3c08]
lea rdx, [rbp + 0x1e0]
mov rcx, qword [r15 + 0x3c00]
call fcn.14002b820
movss xmm0, dword [rbp + 0x1e0]
addss xmm0, xmm8
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1e0], xmm0
movdqa xmmword [rbp + 0x6e0], xmm15
movaps xmm1, xmm13
subsd xmm1, qword [0x1400740a0]
cvttsd2si r8d, xmm1
movsd xmm0, qword [rsp + 0x58]
addsd xmm0, qword [0x140074060]
cvttsd2si edx, xmm0
lea rax, [rbp + 0xb24]
lea r9, [rbp + 0x6e0]
jmp 0x140057f66
sbb ecx, ecx
or ecx, 1
xor r12d, r12d
test ecx, ecx
je 0x140057eea
inc rax
lea r8, [rdi - 2]
sub r8, rax
mov edx, 0x4c
mov rcx, rax
call fcn.14006a8be
test rax, rax
jne 0x140057d85
lea rdx, [0x140072f70]
lea rcx, [rbp + 0xae8]
call fcn.140066640
cmp rax, 0xffffffffffffffff
je 0x140057f8b
mov dword [rbp + 0xb20], 0x534f49
movss dword [rsp + 0x20], xmm6
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0xb20]
lea rcx, [rbp + 0x950]
call fcn.14000a660
movdqa xmmword [rbp + 0x700], xmm15
lea rax, [rbp + 0xb20]
lea r9, [rbp + 0x700]
jmp 0x140058009
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x140057e88
mov eax, dword [str.LINUX]
mov dword [rbp + 0xe30], eax
movzx eax, word [0x140072f6c]
mov word [rbp + 0xe34], ax
movss dword [rsp + 0x20], xmm6
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0xe30]
lea rcx, [rbp + 0x960]
call fcn.14000a660
movdqa xmmword [rbp + 0x6f0], xmm15
movaps xmm0, xmm13
subsd xmm0, qword [0x1400740a0]
cvttsd2si r8d, xmm0
movsd xmm1, qword [rsp + 0x58]
addsd xmm1, qword [0x140074060]
cvttsd2si edx, xmm1
lea rax, [rbp + 0xe30]
lea r9, [rbp + 0x6f0]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
movss xmm0, dword [0x140074178]
movd ecx, xmm0
call fcn.140050e10
jmp 0x14005804f
lea rdx, [0x140072f74]
lea rcx, [rbp + 0xae8]
call fcn.140066640
cmp rax, 0xffffffffffffffff
je 0x140057fed
movabs rax, 0x44494f52444e41
mov qword [rbp + 0xe38], rax
movss dword [rsp + 0x20], xmm6
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0xe38]
lea rcx, [rbp + 0x958]
call fcn.14000a660
movdqa xmmword [rbp + 0x710], xmm15
lea rax, [rbp + 0xe38]
lea r9, [rbp + 0x710]
jmp 0x140058009
lea rcx, [rbp + 0xae8]
call fcn.140040ce0
movdqa xmmword [rbp + 0x720], xmm15
lea r9, [rbp + 0x720]
movaps xmm0, xmm13
subsd xmm0, qword [0x1400740a0]
mov qword [rsp + 0x30], rax
cvttsd2si r8d, xmm0
movsd xmm1, qword [rsp + 0x58]
mov byte [rsp + 0x28], 1
movss xmm0, dword [0x140074178]
addsd xmm1, qword [0x140074060]
mov byte [rsp + 0x20], 1
movd ecx, xmm0
cvttsd2si edx, xmm1
call fcn.140050e10
xor r12d, r12d
mov rdx, qword [rbp + 0xb00]
cmp rdx, 0x10
jb 0x140058090
inc rdx
mov rcx, qword [rbp + 0xae8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005808b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005918d
call fcn.14006998c
mov qword [rbp + 0xaf8], r12
mov qword [rbp + 0xb00], 0xf
mov byte [rbp + 0xae8], 0
mov rdx, qword [rbp + 0xc68]
cmp rdx, 8
jb 0x1400580ef
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xc50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400580ea
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140059194
call fcn.14006998c
mov qword [rbp + 0xc60], r12
mov qword [rbp + 0xc68], 7
mov word [rbp + 0xc50], r12w
lea rsi, [rbp + 0x14b8]
mov r14d, 0x28
cmp byte [0x14010c581], 0
je 0x14005835a
movss xmm1, dword [0x14007f064]
cvtps2pd xmm1, xmm1
mov rax, qword [r13 + 8]
add rax, 0x158
movaps xmm0, xmm1
unpcklpd xmm0, xmm1
movaps xmmword [rbp + 0x330], xmm0
movsd qword [rbp + 0x420], xmm1
movsd qword [rbp + 0x340], xmm1
mov rbx, qword [rsi]
mov qword [rsi], r12
mov dword [rbp + 0xcf1], r12d
mov word [rbp + 0xcf5], r12w
mov byte [rbp + 0xcf7], 0
mov dword [rbp + 0xcd0], 0x85b3e12
mov qword [rbp + 0xcd8], rax
lea rax, [rbp + 0x330]
mov qword [rbp + 0xce0], rax
mov qword [rbp + 0xce8], 0x18
mov eax, dword [0x14010c218]
mov dword [rbp + 0xcd4], eax
mov byte [rbp + 0xcf0], 1
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
mov r9d, r14d
lea r8, [rbp + 0xcd0]
mov edx, 0x2201c4
mov rcx, qword [0x14010c210]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [rsi], rbx
movss xmm1, dword [0x14007f064]
cvtps2pd xmm1, xmm1
mov rax, qword [r13 + 8]
add rax, 0x158
movaps xmm0, xmm1
unpcklpd xmm0, xmm1
movaps xmmword [rbp + 0x830], xmm0
movsd qword [rbp + 0x420], xmm1
movsd qword [rbp + 0x840], xmm1
mov qword [rsi], r12
mov dword [rbp + 0xd19], r12d
mov word [rbp + 0xd1d], r12w
mov byte [rbp + 0xd1f], 0
mov dword [rbp + 0xcf8], 0x85b3e12
mov qword [rbp + 0xd00], rax
lea rax, [rbp + 0x830]
mov qword [rbp + 0xd08], rax
mov qword [rbp + 0xd10], 0x18
mov eax, dword [0x14010c218]
mov dword [rbp + 0xcfc], eax
mov byte [rbp + 0xd18], 1
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
mov r9d, r14d
lea r8, [rbp + 0xcf8]
mov edx, 0x2201c4
mov rcx, qword [0x14010c210]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [rsi], rbx
movss xmm1, dword [0x14007f064]
cvtps2pd xmm1, xmm1
mov rax, qword [r13 + 8]
add rax, 0x158
movaps xmm0, xmm1
unpcklpd xmm0, xmm1
movaps xmmword [rbp + 0x410], xmm0
movsd qword [rbp + 0xc80], xmm1
movsd qword [rbp + 0x420], xmm1
mov qword [rsi], r12
mov dword [rbp + 0xd41], r12d
mov word [rbp + 0xd45], r12w
mov byte [rbp + 0xd47], 0
mov dword [rbp + 0xd20], 0x85b3e12
mov qword [rbp + 0xd28], rax
lea rax, [rbp + 0x410]
mov qword [rbp + 0xd30], rax
mov qword [rbp + 0xd38], 0x18
mov eax, dword [0x14010c218]
mov dword [rbp + 0xd24], eax
mov byte [rbp + 0xd40], 1
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
mov r9d, r14d
lea r8, [rbp + 0xd20]
mov edx, 0x2201c4
mov rcx, qword [0x14010c210]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [rsi], rbx
cmp byte [0x14010c533], 0
je 0x1400585a0
mov rax, qword [0x14010c678]
cmp qword [rax + 0x10], 0
je 0x1400585a0
movss xmm1, dword [0x1400a46c4]
cvtps2pd xmm1, xmm1
movaps xmm0, xmm1
unpcklpd xmm0, xmm1
movaps xmmword [rbp + 0x850], xmm0
movsd qword [rbp + 0x400], xmm1
movsd qword [rbp + 0x860], xmm1
mov rdi, qword [rsi]
mov qword [rsi], r12
mov dword [rbp + 0xd69], r12d
mov word [rbp + 0xd6d], r12w
mov byte [rbp + 0xd6f], 0
mov dword [rbp + 0xd48], 0x85b3e12
mov rbx, qword [rbp + 0x350]
add rbx, 0x158
mov qword [rbp + 0xd50], rbx
lea rax, [rbp + 0x850]
mov qword [rbp + 0xd58], rax
mov qword [rbp + 0xd60], 0x18
mov eax, dword [0x14010c218]
mov dword [rbp + 0xd4c], eax
mov byte [rbp + 0xd68], 1
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
mov r9d, r14d
lea r8, [rbp + 0xd48]
mov edx, 0x2201c4
mov rcx, qword [0x14010c210]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [rsi], rdi
movss xmm1, dword [0x1400a46c4]
cvtps2pd xmm1, xmm1
movaps xmm0, xmm1
unpcklpd xmm0, xmm1
movaps xmmword [rbp + 0x870], xmm0
movsd qword [rbp + 0x400], xmm1
movsd qword [rbp + 0x880], xmm1
mov qword [rsi], r12
mov dword [rbp + 0xd91], r12d
mov word [rbp + 0xd95], r12w
mov byte [rbp + 0xd97], 0
mov dword [rbp + 0xd70], 0x85b3e12
mov qword [rbp + 0xd78], rbx
lea rax, [rbp + 0x870]
mov qword [rbp + 0xd80], rax
mov qword [rbp + 0xd88], 0x18
mov eax, dword [0x14010c218]
mov dword [rbp + 0xd74], eax
mov byte [rbp + 0xd90], 1
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
mov r9d, r14d
lea r8, [rbp + 0xd70]
mov edx, 0x2201c4
mov rcx, qword [0x14010c210]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [rsi], rdi
movss xmm1, dword [0x1400a46c4]
cvtps2pd xmm1, xmm1
movaps xmm0, xmm1
unpcklpd xmm0, xmm1
movaps xmmword [rbp + 0x3f0], xmm0
movsd qword [rbp + 0xc80], xmm1
movsd qword [rbp + 0x400], xmm1
mov qword [rsi], r12
mov dword [rbp + 0xdb9], r12d
mov word [rbp + 0xdbd], r12w
mov byte [rbp + 0xdbf], 0
mov dword [rbp + 0xd98], 0x85b3e12
mov qword [rbp + 0xda0], rbx
lea rax, [rbp + 0x3f0]
mov qword [rbp + 0xda8], rax
mov qword [rbp + 0xdb0], 0x18
mov eax, dword [0x14010c218]
mov dword [rbp + 0xd9c], eax
mov byte [rbp + 0xdb8], 1
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
mov r9d, r14d
lea r8, [rbp + 0xd98]
mov edx, 0x2201c4
mov rcx, qword [0x14010c210]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [rsi], rdi
cmp byte [0x14010c586], 0
je 0x14005860f
mov rax, qword [0x14010c678]
mov rcx, qword [rax + 0xc0]
add rcx, 0x25b8
call fcn.140067990
xor eax, eax
movss xmm1, dword [0x1400742f0]
comiss xmm0, xmm1
jb 0x1400585e8
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1400585e8
movabs rcx, 0x8000000000000000
mov rax, rcx
cvttss2si rcx, xmm0
add rax, 0x10f0
add rcx, rax
call fcn.140067790
lea rcx, [rax + 0xf0]
movss xmm1, dword [0x1400742dc]
call fcn.140067ed0
cmp byte [0x14010c585], 0
je 0x140058632
mov rax, qword [0x14010c678]
mov rcx, qword [rax + 0x18]
add rcx, 0x64
movss xmm1, dword [rsp + 0x68]
call fcn.140067ed0
cmp byte [0x14010c503], 0
je 0x14005870a
mov rax, qword [0x14010c678]
mov rcx, qword [rax + 0xc0]
add rcx, 0x25b8
call fcn.140067790
mov rdi, rax
mov ecx, 0x20
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x14005870a
mov byte [rbp + 0xae0], 1
mov rbx, qword [rsi]
mov qword [rsi], r12
mov dword [rbp + 0xde1], r12d
mov word [rbp + 0xde5], r12w
mov byte [rbp + 0xde7], 0
mov dword [rbp + 0xdc0], 0x85b3e12
lea rax, [rdi + 0x6e2]
mov qword [rbp + 0xdc8], rax
lea rax, [rbp + 0xae0]
mov qword [rbp + 0xdd0], rax
mov qword [rbp + 0xdd8], 1
mov eax, dword [0x14010c218]
mov dword [rbp + 0xdc4], eax
mov byte [rbp + 0xde0], 1
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
mov r9d, r14d
lea r8, [rbp + 0xdc0]
mov edx, 0x2201c4
mov rcx, qword [0x14010c210]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [rsi], rbx
mov rax, qword [0x14010c678]
mov rcx, qword [rax + 0xc0]
cmp byte [0x14010c5e3], 0
je 0x140058725
mov dl, 1
jmp 0x140058727
xor dl, dl
add rcx, 0x53d8
call fcn.140067fa0
cmp byte [0x14010c5af], 0
je 0x1400587f2
xorps xmm0, xmm0
movups xmmword [rbp + 0xc70], xmm0
movabs rcx, 0xff00ff00ff00ff00
mov qword [rbp + 0xc78], rcx
mov qword [rbp + 0xc80], rsi
mov rbx, qword [rsi]
mov rax, rbx
xor rax, rcx
mov qword [rbp + 0xc70], rax
mov qword [rsi], r12
mov rax, qword [0x14010c200]
mov ecx, 0x10
call rax
nop
mov qword [rsi], rbx
test ax, ax
je 0x1400587f2
mov rax, qword [0x14010c678]
mov rcx, qword [rax + 0xc0]
add rcx, 0x25b8
call fcn.140067790
mov rbx, rax
lea rcx, [rax + 0xcecd]
movss xmm6, dword [0x140074194]
movaps xmm1, xmm6
call fcn.140067ed0
lea rcx, [rbx + 0x950]
movaps xmm1, xmm6
call fcn.140067ed0
lea rcx, [rbx + 0x954]
movaps xmm1, xmm6
call fcn.140067ed0
lea rcx, [rbx + 0x7e4]
movss xmm1, dword [0x1400742d0]
call fcn.140067ed0
mov r14, qword [rbp - 0x28]
mov r15, qword [rbp - 0x20]
mov r12, qword [rbp - 0x68]
mov eax, dword [0x14010c79c]
cdq
sub eax, edx
sar eax, 1
movd xmm7, eax
cvtdq2pd xmm7, xmm7
mov eax, dword [0x14010c798]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm0, qword [rsp + 0x58]
movsd xmm1, qword [0x140074050]
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm6, xmm0
subsd xmm7, qword [rsp + 0x60]
movsd xmm1, qword [0x140074050]
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 0x140058868
xorps xmm8, xmm8
sqrtsd xmm8, xmm0
jmp 0x140058871
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movaps xmm8, xmm0
movss xmm1, dword [0x14010a9ec]
cvtps2pd xmm1, xmm1
comisd xmm1, xmm8
jbe 0x140058931
movsd xmm0, qword [rbp]
comisd xmm0, xmm8
jbe 0x140058931
cmp dword [r13 + 0x3c], 0xfa
jge 0x140058931
movsd qword [rbp], xmm8
test r12, r12
je 0x1400588c8
lock inc dword [r12 + 8]
mov r12, qword [rbp + 0xb38]
mov qword [rbp - 0x68], r12
mov r13, qword [rbp + 0xb30]
mov rdi, r13
mov qword [rsp + 0x70], r13
mov qword [rbp + 0xb10], r13
mov rbx, qword [rbp + 0xb18]
mov qword [rbp + 0xb18], r12
mov r13, 0xffffffffffffffff
test rbx, rbx
je 0x14005893d
mov eax, r13d
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x14005891c
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r13d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14005891c
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
mov rdi, qword [rbp + 0xb10]
mov qword [rsp + 0x70], rdi
mov rsi, qword [rbp + 0xb38]
jmp 0x140058941
mov r13, 0xffffffffffffffff
mov rdi, qword [rsp + 0x70]
mov rsi, qword [rbp - 0x68]
cmp byte [0x14007f06c], 0
je 0x14005908a
movsd xmm11, qword [rbp - 0x18]
movaps xmm6, xmm11
movaps xmm7, xmm11
mov rcx, qword [rdi + 8]
lea rax, [rbp + 0x14b8]
mov rbx, qword [rax]
xor r12d, r12d
mov qword [rax], r12
test rcx, rcx
jne 0x14005898a
xorps xmm0, xmm0
movups xmmword [rbp + 0x430], xmm0
movsd qword [rbp + 0x440], xmm11
jmp 0x1400589a3
mov r8d, 0x6d
lea rdx, [rbp + 0x430]
call fcn.14004f8d0
movups xmm0, xmmword [rbp + 0x430]
mov qword [r15], rbx
movaps xmmword [rbp + 0x890], xmm0
movsd xmm0, qword [rbp + 0x440]
movsd qword [rbp + 0x8a0], xmm0
lea rdx, [rbp + 0x890]
lea rcx, [rbp + 0x9d0]
call fcn.140043b40
movsd xmm9, qword [rax]
movsd xmm10, qword [rax + 8]
cmp byte [0x14010c582], r12b
je 0x140058a81
mov rcx, qword [rdi + 8]
lea rax, [rbp + 0x14b8]
mov rbx, qword [rax]
mov qword [rax], r12
test rcx, rcx
je 0x140058a17
mov r8d, 0x6d
lea rdx, [rbp + 0xa20]
call fcn.14004f8d0
lea rax, [rbp + 0x14b8]
mov qword [r15], rbx
mov rcx, qword [rdi + 8]
mov qword [rax], r12
test rcx, rcx
jne 0x140058a3b
xorps xmm0, xmm0
movups xmmword [rbp + 0x448], xmm0
movsd qword [rbp + 0x458], xmm11
jmp 0x140058a54
mov r8d, 0x6d
lea rdx, [rbp + 0x448]
call fcn.14004f8d0
movups xmm0, xmmword [rbp + 0x448]
mov qword [r15], rbx
movaps xmmword [rbp + 0x8b0], xmm0
movsd xmm0, qword [rbp + 0x458]
movsd qword [rbp + 0x8c0], xmm0
lea rdx, [rbp + 0x8b0]
lea rcx, [rbp + 0x9e0]
jmp 0x140058c07
cmp byte [0x14010c511], r12b
je 0x140058ae0
mov r8d, 0x42
lea rdx, [rbp + 0xa38]
mov rcx, qword [rdi + 8]
call fcn.14004f8d0
mov r8d, 0x42
lea rdx, [rbp + 0xa50]
mov rcx, qword [rdi + 8]
call fcn.14004f8d0
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x8d0], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x8e0], xmm1
lea rdx, [rbp + 0x8d0]
lea rcx, [rbp + 0x9f0]
jmp 0x140058c07
cmp byte [0x14010c5d0], r12b
je 0x140058bad
mov r8d, 0x25
lea rdx, [rbp + 0xa68]
mov rcx, qword [rdi + 8]
call fcn.14004f8d0
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x8f0], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x900], xmm1
lea rdx, [rbp + 0x8f0]
lea rcx, [rbp + 0x490]
call fcn.140043b40
mov r8d, 8
lea rdx, [rbp + 0xa80]
mov rcx, qword [rdi + 8]
call fcn.14004f8d0
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x910], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x920], xmm1
lea rdx, [rbp + 0x910]
lea rcx, [rbp + 0x730]
call fcn.140043b40
mov r8d, 8
lea rdx, [rbp + 0xa98]
mov rcx, qword [rdi + 8]
call fcn.14004f8d0
movsd xmm6, qword [rbp + 0x730]
subsd xmm6, qword [rbp + 0x490]
mulsd xmm6, qword [0x140074028]
addsd xmm6, qword [rbp + 0x490]
movsd xmm7, qword [rbp + 0x498]
jmp 0x140058c15
cmp byte [0x14010c5e4], r12b
je 0x140058c15
mov r8d, 2
lea rdx, [rbp + 0xab0]
mov rcx, qword [rdi + 8]
call fcn.14004f8d0
mov r8d, 2
lea rdx, [rbp + 0xac8]
mov rcx, qword [rdi + 8]
call fcn.14004f8d0
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x930], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x940], xmm1
lea rdx, [rbp + 0x930]
lea rcx, [rbp + 0xa00]
call fcn.140043b40
movsd xmm6, qword [rax]
movsd xmm7, qword [rax + 8]
cmp byte [0x14010c589], r12b
je 0x140058c39
movss xmm0, dword [0x14010a9ec]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm8
jbe 0x140058c39
cmp byte [0x14010c582], r12b
jne 0x140058c58
cmp byte [0x14010c511], r12b
jne 0x140058c58
cmp byte [0x14010c5d0], r12b
jne 0x140058c58
cmp byte [0x14010c5e4], r12b
je 0x140058d07
mov rax, qword [0x14010b5b0]
mov rax, qword [rax + 0x48a8]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.140007790
mov r10, rax
movaps xmm0, xmmword [0x140074660]
movups xmmword [rbp + 0x740], xmm0
lea rcx, [rbp + 0x740]
call fcn.1400037e0
mov r9d, eax
cvtpd2ps xmm1, xmm7
cvtpd2ps xmm0, xmm6
movss dword [rbp + 0x1e8], xmm0
movss dword [rbp + 0x1ec], xmm1
mov eax, dword [0x14010c79c]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x14010c798]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1f0], xmm0
movss dword [rbp + 0x1f4], xmm1
movss xmm0, dword [rbp - 0x3c]
movss dword [rsp + 0x20], xmm0
lea r8, [rbp + 0x1e8]
lea rdx, [rbp + 0x1f0]
mov rcx, r10
call fcn.140026d00
cmp byte [0x14010c628], r12b
je 0x140058d2b
movss xmm0, dword [0x14010a9ec]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm8
jbe 0x140058d2b
cmp byte [0x14010c582], r12b
jne 0x140058d4a
cmp byte [0x14010c511], r12b
jne 0x140058d4a
cmp byte [0x14010c5d0], r12b
jne 0x140058d4a
cmp byte [0x14010c5e4], r12b
je 0x140058fe8
mov rdx, qword [rdi + 0x18]
lea rcx, [rbp + 0xde8]
call fcn.140054080
nop
movabs rax, 0x7fffffffffffffff
mov rcx, qword [rbp + 0xdf8]
sub rax, rcx
cmp rax, 8
jb 0x1400592eb
lea rax, [rbp + 0xde8]
cmp qword [rbp + 0xe00], 0x10
cmovae rax, qword [rbp + 0xde8]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 8
lea r9, str.Target:
lea rcx, [rbp + 0x3d0]
call fcn.140068eb0
nop
xor r8d, r8d
lea rdx, [0x14006ca26]
lea rcx, [rbp + 0x3d0]
call fcn.140067100
xorps xmm0, xmm0
movups xmmword [rbp + 0xbf0], xmm0
mov qword [rbp + 0xc00], r12
mov qword [rbp + 0xc08], r12
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xbf0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xc00], xmm1
mov qword [rax + 0x10], r12
mov ebx, 0xf
mov qword [rax + 0x18], rbx
mov byte [rax], 0
mov rdx, qword [rbp + 0x3e8]
cmp rdx, 0x10
jb 0x140058e4b
inc rdx
mov rcx, qword [rbp + 0x3d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140058e46
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005919b
call fcn.14006998c
mov qword [rbp + 0x3e0], r12
mov qword [rbp + 0x3e8], rbx
mov byte [rbp + 0x3d0], 0
lea r8, [rbp + 0xbf0]
mov r9, qword [rbp + 0xbf0]
mov r10, qword [rbp + 0xc08]
cmp r10, 0x10
cmovae r8, r9
movaps xmm0, xmmword [0x140074670]
movups xmmword [rbp + 0x750], xmm0
lea rcx, [rbp + 0x750]
call fcn.1400037e0
mov r11d, eax
mov eax, dword [0x14010c79c]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x5a
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x14010c798]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x41
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x1f8], xmm0
movss dword [rbp + 0x1fc], xmm1
test r11d, 0xff000000
je 0x140058f5b
mov rcx, r13
inc rcx
cmp byte [r8 + rcx], 0
jne 0x140058ee4
add rcx, r8
cmp r8, rcx
je 0x140058f5b
mov rax, qword [r14 + 0x38]
movups xmm0, xmmword [r14 + 0x88]
movups xmmword [rbp + 0x760], xmm0
mov byte [rsp + 0x48], 0
movss xmm0, dword [rsp + 0x50]
movss dword [rsp + 0x40], xmm0
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], r8
lea rcx, [rbp + 0x760]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r11d
lea r9, [rbp + 0x1f8]
movss xmm2, dword [rax + 0x10]
mov rdx, r14
mov rcx, qword [rax + 8]
call fcn.14002ba40
mov r10, qword [rbp + 0xc08]
mov r9, qword [rbp + 0xbf0]
cmp r10, 0x10
jb 0x140058f92
lea rdx, [r10 + 1]
mov rax, r9
cmp rdx, 0x1000
jb 0x140058f8a
add rdx, 0x27
mov r9, qword [r9 - 8]
sub rax, r9
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400591a2
mov rcx, r9
call fcn.14006998c
mov qword [rbp + 0xc00], r12
mov qword [rbp + 0xc08], rbx
mov byte [rbp + 0xbf0], 0
mov rdx, qword [rbp + 0xe00]
cmp rdx, 0x10
jb 0x140058fe8
inc rdx
mov rcx, qword [rbp + 0xde8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140058fe3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400591a9
call fcn.14006998c
cmp byte [0x14010c5ac], 0
je 0x140059015
movss xmm0, dword [0x14010a9ec]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm8
jbe 0x140059015
cmp rdi, qword [rbp + 0x368]
jne 0x140059015
cmp byte [0x14010c582], 0
jne 0x140059030
cmp byte [0x14010c511], 0
jne 0x140059030
cmp byte [0x14010c5d0], 0
jne 0x140059030
cmp byte [0x14010c5e4], 0
je 0x14005908a
movaps xmm0, xmmword [0x140074550]
movdqa xmmword [rbp + 0x770], xmm0
subsd xmm10, qword [0x1400740b8]
cvttsd2si r8d, xmm10
subsd xmm9, qword [0x140074068]
cvttsd2si edx, xmm9
lea rax, [0x140072f84]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rbp + 0x770]
movss xmm0, dword [0x140074178]
movd ecx, xmm0
call fcn.140050e10
nop
test rsi, rsi
je 0x1400590ec
mov eax, r13d
lock xadd dword [rsi + 8], eax
jmp 0x1400590b2
mov qword [r15], rbx
test r12, r12
je 0x1400590ec
mov r13, 0xffffffffffffffff
mov eax, r13d
lock xadd dword [r12 + 8], eax
cmp eax, 1
jne 0x1400590e0
mov rbx, qword [rbp + 0xb38]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r13d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x1400590e0
mov rcx, qword [rbp + 0xb38]
mov rax, qword [rcx]
call qword [rax + 8]
mov rcx, qword [rbp + 0xb10]
mov qword [rsp + 0x70], rcx
mov rdx, qword [rbp + 0x200]
add rdx, 0x10
mov qword [rbp + 0x200], rdx
cmp rdx, qword [rbp + 0x30]
je 0x1400591b0
movss xmm9, dword [rsp + 0x54]
movss xmm6, dword [rsp + 0x50]
movsd xmm13, qword [rbp - 0x18]
movsd xmm7, qword [rbp - 0x80]
movups xmm15, xmmword [rbp + 0x780]
movsd xmm8, qword [rbp + 0x40]
movsd xmm11, qword [rbp - 0x38]
jmp 0x140055126
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
mov rsi, qword [rbp + 0xba0]
movsd xmm7, qword [rbp]
mov rdi, 0xffffffffffffffff
cmp byte [0x14007f06c], 0
je 0x14005923a
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x40], xmm0
mov rcx, qword [rbp + 0xb18]
test rcx, rcx
je 0x1400591eb
lock inc dword [rcx + 8]
mov rsi, qword [rbp + 0xba0]
movaps xmm6, xmmword [rbp + 0xb10]
movdqa xmmword [rbp + 0x40], xmm6
lea rdx, [rbp + 0x40]
movaps xmm0, xmm7
call fcn.1400535f0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x30], xmm1
mov rcx, qword [rbp + 0xb18]
test rcx, rcx
je 0x140059229
lock inc dword [rcx + 8]
mov rsi, qword [rbp + 0xba0]
movaps xmm6, xmmword [rbp + 0xb10]
movdqa xmmword [rbp + 0x30], xmm6
lea rdx, [rbp + 0x30]
movaps xmm0, xmm7
call fcn.140053ac0
mov rcx, rsi
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
nop
mov rcx, qword [rbp + 0xb18]
test rcx, rcx
je 0x140059283
mov eax, edi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140059283
mov rbx, qword [rbp + 0xb18]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], edi
cmp edi, 1
jne 0x140059283
mov rcx, qword [rbp + 0xb18]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp + 0x13e0]
xor rcx, rsp
call fcn.140069720
lea r11, [rsp + 0x1590]
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.14002fe40
nop
call fcn.14002fe40
nop
call fcn.14002fda0
int3
call fcn.14002fe40
int3