Function at 0x14004bc70
Capabilities:
Encode data using xor
Generate random numbers using a mersenne twister
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 - 0x1cb0]
mov eax, 0x1db0
call fcn.140051f10
sub rsp, rax
movaps xmmword [rsp + 0x1da0], xmm6
movaps xmmword [rsp + 0x1d90], xmm7
movaps xmmword [rsp + 0x1d80], xmm8
movaps xmmword [rsp + 0x1d70], xmm9
movaps xmmword [rsp + 0x1d60], xmm10
movaps xmmword [rsp + 0x1d50], xmm11
movaps xmmword [rsp + 0x1d40], xmm12
movaps xmmword [rsp + 0x1d30], xmm13
movaps xmmword [rsp + 0x1d20], xmm14
movaps xmmword [rsp + 0x1d10], xmm15
mov rax, qword [0x1400bf6c8]
xor rax, rsp
mov qword [rbp + 0x1c00], rax
xor r15d, r15d
mov rcx, qword [0x1400bf918]
call fcn.1400143d0
lea rdx, [rbp + 0x18a0]
mov rcx, qword [0x1400bf9d8]
call fcn.14004fd50
call fcn.14000b1b0
mov r12, rax
movss xmm0, dword [0x140057298]
movss dword [rsp + 0x44], xmm0
mov r14d, r15d
mov qword [rbp - 0x18], r15
cmp byte [0x1400bf5e8], r14b
je 0x14004be0f
lea rdx, str.pink.cc
lea rcx, [rbp + 0x18a0]
call fcn.140049690
movaps xmm0, xmmword [0x140057300]
movdqa xmmword [rsp + 0x50], xmm0
lea rax, [rbp + 0x18a0]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], r14b
lea r9, [rsp + 0x50]
mov edx, 0x32
mov r8d, edx
movss xmm0, dword [0x1400bf5e4]
movd ecx, xmm0
call fcn.14004a770
call fcn.14000b850
movss xmm2, dword [rax + 0xd8]
cvtps2pd xmm2, xmm2
movq r8, xmm2
lea rdx, str.FPS____.1f
lea rcx, [rbp + 0x18e0]
call fcn.140049690
movaps xmm0, xmmword [0x140057300]
movdqa xmmword [rsp + 0x50], xmm0
lea rax, [rbp + 0x18e0]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], r14b
lea r9, [rsp + 0x50]
lea edx, [r15 + 0x6e]
lea r8d, [r15 + 0x46]
movss xmm0, dword [0x1400bf5e4]
movd ecx, xmm0
call fcn.14004a770
movss xmm6, dword [0x14005b074]
cmp byte [0x1400bfb99], r14b
je 0x14004bfb3
lea r8, str.Current_Position
mov edx, 0x164
lea rcx, [rbp + 0x1920]
call fcn.140051a50
movaps xmm0, xmmword [0x140057300]
movdqa xmmword [rsp + 0x50], xmm0
lea rax, [rbp + 0x1920]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], r14b
lea r9, [rsp + 0x50]
mov edx, 9
mov r8d, 0x16f
movaps xmm0, xmm6
movd ecx, xmm0
call fcn.14004a770
mov rax, qword [0x1400bf9f0]
movsd xmm3, qword [rax + 0x60]
movq r9, xmm3
lea r8, str.X:__llx
mov edx, 0x164
lea rcx, [rbp + 0x1920]
call fcn.140051a50
movaps xmm0, xmmword [0x140057300]
movdqa xmmword [rsp + 0x50], xmm0
lea rax, [rbp + 0x1920]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], r14b
lea r9, [rsp + 0x50]
mov edx, 9
mov r8d, 0x17b
movaps xmm0, xmm6
movd ecx, xmm0
call fcn.14004a770
mov rax, qword [0x1400bf9f0]
movsd xmm3, qword [rax + 0x68]
movq r9, xmm3
lea r8, str.Y:__llx
mov edx, 0x164
lea rcx, [rbp + 0x1920]
call fcn.140051a50
movaps xmm0, xmmword [0x140057300]
movdqa xmmword [rsp + 0x50], xmm0
lea rax, [rbp + 0x1920]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], r14b
lea r9, [rsp + 0x50]
mov edx, 9
mov r8d, 0x18b
movaps xmm0, xmm6
movd ecx, xmm0
call fcn.14004a770
mov rax, qword [0x1400bf9f0]
movsd xmm3, qword [rax + 0x70]
movq r9, xmm3
lea r8, str.Z:__llx
mov edx, 0x164
lea rcx, [rbp + 0x1920]
call fcn.140051a50
movaps xmm0, xmmword [0x140057300]
movdqa xmmword [rsp + 0x50], xmm0
lea rax, [rbp + 0x1920]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], r14b
lea r9, [rsp + 0x50]
mov edx, 9
mov r8d, 0x19a
movaps xmm0, xmm6
movd ecx, xmm0
call fcn.14004a770
movss xmm14, dword [0x140057234]
mov rax, qword [0x1400bf9f0]
mov rcx, qword [rax + 0x28]
cmp byte [0x1400bfb9a], r14b
je 0x14004c135
add rcx, 0x2568
call fcn.1400495b0
mov rdi, rax
mov r9, rax
lea r8, str.Flying:__llx
mov edx, 0x164
lea rcx, [rbp + 0x1a90]
call fcn.140051a50
movaps xmm1, xmmword [0x140057300]
movdqa xmmword [rsp + 0x50], xmm1
lea rax, [rbp + 0x1a90]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], r14b
lea r9, [rsp + 0x50]
mov edx, 0x37d
mov r8d, 0x6e
movaps xmm0, xmm6
movd ecx, xmm0
call fcn.14004a770
mov dword [rbp + 0x440], 0x41200000
mov rax, qword [0x1400bf9f0]
mov rcx, qword [rax + 0x28]
add rcx, 0x2664
lea rsi, [rbp + 0x1cd8]
mov rbx, qword [rsi]
mov qword [rsi], r15
mov r8d, 4
lea rdx, [rbp + 0x440]
call fcn.140051980
mov qword [rsi], rbx
mov byte [rbp + 0x410], 1
mov rax, qword [0x1400bf9f0]
mov rcx, qword [rax + 0x28]
add rcx, 0x2580
lea rsi, [rbp + 0x1cd8]
mov qword [rsi], r15
mov r13d, 1
mov r8d, r13d
lea rdx, [rbp + 0x410]
call fcn.140051980
mov qword [rsi], rbx
mov dword [rbp + 0x440], 0x3f800000
mov rax, qword [0x1400bf9f0]
mov rcx, qword [rax + 0x28]
add rcx, 0x25a0
lea rsi, [rbp + 0x1cd8]
mov qword [rsi], r15
lea r8d, [r13 + 3]
lea rdx, [rbp + 0x440]
call fcn.140051980
mov qword [rsi], rbx
cmp qword [sym.imp.USER32.dll_GetAsyncKeyState], r14
je 0x14004c113
mov rax, qword [0x1400bf9f0]
mov rcx, qword [rax + 0x28]
add rcx, 0x2581
movzx edx, r13b
call fcn.1400496f0
test rdi, rdi
je 0x14004c168
mov rax, qword [0x1400bf9f0]
mov rcx, qword [rax + 0x28]
add rcx, 0x2564
movzx edx, r13b
call fcn.1400496f0
jmp 0x14004c168
mov byte [rbp + 0x410], r14b
add rcx, 0x2564
lea rdi, [rbp + 0x1cd8]
mov rbx, qword [rdi]
mov qword [rdi], r15
mov r13d, 1
mov r8d, r13d
lea rdx, [rbp + 0x410]
call fcn.140051980
mov qword [rdi], rbx
mov r15, qword [0x1400bfb10]
mov qword [rbp - 0x20], r15
mov rax, qword [0x1400bfb18]
mov qword [rbp + 0x240], rax
movss xmm15, dword [0x140057240]
movss xmm13, dword [0x14005720c]
cmp r15, rax
je 0x14004e646
movzx edi, byte [rbp + 0x410]
movzx ebx, byte [rbp + 0x410]
nop word [rax + rax]
mov rsi, qword [r15 + 8]
lea rcx, [rsi + 0x598]
call fcn.1400495b0
test rax, rax
jne 0x14004c1d1
lea rcx, [rsi + 0x5a8]
call fcn.1400495b0
mov rdx, rax
lea rcx, [rbp + 0x330]
call fcn.140049490
lea rdx, [rsi + 0x1c0]
lea rcx, [rbp + 0x2d0]
call fcn.140049490
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x2d0]
call fcn.14004b910
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
movups xmm8, xmmword [rax + 0x20]
movups xmm9, xmmword [rax + 0x30]
lea rdx, [rbp + 0x390]
lea rcx, [rbp + 0x330]
call fcn.14004b910
movaps xmmword [rbp + 0x18a0], xmm6
movaps xmmword [rbp + 0x18b0], xmm7
movaps xmmword [rbp + 0x18c0], xmm8
movaps xmmword [rbp + 0x18d0], xmm9
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x18e0], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x18f0], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x1900], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rbp + 0x1910], xmm1
lea r8, [rbp + 0x18a0]
lea rdx, [rbp + 0x18e0]
lea rcx, [rbp + 0x3d0]
call fcn.14004ae90
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x18a0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x18b0], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rbp + 0x18c0], xmm0
movups xmm1, xmmword [rax + 0x30]
xorps xmm10, xmm10
cvtss2sd xmm10, xmm1
movaps xmm0, xmm1
shufps xmm0, xmm1, 0x55
xorps xmm11, xmm11
cvtss2sd xmm11, xmm0
shufps xmm1, xmm1, 0xaa
xorps xmm12, xmm12
cvtss2sd xmm12, xmm1
movsd qword [rbp + 0x1880], xmm10
movsd qword [rbp + 0x1888], xmm11
movsd qword [rbp + 0x1890], xmm12
lea r8, [rbp + 0x1880]
lea rdx, [rbp + 0x2b0]
mov rcx, qword [0x1400bf9d8]
call fcn.140051580
movsd xmm0, qword [rax]
movsd qword [0x1400bfa10], xmm0
movsd xmm1, qword [rax + 8]
movsd qword [0x1400bfa18], xmm1
movaps xmm1, xmm12
addsd xmm1, qword [0x14005c8d8]
movaps xmm0, xmm10
unpcklpd xmm0, xmm11
movaps xmmword [rbp + 0x1880], xmm0
movsd qword [rbp - 0x50], xmm1
movsd qword [rbp + 0x1890], xmm1
lea r8, [rbp + 0x1880]
lea rdx, [rbp + 0x2c0]
mov rcx, qword [0x1400bf9d8]
call fcn.140051580
movsd xmm0, qword [rax]
movsd qword [0x1400bfaf0], xmm0
movsd xmm1, qword [rax + 8]
movsd qword [0x1400bfaf8], xmm1
movaps xmm1, xmm12
subsd xmm1, qword [0x14005c8c8]
movaps xmm0, xmm10
unpcklpd xmm0, xmm11
movaps xmmword [rbp + 0x1880], xmm0
movsd qword [rbp - 0x50], xmm1
movsd qword [rbp + 0x1890], xmm1
lea r8, [rbp + 0x1880]
lea rdx, [rbp + 0x250]
mov rcx, qword [0x1400bf9d8]
call fcn.140051580
movsd xmm0, qword [rax]
movsd qword [0x1400bfb00], xmm0
movsd xmm1, qword [rax + 8]
movsd qword [0x1400bfb08], xmm1
mov rsi, qword [r15 + 8]
lea rcx, [rsi + 0x598]
call fcn.1400495b0
test rax, rax
jne 0x14004c3fb
lea rcx, [rsi + 0x5a8]
call fcn.1400495b0
lea rdx, [rax + 0x28e0]
lea rcx, [rbp + 0x2d0]
call fcn.140049490
lea rdx, [rsi + 0x1c0]
lea rcx, [rbp + 0x330]
call fcn.140049490
lea rdx, [rbp + 0x3d0]
lea rcx, [rbp + 0x330]
call fcn.14004b910
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
movups xmm8, xmmword [rax + 0x20]
movups xmm9, xmmword [rax + 0x30]
lea rdx, [rbp + 0x390]
lea rcx, [rbp + 0x2d0]
call fcn.14004b910
movaps xmmword [rbp + 0x18a0], xmm6
movaps xmmword [rbp + 0x18b0], xmm7
movaps xmmword [rbp + 0x18c0], xmm8
movaps xmmword [rbp + 0x18d0], xmm9
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x18e0], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x18f0], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x1900], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rbp + 0x1910], xmm1
lea r8, [rbp + 0x18a0]
lea rdx, [rbp + 0x18e0]
lea rcx, [rbp - 0x60]
call fcn.14004ae90
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x18a0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x18b0], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rbp + 0x18c0], xmm0
movups xmm1, xmmword [rax + 0x30]
xorps xmm8, xmm8
cvtss2sd xmm8, xmm1
movaps xmm0, xmm1
shufps xmm0, xmm1, 0x55
xorps xmm6, xmm6
cvtss2sd xmm6, xmm0
shufps xmm1, xmm1, 0xaa
xorps xmm7, xmm7
cvtss2sd xmm7, xmm1
movsd qword [rbp + 0x1880], xmm8
movsd qword [rbp + 0x1888], xmm6
movsd qword [rbp + 0x1890], xmm7
lea r8, [rbp + 0x1880]
lea rdx, [rbp + 0x420]
mov rcx, qword [0x1400bf9d8]
call fcn.140051580
movsd xmm0, qword [rax]
movsd qword [0x1400bfa00], xmm0
movsd xmm1, qword [rax + 8]
movsd qword [0x1400bfa08], xmm1
addsd xmm7, qword [0x14005c8c8]
movaps xmm0, xmm8
unpcklpd xmm0, xmm6
movaps xmmword [rbp + 0x1880], xmm0
movsd qword [rbp - 0x50], xmm7
movsd qword [rbp + 0x1890], xmm7
lea r8, [rbp + 0x1880]
lea rdx, [rbp - 0x80]
mov rcx, qword [0x1400bf9d8]
call fcn.140051580
movsd xmm0, qword [rax]
movsd qword [0x1400bfae0], xmm0
movsd xmm1, qword [rax + 8]
movsd qword [0x1400bfae8], xmm1
movsd xmm0, qword [0x1400bfa08]
subsd xmm0, qword [0x1400bfb08]
andps xmm0, xmmword [0x14005c070]
cvtpd2ps xmm9, xmm0
movaps xmm8, xmm9
mulss xmm8, dword [0x14005c898]
mov rsi, qword [0x1400bf9f0]
subsd xmm11, qword [rsi + 0x68]
cvtpd2ps xmm0, xmm11
movaps xmm1, xmm15
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm6, xmm0
subsd xmm10, qword [rsi + 0x60]
cvtpd2ps xmm0, xmm10
movaps xmm1, xmm15
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
subsd xmm12, qword [rsi + 0x70]
cvtpd2ps xmm0, xmm12
movaps xmm1, xmm15
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm6
ja 0x14004c626
xorps xmm0, xmm0
sqrtss xmm0, xmm6
jmp 0x14004c62e
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
cvtss2sd xmm0, xmm0
divsd xmm0, qword [0x14005bff0]
xorps xmm12, xmm12
cvtsd2ss xmm12, xmm0
mov ecx, 0x5b8
call fcn.1400495b0
comiss xmm12, dword [0x140065124]
jbe 0x14004c669
mov rax, qword [0x1400bf9f0]
cmp qword [rax + 0x28], 0
jne 0x14004e5fc
cmp byte [0x1400bf5e0], 0
je 0x14004c75b
mov eax, dword [0x1400bfbbc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd xmm2, qword [0x1400bfa00]
subsd xmm2, xmm0
mov eax, dword [0x1400bfbc0]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd xmm1, qword [0x1400bfa08]
subsd xmm1, xmm0
mulsd xmm1, xmm1
mulsd xmm2, xmm2
addsd xmm1, xmm2
cvtpd2ps xmm3, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm3
ja 0x14004c6d5
xorps xmm7, xmm7
sqrtss xmm7, xmm3
jmp 0x14004c6e0
movaps xmm0, xmm3
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm7, xmm0
cmp byte [0x1400bfb9b], 0
je 0x14004c736
mov rsi, qword [r15 + 8]
lea rcx, [rsi + 0x2e8]
call fcn.1400492b0
movaps xmm6, xmm0
lea rcx, [rsi + 0x2f0]
call fcn.1400492b0
addss xmm0, dword [0x14005ba38]
comiss xmm0, xmm6
jb 0x14004c75b
movss xmm0, dword [0x1400bf5ec]
comiss xmm0, xmm7
jbe 0x14004c75b
movss xmm0, dword [rsp + 0x44]
comiss xmm0, xmm7
jbe 0x14004c75b
mov r14, qword [r15]
mov qword [rbp - 0x18], r14
jmp 0x14004c755
movss xmm0, dword [0x1400bf5ec]
comiss xmm0, xmm7
jbe 0x14004c75b
movss xmm0, dword [rsp + 0x44]
comiss xmm0, xmm7
jbe 0x14004c75b
mov rax, qword [r15]
mov qword [rbp - 0x18], rax
movss dword [rsp + 0x44], xmm7
cmp byte [0x1400bfbb0], 0
je 0x14004c85b
call fcn.14000b1b0
mov rsi, rax
movaps xmm0, xmmword [0x14005b1f0]
movups xmmword [rbp + 0x270], xmm0
lea rcx, [rbp + 0x270]
call fcn.140008360
mov r9d, eax
mov eax, dword [0x1400bfbc0]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400bfbbc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 8], xmm0
movss dword [rbp - 4], xmm1
movss xmm0, dword [0x140057248]
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 0x40
movss xmm2, dword [0x1400bf5ec]
lea rdx, [rbp - 8]
mov rcx, rsi
call fcn.14001e890
call fcn.14000b1b0
mov rsi, rax
movaps xmm0, xmmword [0x140057300]
movups xmmword [rbp + 0x280], xmm0
lea rcx, [rbp + 0x280]
call fcn.140008360
mov r9d, eax
mov eax, dword [0x1400bfbc0]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400bfbbc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp], xmm0
movss dword [rbp + 4], xmm1
movss dword [rsp + 0x28], xmm14
mov dword [rsp + 0x20], 0x40
movss xmm2, dword [0x1400bf5ec]
lea rdx, [rbp]
mov rcx, rsi
call fcn.14001e890
cmp byte [0x1400bf5f3], 0
je 0x14004cb34
mov eax, dword [0x1400bfbc0]
cdq
sub eax, edx
sar eax, 1
movd xmm7, eax
cvtdq2ps xmm7, xmm7
mov eax, dword [0x1400bfbbc]
cdq
sub eax, edx
sar eax, 1
movd xmm6, eax
cvtdq2ps xmm6, xmm6
lea rcx, [0x140065128]
call fcn.140008360
mov esi, eax
movaps xmm0, xmm6
subss xmm0, dword [0x14006511c]
movss dword [rbp + 8], xmm0
movss dword [rbp + 0xc], xmm7
movaps xmm1, xmm6
subss xmm1, dword [0x140065118]
movss dword [rbp + 0x10], xmm1
movss dword [rbp + 0x14], xmm7
movss xmm0, dword [0x140065120]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 8]
lea rdx, [rbp + 0x10]
mov rcx, r12
call fcn.140020030
movaps xmm0, xmm6
addss xmm0, dword [0x14006511c]
movss dword [rbp + 0x18], xmm0
movss dword [rbp + 0x1c], xmm7
movaps xmm1, xmm6
addss xmm1, dword [0x140065118]
movss dword [rbp - 0x10], xmm1
movss dword [rbp - 0xc], xmm7
movss xmm0, dword [0x140065120]
movss dword [rsp + 0x20], xmm0
mov r9d, esi
lea r8, [rbp + 0x18]
lea rdx, [rbp - 0x10]
mov rcx, r12
call fcn.140020030
movaps xmm0, xmm7
subss xmm0, dword [0x14006511c]
movss dword [rbp + 0x28], xmm6
movss dword [rbp + 0x2c], xmm0
movaps xmm1, xmm7
subss xmm1, dword [0x140065118]
movss dword [rbp + 0x30], xmm6
movss dword [rbp + 0x34], xmm1
movss xmm0, dword [0x140065120]
movss dword [rsp + 0x20], xmm0
mov r9d, esi
lea r8, [rbp + 0x28]
lea rdx, [rbp + 0x30]
mov rcx, r12
call fcn.140020030
movaps xmm0, xmm7
addss xmm0, dword [0x14006511c]
movss dword [rbp + 0x38], xmm6
movss dword [rbp + 0x3c], xmm0
movaps xmm1, xmm7
addss xmm1, dword [0x140065118]
movss dword [rbp + 0x40], xmm6
movss dword [rbp + 0x44], xmm1
movss xmm0, dword [0x140065120]
movss dword [rsp + 0x20], xmm0
mov r9d, esi
lea r8, [rbp + 0x38]
lea rdx, [rbp + 0x40]
mov rcx, r12
call fcn.140020030
movss xmm2, dword [0x140065120]
subss xmm2, xmm14
movaps xmm0, xmm6
subss xmm0, dword [0x14006511c]
addss xmm0, xmm14
movss dword [rbp + 0x48], xmm0
movss dword [rbp + 0x4c], xmm7
movaps xmm1, xmm6
subss xmm1, dword [0x140065118]
subss xmm1, xmm14
movss dword [rbp + 0x50], xmm1
movss dword [rbp + 0x54], xmm7
movss dword [rsp + 0x20], xmm2
mov r9d, esi
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x50]
mov rcx, r12
call fcn.140020030
movss xmm2, dword [0x140065120]
subss xmm2, xmm14
movaps xmm0, xmm6
addss xmm0, dword [0x14006511c]
subss xmm0, xmm14
movss dword [rbp + 0x58], xmm0
movss dword [rbp + 0x5c], xmm7
movaps xmm1, xmm6
addss xmm1, dword [0x140065118]
addss xmm1, xmm14
movss dword [rbp + 0x60], xmm1
movss dword [rbp + 0x64], xmm7
movss dword [rsp + 0x20], xmm2
mov r9d, esi
lea r8, [rbp + 0x58]
lea rdx, [rbp + 0x60]
mov rcx, r12
call fcn.140020030
movss xmm2, dword [0x140065120]
subss xmm2, xmm14
movaps xmm0, xmm7
subss xmm0, dword [0x14006511c]
addss xmm0, xmm14
movss dword [rbp + 0x68], xmm6
movss dword [rbp + 0x6c], xmm0
movaps xmm1, xmm7
subss xmm1, dword [0x140065118]
subss xmm1, xmm14
movss dword [rbp + 0x70], xmm6
movss dword [rbp + 0x74], xmm1
movss dword [rsp + 0x20], xmm2
mov r9d, esi
lea r8, [rbp + 0x68]
lea rdx, [rbp + 0x70]
mov rcx, r12
call fcn.140020030
movss xmm1, dword [0x140065120]
subss xmm1, xmm14
movaps xmm0, xmm7
addss xmm0, dword [0x14006511c]
subss xmm0, xmm14
movss dword [rbp + 0x78], xmm6
movss dword [rbp + 0x7c], xmm0
addss xmm7, dword [0x140065118]
addss xmm7, xmm14
movss dword [rbp + 0x80], xmm6
movss dword [rbp + 0x84], xmm7
movss dword [rsp + 0x20], xmm1
mov r9d, esi
lea r8, [rbp + 0x78]
lea rdx, [rbp + 0x80]
mov rcx, r12
call fcn.140020030
cmp byte [0x1400bfbaa], 0
je 0x14004cbad
call fcn.14000b1b0
mov r14, rax
movaps xmm0, xmmword [0x14005c9c0]
movups xmmword [rbp + 0x290], xmm0
lea rcx, [rbp + 0x290]
call fcn.140008360
mov esi, eax
call fcn.14000b850
movss xmm6, dword [rax + 0xe04]
call fcn.14000b850
movss xmm0, dword [rax + 0xe00]
movss dword [rbp + 0x88], xmm0
movss dword [rbp + 0x8c], xmm6
mov dword [rsp + 0x20], 0x32
mov r9d, esi
movss xmm2, dword [0x140057250]
lea rdx, [rbp + 0x88]
mov rcx, r14
call fcn.14001e980
cmp byte [0x1400bfbb7], 0
je 0x14004cc4a
mov rax, qword [0x1400bf9f0]
mov rcx, qword [rax + 0x28]
add rcx, 0xa20
call fcn.1400495b0
mov r14, rax
mov dword [rbp + 0x448], 0xbf800000
mov rcx, qword [0x1400bf9f0]
mov rcx, qword [rcx + 0x20]
add rcx, 0x68
lea rax, [rbp + 0x1cd8]
mov rsi, qword [rax]
mov qword [rax], 0
mov r8d, 4
lea rdx, [rbp + 0x448]
call fcn.140051980
mov dword [rbp + 0x448], 0x7f7fffff
lea rax, [rbp + 0x1cd8]
mov qword [rax], 0
lea rcx, [r14 + 0x68]
mov r8d, 4
lea rdx, [rbp + 0x448]
call fcn.140051980
lea r14, [rbp + 0x1cd8]
mov qword [r14], rsi
jmp 0x14004cc51
lea r14, [rbp + 0x1cd8]
cmp byte [0x1400bfbb8], 0
je 0x14004cc92
mov dword [rbp + 0x468], 0xbf800000
mov rax, qword [0x1400bf9f0]
mov rcx, qword [rax + 0x20]
add rcx, 0x68
mov rsi, qword [r14]
mov qword [r14], 0
mov r8d, 4
lea rdx, [rbp + 0x468]
call fcn.140051980
mov qword [r14], rsi
movss xmm7, dword [0x1400bf1b0]
movss xmm10, dword [0x1400bf1ac]
movss xmm11, dword [0x1400bf1a8]
movss xmm0, dword [0x1400bf1b8]
movss dword [rbp + 0x230], xmm0
movss xmm1, dword [0x1400bf1bc]
movss dword [rbp + 0x234], xmm1
movss xmm0, dword [0x1400bf1c0]
movss dword [rbp + 0x238], xmm0
mov dword [rbp + 0x23c], 0x3f800000
movss xmm1, dword [0x1400bf1c8]
movss dword [rsp + 0x50], xmm1
movss xmm0, dword [0x1400bf1cc]
movss dword [rsp + 0x54], xmm0
movss xmm1, dword [0x1400bf1d0]
movss dword [rsp + 0x58], xmm1
mov dword [rsp + 0x5c], 0x3f800000
xorps xmm0, xmm0
movups xmmword [rbp + 0x450], xmm0
cmp byte [0x1400bfb9b], 0
je 0x14004cdaa
cmp byte [0x1400bf5f1], 0
je 0x14004cdaa
mov rsi, qword [r15 + 8]
lea rcx, [rsi + 0x2e8]
call fcn.1400492b0
movaps xmm6, xmm0
lea rcx, [rsi + 0x2f0]
call fcn.1400492b0
addss xmm0, dword [0x14005ba38]
comiss xmm0, xmm6
jb 0x14004cd90
movss dword [rbp + 0x220], xmm11
movss dword [rbp + 0x224], xmm10
movss dword [rbp + 0x228], xmm7
mov dword [rbp + 0x22c], 0x3f800000
lea rax, [rbp + 0x220]
movups xmm0, xmmword [rax]
jmp 0x14004cdaf
movups xmm0, xmmword [rbp + 0x230]
movups xmmword [rbp + 0x2a0], xmm0
lea rax, [rbp + 0x2a0]
movups xmm0, xmmword [rax]
jmp 0x14004cdaf
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rbp + 0x450], xmm0
cmp byte [0x1400bfb9c], 0
je 0x14004cf71
cmp byte [0x1400bf5f1], 0
je 0x14004cf71
mov ecx, dword [0x1400bfba0]
test ecx, ecx
je 0x14004ceef
sub ecx, 1
je 0x14004ce69
cmp ecx, 1
jne 0x14004cf71
movd xmm6, dword [0x1400bf600]
cvtdq2ps xmm6, xmm6
lea rcx, [rbp + 0x450]
call fcn.140008360
mov r9d, eax
movsd xmm1, qword [0x1400bfaf8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [0x1400bfaf0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x20], xmm0
movss dword [rbp + 0x24], xmm1
movd xmm2, dword [0x1400bfbc0]
cvtdq2ps xmm2, xmm2
mov eax, dword [0x1400bfbbc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x90], xmm0
movss dword [rbp + 0x94], xmm2
lea r8, [rbp + 0x20]
lea rdx, [rbp + 0x90]
jmp 0x14004cf63
movd xmm6, dword [0x1400bf600]
cvtdq2ps xmm6, xmm6
lea rcx, [rbp + 0x450]
call fcn.140008360
mov r9d, eax
movsd xmm1, qword [0x1400bfae8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [0x1400bfae0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x98], xmm0
movss dword [rbp + 0x9c], xmm1
mov eax, dword [0x1400bfbc0]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400bfbbc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xa0], xmm0
movss dword [rbp + 0xa4], xmm1
lea r8, [rbp + 0x98]
lea rdx, [rbp + 0xa0]
jmp 0x14004cf63
movd xmm6, dword [0x1400bf600]
cvtdq2ps xmm6, xmm6
lea rcx, [rbp + 0x450]
call fcn.140008360
mov r9d, eax
movsd xmm1, qword [0x1400bfae8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [0x1400bfae0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0xa8], xmm0
movss dword [rbp + 0xac], xmm1
mov eax, dword [0x1400bfbbc]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xb0], xmm0
mov dword [rbp + 0xb4], 0
lea r8, [rbp + 0xa8]
lea rdx, [rbp + 0xb0]
movss dword [rsp + 0x20], xmm6
mov rcx, r12
call fcn.140020030
cmp byte [0x1400bf5f0], 0
je 0x14004d75c
cmp byte [0x1400bf5f1], 0
je 0x14004d75c
mov ecx, dword [0x1400bf5f4]
test ecx, ecx
je 0x14004d313
sub ecx, 1
je 0x14004d184
sub ecx, 1
je 0x14004d07d
cmp ecx, 1
jne 0x14004d75c
movaps xmm6, xmm8
cvttss2si esi, xmm9
cvttss2si r14d, xmm8
mulss xmm6, xmm13
cmp byte [0x1400bf5f8], 0
je 0x14004d02b
movss xmm0, dword [0x1400bf5fc]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x14005c8a8]
cvttsd2si eax, xmm0
cvttsd2si edx, qword [0x1400bfae8]
cvtps2pd xmm0, xmm6
movsd xmm1, qword [0x1400bfae0]
subsd xmm1, xmm0
cvttsd2si ecx, xmm1
movaps xmm0, xmmword [0x14005b1f0]
movaps xmmword [rbp + 0x1880], xmm0
mov dword [rsp + 0x28], eax
lea rax, [rbp + 0x1880]
mov qword [rsp + 0x20], rax
mov r9d, esi
mov r8d, r14d
call fcn.14004bb30
movups xmm0, xmmword [rbp + 0x450]
movdqa xmmword [rbp + 0x1880], xmm0
cvttss2si eax, dword [0x1400bf5fc]
cvttsd2si edx, qword [0x1400bfae8]
cvtps2pd xmm0, xmm6
movsd xmm1, qword [0x1400bfae0]
subsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [rsp + 0x28], eax
lea rax, [rbp + 0x1880]
mov qword [rsp + 0x20], rax
mov r9d, esi
mov r8d, r14d
call fcn.14004bb30
jmp 0x14004d75c
cmp byte [0x1400bf5f8], 0
je 0x14004d112
movss xmm0, dword [0x1400bf5fc]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x14005c8a0]
cvttsd2si esi, xmm0
movaps xmm1, xmmword [0x14005b1f0]
movups xmmword [rbp + 0x1880], xmm1
lea rcx, [rbp + 0x1880]
call fcn.140008360
mov dword [rsp + 0x40], eax
cvttss2si r14d, xmm9
cvttss2si r15d, xmm8
mulss xmm8, xmm13
cvttsd2si edx, qword [0x1400bfae8]
cvtps2pd xmm0, xmm8
movsd xmm1, qword [0x1400bfa10]
subsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov byte [rsp + 0x38], 0
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x28], esi
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
mov r9d, r14d
mov r8d, r15d
call fcn.14004a050
jmp 0x14004d121
cvttss2si r14d, xmm9
cvttss2si r15d, xmm8
mulss xmm8, xmm13
cvttss2si esi, dword [0x1400bf5fc]
lea rcx, [rbp + 0x450]
call fcn.140008360
mov dword [rsp + 0x40], eax
cvttsd2si edx, qword [0x1400bfae8]
cvtps2pd xmm0, xmm8
movsd xmm1, qword [0x1400bfa10]
subsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov byte [rsp + 0x38], 0
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x28], esi
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
mov r9d, r14d
mov r8d, r15d
call fcn.14004a050
mov r15, qword [rbp - 0x20]
jmp 0x14004d75c
cmp byte [0x1400bf5f8], 0
je 0x14004d261
movss xmm0, dword [0x1400bf5fc]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x14005c8a0]
cvtpd2ps xmm6, xmm0
movaps xmm1, xmmword [0x14005b1f0]
movups xmmword [rbp + 0x1880], xmm1
lea rcx, [rbp + 0x1880]
call fcn.140008360
cvtps2pd xmm9, xmm9
movaps xmm0, xmm9
movsd xmm3, qword [0x1400bfae8]
addsd xmm0, xmm3
cvtpd2ps xmm1, xmm0
movaps xmm7, xmm8
mulss xmm7, xmm13
cvtps2pd xmm0, xmm7
movsd xmm2, qword [0x1400bfae0]
subsd xmm2, xmm0
cvtps2pd xmm8, xmm8
movaps xmm0, xmm8
addsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0xb8], xmm0
movss dword [rbp + 0xbc], xmm1
cvtpd2ps xmm1, xmm3
cvtpd2ps xmm0, xmm2
movss dword [rbp + 0xc0], xmm0
movss dword [rbp + 0xc4], xmm1
movss dword [rsp + 0x30], xmm6
mov dword [rsp + 0x28], 0xf0
movss xmm0, dword [0x140057264]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0xb8]
lea rdx, [rbp + 0xc0]
mov rcx, r12
call fcn.1400210c0
jmp 0x14004d272
cvtps2pd xmm9, xmm9
movaps xmm7, xmm8
mulss xmm7, xmm13
cvtps2pd xmm8, xmm8
movss xmm6, dword [0x1400bf5fc]
lea rcx, [rbp + 0x450]
call fcn.140008360
movsd xmm3, qword [0x1400bfae8]
addsd xmm9, xmm3
cvtpd2ps xmm1, xmm9
cvtps2pd xmm0, xmm7
movsd xmm2, qword [0x1400bfae0]
subsd xmm2, xmm0
addsd xmm8, xmm2
cvtpd2ps xmm0, xmm8
movss dword [rbp + 0xc8], xmm0
movss dword [rbp + 0xcc], xmm1
cvtpd2ps xmm1, xmm3
cvtpd2ps xmm0, xmm2
movss dword [rbp + 0xd0], xmm0
movss dword [rbp + 0xd4], xmm1
movss dword [rsp + 0x30], xmm6
mov dword [rsp + 0x28], 0xf0
movss xmm0, dword [0x140057264]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0xc8]
lea rdx, [rbp + 0xd0]
mov rcx, r12
call fcn.1400210c0
jmp 0x14004d75c
cmp byte [0x1400bf5f8], 0
je 0x14004d565
movss xmm6, dword [0x1400bf5fc]
addss xmm6, xmm15
movaps xmm0, xmmword [0x14005b1f0]
movups xmmword [rbp + 0x1880], xmm0
lea rcx, [rbp + 0x1880]
call fcn.140008360
movsd xmm2, qword [0x1400bfae8]
cvtpd2ps xmm2, xmm2
mulss xmm8, xmm13
cvtps2pd xmm7, xmm8
movaps xmm0, xmm7
addsd xmm0, qword [0x1400bfa10]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0xd8], xmm0
movss dword [rbp + 0xdc], xmm2
movsd xmm1, qword [0x1400bfae0]
subsd xmm1, xmm7
cvtpd2ps xmm0, xmm1
movss dword [rbp + 0xe0], xmm0
movss dword [rbp + 0xe4], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0xd8]
lea rdx, [rbp + 0xe0]
mov rcx, r12
call fcn.140020030
movss xmm6, dword [0x1400bf5fc]
addss xmm6, xmm15
movaps xmm0, xmmword [0x14005b1f0]
movups xmmword [rbp + 0x1880], xmm0
lea rcx, [rbp + 0x1880]
call fcn.140008360
movsd xmm2, qword [0x1400bfa18]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [0x1400bfae0]
subsd xmm0, xmm7
cvtpd2ps xmm1, xmm0
movss dword [rbp + 0xe8], xmm1
movss dword [rbp + 0xec], xmm2
movsd xmm0, qword [0x1400bfae8]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0xf0], xmm1
movss dword [rbp + 0xf4], xmm0
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0xe8]
lea rdx, [rbp + 0xf0]
mov rcx, r12
call fcn.140020030
movss xmm6, dword [0x1400bf5fc]
addss xmm6, xmm15
movaps xmm0, xmmword [0x14005b1f0]
movups xmmword [rbp + 0x1880], xmm0
lea rcx, [rbp + 0x1880]
call fcn.140008360
movsd xmm2, qword [0x1400bfa18]
cvtpd2ps xmm2, xmm2
movaps xmm0, xmm7
addsd xmm0, qword [0x1400bfa10]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0xf8], xmm0
movss dword [rbp + 0xfc], xmm2
movsd xmm1, qword [0x1400bfae0]
subsd xmm1, xmm7
cvtpd2ps xmm0, xmm1
movss dword [rbp + 0x100], xmm0
movss dword [rbp + 0x104], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0xf8]
lea rdx, [rbp + 0x100]
mov rcx, r12
call fcn.140020030
movss xmm6, dword [0x1400bf5fc]
addss xmm6, xmm15
movaps xmm0, xmmword [0x14005b1f0]
movups xmmword [rbp + 0x1880], xmm0
lea rcx, [rbp + 0x1880]
call fcn.140008360
movsd xmm0, qword [0x1400bfa18]
cvtpd2ps xmm0, xmm0
addsd xmm7, qword [0x1400bfa10]
cvtpd2ps xmm1, xmm7
movss dword [rbp + 0x108], xmm1
movss dword [rbp + 0x10c], xmm0
movsd xmm0, qword [0x1400bfae8]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x110], xmm1
movss dword [rbp + 0x114], xmm0
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x108]
lea rdx, [rbp + 0x110]
mov rcx, r12
call fcn.140020030
jmp 0x14004d56a
mulss xmm8, xmm13
movss xmm6, dword [0x1400bf5fc]
lea rcx, [rbp + 0x450]
call fcn.140008360
movsd xmm2, qword [0x1400bfae8]
cvtpd2ps xmm2, xmm2
cvtps2pd xmm7, xmm8
movaps xmm0, xmm7
addsd xmm0, qword [0x1400bfa10]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x118], xmm0
movss dword [rbp + 0x11c], xmm2
movsd xmm1, qword [0x1400bfae0]
subsd xmm1, xmm7
cvtpd2ps xmm0, xmm1
movss dword [rbp + 0x120], xmm0
movss dword [rbp + 0x124], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x118]
lea rdx, [rbp + 0x120]
mov rcx, r12
call fcn.140020030
movss xmm6, dword [0x1400bf5fc]
lea rcx, [rbp + 0x450]
call fcn.140008360
movsd xmm2, qword [0x1400bfa18]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [0x1400bfae0]
subsd xmm0, xmm7
cvtpd2ps xmm1, xmm0
movss dword [rbp + 0x128], xmm1
movss dword [rbp + 0x12c], xmm2
movsd xmm0, qword [0x1400bfae8]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x130], xmm1
movss dword [rbp + 0x134], xmm0
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x128]
lea rdx, [rbp + 0x130]
mov rcx, r12
call fcn.140020030
movss xmm6, dword [0x1400bf5fc]
lea rcx, [rbp + 0x450]
call fcn.140008360
movsd xmm2, qword [0x1400bfa18]
cvtpd2ps xmm2, xmm2
movaps xmm0, xmm7
addsd xmm0, qword [0x1400bfa10]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x138], xmm0
movss dword [rbp + 0x13c], xmm2
movsd xmm1, qword [0x1400bfae0]
subsd xmm1, xmm7
cvtpd2ps xmm0, xmm1
movss dword [rbp + 0x140], xmm0
movss dword [rbp + 0x144], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x138]
lea rdx, [rbp + 0x140]
mov rcx, r12
call fcn.140020030
movss xmm6, dword [0x1400bf5fc]
lea rcx, [rbp + 0x450]
call fcn.140008360
movsd xmm0, qword [0x1400bfa18]
cvtpd2ps xmm0, xmm0
addsd xmm7, qword [0x1400bfa10]
cvtpd2ps xmm1, xmm7
movss dword [rbp + 0x148], xmm1
movss dword [rbp + 0x14c], xmm0
movsd xmm0, qword [0x1400bfae8]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x150], xmm1
movss dword [rbp + 0x154], xmm0
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x148]
lea rdx, [rbp + 0x150]
mov rcx, r12
call fcn.140020030
cmp byte [0x1400bfbab], 0
je 0x14004d9f2
cmp byte [0x1400bf5f1], 0
je 0x14004d9f2
mov ecx, dword [0x1400bfb94]
test ecx, ecx
je 0x14004d8c1
cmp ecx, 1
jne 0x14004d9f2
mov r8, qword [r15 + 0x18]
lea rdx, [rbp + 0x470]
mov rcx, qword [0x1400bf9d8]
call fcn.14004ff50
nop
lea rdx, [rbp + 0x470]
cmp qword [rbp + 0x488], 0x10
cmovae rdx, qword [rbp + 0x470]
movss xmm6, dword [0x1400572a0]
movss dword [rsp + 0x20], xmm6
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x4d8]
call fcn.1400072f0
lea rax, [rbp + 0x470]
cmp qword [rbp + 0x488], 0x10
cmovae rax, qword [rbp + 0x470]
movsd xmm0, qword [0x1400bfa18]
addsd xmm0, qword [0x14005c8d0]
cvttsd2si r8d, xmm0
movss xmm1, dword [rbp + 0x4d8]
mulss xmm1, xmm13
cvtps2pd xmm0, xmm1
movsd xmm2, qword [0x1400bfa10]
subsd xmm2, xmm0
cvttsd2si edx, xmm2
movaps xmm0, xmmword [0x140057300]
movaps xmmword [rbp + 0x1880], xmm0
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x1880]
movss xmm0, dword [0x1400bf5e4]
movd ecx, xmm0
call fcn.14004a770
nop
mov rdx, qword [rbp + 0x488]
cmp rdx, 0x10
jb 0x14004d89f
inc rdx
mov rcx, qword [rbp + 0x470]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004d89a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004e618
call fcn.140051c18
mov qword [rbp + 0x480], 0
mov qword [rbp + 0x488], 0xf
mov byte [rbp + 0x470], 0
jmp 0x14004d9fa
mov r8, qword [r15 + 0x18]
lea rdx, [rbp + 0x490]
mov rcx, qword [0x1400bf9d8]
call fcn.14004ff50
nop
lea rdx, [rbp + 0x490]
cmp qword [rbp + 0x4a8], 0x10
cmovae rdx, qword [rbp + 0x490]
movss xmm6, dword [0x1400572a0]
movss dword [rsp + 0x20], xmm6
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x4d0]
call fcn.1400072f0
lea rax, [rbp + 0x490]
cmp qword [rbp + 0x4a8], 0x10
cmovae rax, qword [rbp + 0x490]
movsd xmm0, qword [0x1400bfae8]
subsd xmm0, qword [0x14005c8d0]
cvttsd2si r8d, xmm0
movss xmm1, dword [rbp + 0x4d0]
mulss xmm1, xmm13
cvtps2pd xmm0, xmm1
movsd xmm2, qword [0x1400bfae0]
subsd xmm2, xmm0
cvttsd2si edx, xmm2
movaps xmm0, xmmword [0x140057300]
movaps xmmword [rbp + 0x1880], xmm0
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x1880]
movss xmm0, dword [0x1400bf5e4]
movd ecx, xmm0
call fcn.14004a770
nop
mov rdx, qword [rbp + 0x4a8]
cmp rdx, 0x10
jb 0x14004d9d3
inc rdx
mov rcx, qword [rbp + 0x490]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004d9ce
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004e61f
call fcn.140051c18
mov qword [rbp + 0x4a0], 0
mov qword [rbp + 0x4a8], 0xf
mov byte [rbp + 0x490], 0
jmp 0x14004d9fa
movss xmm6, dword [0x1400572a0]
cmp byte [0x1400bf5f2], 0
je 0x14004ddcd
cmp byte [0x1400bf5f1], 0
je 0x14004ddcd
xorps xmm0, xmm0
movups xmmword [rbp + 0x18e0], xmm0
mov qword [rbp + 0x18f0], 2
mov qword [rbp + 0x18f8], 0xf
mov eax, 0x5d6d
mov word [rbp + 0x18e0], ax
mov byte [rbp + 0x18e2], 0
cvttss2si r8d, xmm12
lea r10, [rbp + 0x1895]
test r8d, r8d
jns 0x14004daa0
neg r8d
nop dword [rax + rax]
dec r10
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 [r10], r8b
mov r8d, edx
test edx, edx
jne 0x14004da60
dec r10
mov byte [r10], 0x2d
jmp 0x14004daca
dec r10
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 [r10], r8b
mov r8d, edx
test edx, edx
jne 0x14004daa0
lea r9, [rsp + 0x60]
lea r8, [rbp + 0x1895]
mov rdx, r10
lea rcx, [rbp - 0x60]
call fcn.140048720
nop
mov rcx, qword [rbp - 0x50]
mov rdx, qword [rbp - 0x48]
mov rax, rdx
sub rax, rcx
cmp rax, 1
jb 0x14004db81
lea r8, [rcx + 1]
mov qword [rbp - 0x50], r8
lea rsi, [rbp - 0x60]
cmp rdx, 0x10
cmovae rsi, qword [rbp - 0x60]
lea rax, [0x14005bbe9]
cmp rax, rsi
jbe 0x14004db3e
lea rax, [rsi + rcx]
lea rcx, [0x14005bbe8]
cmp rcx, rax
ja 0x14004db3e
cmp rsi, rcx
ja 0x14004db36
xor r14d, r14d
jmp 0x14004db41
mov r14, rsi
sub r14, rcx
jmp 0x14004db41
mov r14, r13
lea rcx, [rsi + 1]
mov rdx, rsi
call sub.VCRUNTIME140.dll_memmove
mov r8, r14
lea rdx, [0x14005bbe8]
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov r8, r13
sub r8, r14
lea rdx, [0x14005bbe8]
inc rdx
add rdx, r14
lea rcx, [rsi + r14]
call sub.VCRUNTIME140.dll_memcpy
lea rax, [rbp - 0x60]
jmp 0x14004dba5
mov qword [rsp + 0x28], r13
lea rax, [0x14005bbe8]
mov qword [rsp + 0x20], rax
xor r9d, r9d
movzx r8d, bl
mov rdx, r13
lea rcx, [rbp - 0x60]
call fcn.140048fe0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x18a0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x18b0], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r9, [rbp + 0x18e0]
lea r8, [rbp + 0x18a0]
movzx edx, dil
lea rcx, [rbp + 0x4b0]
call fcn.140049750
nop
mov rdx, qword [rbp + 0x18b8]
cmp rdx, 0x10
jb 0x14004dc2e
inc rdx
mov rcx, qword [rbp + 0x18a0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004dc28
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004e626
call fcn.140051c18
nop
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x14004dc69
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004dc64
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004e62d
call fcn.140051c18
mov qword [rbp - 0x50], 0
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], 0
mov rdx, qword [rbp + 0x18f8]
cmp rdx, 0x10
jb 0x14004dcbe
inc rdx
mov rcx, qword [rbp + 0x18e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004dcb9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004e634
call fcn.140051c18
lea rdx, [rbp + 0x4b0]
cmp qword [rbp + 0x4c8], 0x10
cmovae rdx, qword [rbp + 0x4b0]
movss dword [rsp + 0x20], xmm6
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x4e0]
call fcn.1400072f0
lea rax, [rbp + 0x4b0]
cmp qword [rbp + 0x4c8], 0x10
cmovae rax, qword [rbp + 0x4b0]
movsd xmm0, qword [0x1400bfa18]
addsd xmm0, qword [0x14005c8b8]
cvttsd2si r8d, xmm0
movss xmm1, dword [rbp + 0x4e0]
mulss xmm1, xmm13
cvtps2pd xmm0, xmm1
movsd xmm2, qword [0x1400bfa10]
subsd xmm2, xmm0
cvttsd2si edx, xmm2
movaps xmm0, xmmword [0x140057300]
movaps xmmword [rbp + 0x1880], xmm0
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x1880]
movss xmm0, dword [0x1400bf5e4]
movd ecx, xmm0
call fcn.14004a770
nop
mov rdx, qword [rbp + 0x4c8]
cmp rdx, 0x10
jb 0x14004ddb0
inc rdx
mov rcx, qword [rbp + 0x4b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004ddab
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004e63b
call fcn.140051c18
mov qword [rbp + 0x4c0], 0
mov qword [rbp + 0x4c8], 0xf
mov byte [rbp + 0x4b0], 0
cmp byte [0x1400bfba9], 0
je 0x14004e5fc
cmp byte [0x1400bf5f1], 0
je 0x14004e5fc
mov rsi, qword [r15 + 8]
mov r13, qword [0x1400bf9d8]
movaps xmm0, xmmword [0x140057300]
movups xmmword [rbp + 0x1880], xmm0
lea rcx, [rbp + 0x1880]
call fcn.140008360
mov dword [rsp + 0x40], eax
mov r8d, 0x6d
mov rdx, rsi
lea rcx, [rbp + 0x4f0]
call fcn.140049e40
mov r8d, 2
mov rdx, rsi
lea rcx, [rbp + 0x508]
call fcn.140049e40
mov r8d, 0x42
mov rdx, rsi
lea rcx, [rbp + 0x520]
call fcn.140049e40
mov r8d, 9
mov rdx, rsi
lea rcx, [rbp + 0x538]
call fcn.140049e40
mov r8d, 0x26
mov rdx, rsi
lea rcx, [rbp + 0x550]
call fcn.140049e40
mov r8d, 0xa
mov rdx, rsi
lea rcx, [rbp + 0x568]
call fcn.140049e40
mov r8d, 0x27
mov rdx, rsi
lea rcx, [rbp + 0x580]
call fcn.140049e40
mov r8d, 0xb
mov rdx, rsi
lea rcx, [rbp + 0x598]
call fcn.140049e40
mov r8d, 0x28
mov rdx, rsi
lea rcx, [rbp + 0x5b0]
call fcn.140049e40
mov r8d, 0x4e
mov rdx, rsi
lea rcx, [rbp + 0x5c8]
call fcn.140049e40
mov r8d, 0x47
mov rdx, rsi
lea rcx, [rbp + 0x5e0]
call fcn.140049e40
mov r8d, 0x4f
mov rdx, rsi
lea rcx, [rbp + 0x5f8]
call fcn.140049e40
mov r8d, 0x48
mov rdx, rsi
lea rcx, [rbp + 0x610]
call fcn.140049e40
mov r8d, 0x4b
mov rdx, rsi
lea rcx, [rbp + 0x628]
call fcn.140049e40
mov r8d, 0x52
mov rdx, rsi
lea rcx, [rbp + 0x640]
call fcn.140049e40
nop
lea rax, [fcn.140003400]
mov qword [rsp + 0x20], rax
lea r9, [0x140001310]
mov edx, 0x10
mov r8d, edx
lea rcx, [rbp + 0x1920]
call fcn.140051ad8
nop
lea r14, [rbp + 0x1920]
lea rsi, [rbp + 0x4f0]
mov r15d, 0x10
nop dword [rax + rax]
movups xmm0, xmmword [rsi]
movaps xmmword [rbp + 0x1880], xmm0
movsd xmm1, qword [rsi + 0x10]
movsd qword [rbp + 0x1890], xmm1
lea r8, [rbp + 0x1880]
lea rdx, [rsp + 0x68]
mov rcx, r13
call fcn.140051580
movups xmm0, xmmword [rax]
movups xmmword [r14], xmm0
lea rsi, [rsi + 0x18]
lea r14, [r14 + 0x10]
sub r15, 1
jne 0x14004df90
call fcn.14000b1b0
movsd xmm1, qword [rbp + 0x1948]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x1940]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x158], xmm0
movss dword [rbp + 0x15c], xmm1
movsd xmm2, qword [rbp + 0x1938]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x1930]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x160], xmm0
movss dword [rbp + 0x164], xmm2
movss xmm6, dword [0x14005c89c]
movss dword [rsp + 0x20], xmm6
mov esi, dword [rsp + 0x40]
mov r9d, esi
lea r8, [rbp + 0x158]
lea rdx, [rbp + 0x160]
mov rcx, rax
call fcn.140020030
call fcn.14000b1b0
movsd xmm1, qword [rbp + 0x1948]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x1940]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x168], xmm0
movss dword [rbp + 0x16c], xmm1
movsd xmm2, qword [rbp + 0x1958]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x1950]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x170], xmm0
movss dword [rbp + 0x174], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, esi
lea r8, [rbp + 0x168]
lea rdx, [rbp + 0x170]
mov rcx, rax
call fcn.140020030
call fcn.14000b1b0
movsd xmm1, qword [rbp + 0x1948]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x1940]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x178], xmm0
movss dword [rbp + 0x17c], xmm1
movsd xmm2, qword [rbp + 0x1968]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x1960]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x180], xmm0
movss dword [rbp + 0x184], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, esi
lea r8, [rbp + 0x178]
lea rdx, [rbp + 0x180]
mov rcx, rax
call fcn.140020030
call fcn.14000b1b0
movsd xmm1, qword [rbp + 0x1958]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x1950]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x188], xmm0
movss dword [rbp + 0x18c], xmm1
movsd xmm2, qword [rbp + 0x1978]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x1970]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x190], xmm0
movss dword [rbp + 0x194], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, esi
lea r8, [rbp + 0x188]
lea rdx, [rbp + 0x190]
mov rcx, rax
call fcn.140020030
call fcn.14000b1b0
movsd xmm1, qword [rbp + 0x1968]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x1960]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x198], xmm0
movss dword [rbp + 0x19c], xmm1
movsd xmm2, qword [rbp + 0x1988]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x1980]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x1a0], xmm0
movss dword [rbp + 0x1a4], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, esi
lea r8, [rbp + 0x198]
lea rdx, [rbp + 0x1a0]
mov rcx, rax
call fcn.140020030
call fcn.14000b1b0
movsd xmm1, qword [rbp + 0x1998]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x1990]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x1a8], xmm0
movss dword [rbp + 0x1ac], xmm1
movsd xmm2, qword [rbp + 0x1978]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x1970]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x1b0], xmm0
movss dword [rbp + 0x1b4], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, esi
lea r8, [rbp + 0x1a8]
lea rdx, [rbp + 0x1b0]
mov rcx, rax
call fcn.140020030
call fcn.14000b1b0
movsd xmm1, qword [rbp + 0x19a8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x19a0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x1b8], xmm0
movss dword [rbp + 0x1bc], xmm1
movsd xmm2, qword [rbp + 0x1988]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x1980]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x1c0], xmm0
movss dword [rbp + 0x1c4], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, esi
lea r8, [rbp + 0x1b8]
lea rdx, [rbp + 0x1c0]
mov rcx, rax
call fcn.140020030
call fcn.14000b1b0
movsd xmm1, qword [rbp + 0x1938]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x1930]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x1c8], xmm0
movss dword [rbp + 0x1cc], xmm1
movsd xmm2, qword [rbp + 0x19c8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x19c0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x1d0], xmm0
movss dword [rbp + 0x1d4], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, esi
lea r8, [rbp + 0x1c8]
lea rdx, [rbp + 0x1d0]
mov rcx, rax
call fcn.140020030
call fcn.14000b1b0
movsd xmm1, qword [rbp + 0x1938]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x1930]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x1d8], xmm0
movss dword [rbp + 0x1dc], xmm1
movsd xmm2, qword [rbp + 0x19b8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x19b0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x1e0], xmm0
movss dword [rbp + 0x1e4], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, esi
lea r8, [rbp + 0x1d8]
lea rdx, [rbp + 0x1e0]
mov rcx, rax
call fcn.140020030
call fcn.14000b1b0
movsd xmm1, qword [rbp + 0x19c8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x19c0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x1e8], xmm0
movss dword [rbp + 0x1ec], xmm1
movsd xmm2, qword [rbp + 0x19e8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x19e0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x1f0], xmm0
movss dword [rbp + 0x1f4], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, esi
lea r8, [rbp + 0x1e8]
lea rdx, [rbp + 0x1f0]
mov rcx, rax
call fcn.140020030
call fcn.14000b1b0
movsd xmm1, qword [rbp + 0x19b8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x19b0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x1f8], xmm0
movss dword [rbp + 0x1fc], xmm1
movsd xmm2, qword [rbp + 0x19d8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x19d0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x200], xmm0
movss dword [rbp + 0x204], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, esi
lea r8, [rbp + 0x1f8]
lea rdx, [rbp + 0x200]
mov rcx, rax
call fcn.140020030
call fcn.14000b1b0
movsd xmm1, qword [rbp + 0x19e8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x19e0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x208], xmm0
movss dword [rbp + 0x20c], xmm1
movsd xmm2, qword [rbp + 0x19f8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x19f0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x210], xmm0
movss dword [rbp + 0x214], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, esi
lea r8, [rbp + 0x208]
lea rdx, [rbp + 0x210]
mov rcx, rax
call fcn.140020030
call fcn.14000b1b0
movsd xmm1, qword [rbp + 0x19d8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x19d0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x218], xmm0
movss dword [rbp + 0x21c], xmm1
movsd xmm2, qword [rbp + 0x1a08]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x1a00]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x460], xmm0
movss dword [rbp + 0x464], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, esi
lea r8, [rbp + 0x218]
lea rdx, [rbp + 0x460]
mov rcx, rax
call fcn.140020030
nop
lea r9, [fcn.140003400]
mov edx, 0x10
mov r8d, edx
lea rcx, [rbp + 0x1920]
call fcn.140051b48
nop
lea r9, [fcn.140003400]
lea edx, [r15 + 0x18]
lea r8d, [r15 + 0xf]
lea rcx, [rbp + 0x4f0]
call fcn.140051b48
mov r15, qword [rbp - 0x20]
add r15, 0x48
mov qword [rbp - 0x20], r15
cmp r15, qword [rbp + 0x240]
je 0x14004e642
mov r13d, 1
jmp 0x14004c1b0
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]
int3
mov r14, qword [rbp - 0x18]
cmp byte [0x1400bfb91], 0
je 0x14004e830
mov rax, qword [0x1400bf9f0]
mov rcx, qword [rax + 0x20]
add rcx, 0x1710
lea r15, [rbp + 0x1cd8]
mov rdi, qword [r15]
xor r12d, r12d
mov qword [r15], r12
mov qword [rbp + 0x460], r12
lea rsi, [rbp + 0x1cd8]
mov rbx, qword [rsi]
mov qword [rsi], r12
mov dword [rbp + 0x18c1], r12d
mov word [rbp + 0x18c5], r12w
mov byte [rbp + 0x18c7], r12b
mov dword [rbp + 0x18a0], 0x12f9a41
mov qword [rbp + 0x18a8], rcx
lea rax, [rbp + 0x460]
mov qword [rbp + 0x18b0], rax
mov qword [rbp + 0x18b8], 8
mov eax, dword [0x1400bf880]
mov dword [rbp + 0x18a4], eax
mov byte [rbp + 0x18c0], r12b
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
lea r9d, [r12 + 0x28]
lea r8, [rbp + 0x18a0]
mov edx, 0x221504
mov rcx, qword [0x1400bf878]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [rsi], rbx
mov rsi, qword [rbp + 0x460]
mov qword [r15], rdi
mov ecx, dword [0x1400bf848]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
setne dl
movzx ecx, byte [0x1400bf84e]
test ax, ax
je 0x14004e751
test cl, cl
je 0x14004e751
mov rax, rsi
mov qword [0x1400bf908], rax
xor cl, cl
mov byte [0x1400bf84e], cl
jmp 0x14004e758
mov rax, qword [0x1400bf908]
test dl, dl
jne 0x14004e79a
test cl, cl
jne 0x14004e79a
mov rax, r12
mov qword [0x1400bf908], rax
mov byte [0x1400bf84e], 1
mov ebx, 1
cmp rax, rsi
je 0x14004e838
test rax, rax
je 0x14004e838
mov edx, 0x1f4
mov ecx, edx
call qword [sym.imp.KERNEL32.dll_Beep]
jmp 0x14004e838
test rax, rax
je 0x14004e771
mov ebx, 1
cmp rax, rsi
je 0x14004e838
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x18a4], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x18b8], xmm1
mov dword [rbp + 0x18a0], r12d
mov dword [rbp + 0x18b4], 2
lea r8d, [rbx + 0x27]
lea rdx, [rbp + 0x18a0]
mov ecx, ebx
call qword [sym.imp.USER32.dll_SendInput]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x18a4], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x18b8], xmm1
mov dword [rbp + 0x18a0], r12d
mov dword [rbp + 0x18b4], 4
lea r8d, [rbx + 0x27]
lea rdx, [rbp + 0x18a0]
mov ecx, ebx
call qword [sym.imp.USER32.dll_SendInput]
mov rax, r12
mov qword [0x1400bf908], rax
jmp 0x14004e776
mov ebx, 1
xor r12d, r12d
test r14, r14
je 0x14004efda
cmp byte [0x1400bf5e0], 0
je 0x14004efda
lea rcx, [r14 + 0x318]
call fcn.1400495b0
mov rdi, rax
xorps xmm8, xmm8
movups xmmword [rbp - 0x80], xmm8
xorps xmm9, xmm9
movsd qword [rbp - 0x70], xmm9
xorps xmm10, xmm10
xorps xmm11, xmm11
mov eax, dword [0x1400bfba4]
test eax, eax
je 0x14004ea74
sub eax, 1
je 0x14004ea24
sub eax, 1
je 0x14004e9d8
cmp eax, 1
jne 0x14004ea6d
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov dword [rbp + 0x1874], 0xffffffff
mov dword [rbp + 0x4f4], eax
nop dword [rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul ecx, ecx, 0x6c078965
add ecx, ebx
mov dword [rbp + rbx*4 + 0x4f4], ecx
mov eax, ecx
inc rbx
cmp rbx, 0x270
jb 0x14004e8c0
mov dword [rbp + 0x4f0], 0x270
lea rax, [rbp + 0x4f0]
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], 0x20
mov dword [rsp + 0x78], 0xffffffff
mov edx, 4
lea rcx, [rsp + 0x68]
call fcn.140049bb0
test eax, eax
je 0x14004ea74
sub eax, 1
je 0x14004ea24
sub eax, 1
je 0x14004e9d8
sub eax, 1
je 0x14004e98c
cmp eax, 1
jne 0x14004ea6d
lea r8d, [rax + 8]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.140049e40
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x420], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x430], xmm1
lea r8, [rbp + 0x420]
lea rdx, [rsp + 0x68]
mov rcx, qword [0x1400bf9d8]
call fcn.140051580
mov r8d, 9
jmp 0x14004eabb
mov r8d, 0x26
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.140049e40
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x420], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x430], xmm1
lea r8, [rbp + 0x420]
lea rdx, [rsp + 0x68]
mov rcx, qword [0x1400bf9d8]
call fcn.140051580
mov r8d, 0x26
jmp 0x14004eabb
mov r8d, 0x42
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.140049e40
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x420], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x430], xmm1
lea r8, [rbp + 0x420]
lea rdx, [rsp + 0x68]
mov rcx, qword [0x1400bf9d8]
call fcn.140051580
mov r8d, 0x42
jmp 0x14004eabb
mov r8d, 0x43
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.140049e40
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x420], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x430], xmm1
lea r8, [rbp + 0x420]
lea rdx, [rsp + 0x68]
mov rcx, qword [0x1400bf9d8]
call fcn.140051580
mov r8d, 0x43
jmp 0x14004eabb
movsd xmm7, qword [rbp - 0x70]
jmp 0x14004eae0
mov r8d, 0x6d
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.140049e40
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp + 0x420], xmm0
movsd qword [rbp + 0x430], xmm1
lea r8, [rbp + 0x420]
lea rdx, [rsp + 0x68]
mov rcx, qword [0x1400bf9d8]
call fcn.140051580
mov r8d, 0x6d
movsd xmm10, qword [rax]
movsd xmm11, qword [rax + 8]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.140049e40
movups xmm8, xmmword [rax]
movsd xmm7, qword [rax + 0x10]
movups xmmword [rbp - 0x80], xmm8
cmp byte [0x1400bfba8], 0
je 0x14004ed06
lea rcx, [r14 + 0x318]
call fcn.1400495b0
mov r8d, 0x6d
mov rdx, rax
lea rcx, [rsp + 0x68]
call fcn.140049e40
mov rbx, qword [0x1400bf9f0]
movsd xmm14, qword [rsp + 0x70]
movaps xmm0, xmm14
subsd xmm0, qword [rbx + 0x68]
cvtpd2ps xmm0, xmm0
movaps xmm1, xmm15
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm6, xmm0
movsd xmm15, qword [rsp + 0x68]
movaps xmm0, xmm15
subsd xmm0, qword [rbx + 0x60]
cvtpd2ps xmm0, xmm0
movss xmm1, dword [0x140057240]
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
movsd xmm12, qword [rsp + 0x78]
movaps xmm1, xmm12
subsd xmm1, qword [rbx + 0x70]
cvtpd2ps xmm0, xmm1
movss xmm1, dword [0x140057240]
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm6
ja 0x14004eb8e
xorps xmm0, xmm0
sqrtss xmm0, xmm6
jmp 0x14004eb96
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
cvtss2sd xmm0, xmm0
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm0
lea rsi, [r14 + 0x198]
mov rcx, rsi
call fcn.1400495b0
lea r14, [rbp + 0x1cd8]
mov rbx, qword [r14]
mov qword [r14], r12
xorps xmm0, xmm0
movups xmmword [rbp + 0x420], xmm0
movsd qword [rbp + 0x430], xmm9
lea rcx, [rbp + 0x1cd8]
mov qword [rcx], r12
mov dword [rbp + 0x18c1], r12d
mov word [rbp + 0x18c5], r12w
mov byte [rbp + 0x18c7], 0
mov dword [rbp + 0x18a0], 0x12f9a41
add rax, 0x168
mov qword [rbp + 0x18a8], rax
lea rax, [rbp + 0x420]
mov qword [rbp + 0x18b0], rax
mov qword [rbp + 0x18b8], 0x18
mov eax, dword [0x1400bf880]
mov dword [rbp + 0x18a4], eax
mov byte [rbp + 0x18c0], 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 + 0x18a0]
mov edx, 0x221504
mov rcx, qword [0x1400bf878]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov qword [r14], rbx
divss xmm6, dword [0x14005c920]
cvtps2pd xmm3, xmm6
movss xmm0, dword [0x14005c930]
andps xmm0, xmmword [0x140057310]
mulss xmm6, xmm6
mulss xmm0, xmm13
mulss xmm6, xmm0
cvtps2pd xmm2, xmm6
movsd xmm0, qword [rbp + 0x430]
mulsd xmm0, xmm3
addsd xmm2, xmm0
movsd xmm1, qword [rbp + 0x420]
mulsd xmm1, xmm3
addsd xmm1, xmm15
movsd qword [rbp + 0x250], xmm1
movsd xmm0, qword [rbp + 0x428]
mulsd xmm0, xmm3
addsd xmm0, xmm14
movsd qword [rbp + 0x258], xmm0
addsd xmm12, xmm2
movsd qword [rbp + 0x260], xmm12
lea r8, [rbp + 0x250]
lea rdx, [rsp + 0x68]
mov rcx, qword [0x1400bf9d8]
call fcn.140051580
movss xmm15, dword [0x140057240]
jmp 0x14004ed0d
lea rsi, [r14 + 0x198]
xorps xmm0, xmm0
movups xmmword [rbp + 0x18a0], xmm0
movdqa xmm1, xmmword [0x14005c950]
movdqu xmmword [rbp + 0x18b0], xmm1
mov byte [rbp + 0x18a0], 0
mov rcx, rsi
call fcn.1400495b0
movaps xmmword [rbp + 0x420], xmm8
movsd qword [rbp + 0x430], xmm7
lea r8, [rbp + 0x420]
lea rdx, [rsp + 0x68]
mov rcx, qword [0x1400bf9d8]
call fcn.140051580
ucomisd xmm8, xmm9
jp 0x14004ee0d
jne 0x14004ee0d
movsd xmm2, qword [rbp - 0x78]
ucomisd xmm2, xmm9
jp 0x14004ed81
je 0x14004efda
mov eax, dword [0x1400bfbc0]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mov eax, dword [0x1400bfbbc]
cdq
sub eax, edx
sar eax, 1
movd xmm7, eax
cvtdq2pd xmm7, xmm7
movss xmm1, dword [0x140057240]
subsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
call fcn.1400522f0
movaps xmm6, xmm0
subsd xmm7, xmm8
cvtpd2ps xmm0, xmm7
movaps xmm1, xmm15
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm1, xmm0
addss xmm1, xmm6
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x14004ede9
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x14004edf1
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movss xmm0, dword [0x1400bf5ec]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm1
jb 0x14004efda
lea rcx, [rdi + 0x2e8]
call fcn.1400492b0
movaps xmm6, xmm0
lea rcx, [rdi + 0x2f0]
call fcn.1400492b0
addss xmm0, dword [0x14005ba38]
comiss xmm0, xmm6
jb 0x14004efda
cmp byte [0x1400bfb98], 0
je 0x14004eea0
movaps xmm0, xmmword [0x14005b200]
movdqa xmmword [rbp + 0x1880], xmm0
movaps xmm1, xmm11
subsd xmm1, qword [0x14005c8e0]
cvttsd2si r8d, xmm1
movaps xmm0, xmm10
subsd xmm0, qword [0x14005c8c0]
cvttsd2si edx, xmm0
lea rax, [0x14005c3a0]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rbp + 0x1880]
movss xmm0, dword [0x140057274]
movd ecx, xmm0
call fcn.14004a770
mov ecx, dword [0x1400bfbc4]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x14004efda
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm10
xorps xmm8, xmm8
cvtsd2ss xmm8, xmm11
movss xmm7, dword [0x1400bf604]
movd xmm5, dword [0x1400bfbc0]
cvtdq2pd xmm5, xmm5
mulsd xmm5, qword [0x14005bfd8]
movd xmm4, dword [0x1400bfbbc]
cvtdq2pd xmm4, xmm4
mulsd xmm4, qword [0x14005bfd8]
movaps xmm3, xmm9
movaps xmm2, xmm9
movsd xmm10, qword [0x14005c080]
xorps xmm11, xmm11
ucomiss xmm1, xmm11
jp 0x14004ef13
je 0x14004ef69
cvtps2pd xmm6, xmm1
comisd xmm6, xmm4
jbe 0x14004ef46
movaps xmm3, xmm4
subsd xmm3, xmm6
xorps xmm3, xmm10
cvtps2pd xmm0, xmm7
divsd xmm3, xmm0
movaps xmm1, xmm4
addsd xmm1, xmm3
movaps xmm0, xmm4
addsd xmm0, xmm4
comisd xmm1, xmm0
jbe 0x14004ef46
movaps xmm3, xmm9
comisd xmm4, xmm6
jbe 0x14004ef69
movaps xmm3, xmm6
subsd xmm3, xmm4
cvtps2pd xmm0, xmm7
divsd xmm3, xmm0
addsd xmm4, xmm3
comisd xmm9, xmm4
jbe 0x14004ef69
movaps xmm3, xmm9
ucomiss xmm8, xmm11
jp 0x14004ef71
je 0x14004efcb
cvtps2pd xmm4, xmm8
comisd xmm4, xmm5
jbe 0x14004efa5
movaps xmm2, xmm5
subsd xmm2, xmm4
xorps xmm2, xmm10
cvtps2pd xmm0, xmm7
divsd xmm2, xmm0
movaps xmm1, xmm2
addsd xmm1, xmm5
movaps xmm0, xmm5
addsd xmm0, xmm5
comisd xmm1, xmm0
jbe 0x14004efa5
movaps xmm2, xmm9
comisd xmm5, xmm4
jbe 0x14004efcb
movaps xmm2, xmm4
subsd xmm2, xmm5
cvtps2pd xmm0, xmm7
divsd xmm2, xmm0
movaps xmm0, xmm2
addsd xmm0, xmm5
comisd xmm9, xmm0
jbe 0x14004efcb
movaps xmm2, xmm9
cvttsd2si edx, xmm2
cvttsd2si ecx, xmm3
call qword [0x1400bf838]
nop
call fcn.140013f60
mov rcx, qword [rbp + 0x1c00]
xor rcx, rsp
call fcn.140051d30
lea r11, [rsp + 0x1db0]
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