Function at 0x180061e10
Capabilities:
Contain obfuscated stackstrings
Encode data using base64
Encode data using xor
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xa68]
sub rsp, 0xb40
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x1800d0040]
xor rax, rsp
mov qword [rbp + 0x998], rax
xor r13d, r13d
mov rax, qword [0x18017df00]
mov rax, qword [rax + 0x48a8]
lea r8, str.Foreground
lea edx, [r13 + 1]
mov rcx, qword [rax]
call fcn.180006d90
mov rdi, rax
movss xmm7, dword [0x18017e550]
movaps xmm1, xmm7
movss xmm13, dword [0x1800c62f4]
mulss xmm1, xmm13
movss xmm6, dword [0x18017e554]
movaps xmm0, xmm6
mulss xmm0, xmm13
movss dword [rbp + 0x1b0], xmm0
movss dword [rbp + 0x1b4], xmm1
mov r12d, dword [0x1800d0088]
cmp byte [0x18017e435], r13b
je 0x180062885
mov rbx, qword [0x18017e8d0]
mov rsi, qword [0x18017e8d8]
cmp rbx, rsi
je 0x180062885
movabs r14, 0x400000000002533
nop dword [rax + rax]
movsd xmm0, qword [rbx + 0x10]
movsd qword [rbp + 0x778], xmm0
cmp qword [rbx], r14
je 0x180062878
mov qword [rbp + 0x760], 0
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x58], 0
mov qword [rbp - 0x78], 0
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x70], 0
mov qword [rbp - 0x80], 0
mov qword [rsp + 0x78], 0
mov qword [rbp + 0x758], 0
movss xmm8, dword [rbp + 0x778]
movss dword [rbp - 0x40], xmm8
movss xmm9, dword [rbp + 0x77c]
movaps xmm0, xmm9
addss xmm0, xmm13
movss dword [rbp - 0x3c], xmm0
movss xmm10, dword [rbx + 0x18]
movss dword [rbp - 0x38], xmm10
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x758]
lea rdx, [rbp - 0x40]
call fcn.18004adf0
test al, al
je 0x180062878
movaps xmm11, xmm8
subss xmm11, xmm13
movaps xmm12, xmm10
subss xmm12, xmm13
movss dword [rbp - 0x30], xmm11
movss dword [rbp - 0x2c], xmm9
movss dword [rbp - 0x28], xmm12
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x760]
lea rdx, [rbp - 0x30]
call fcn.18004adf0
test al, al
je 0x180062878
movss dword [rbp - 0x20], xmm11
movss dword [rbp - 0x1c], xmm9
movss dword [rbp - 0x18], xmm12
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x760]
lea rdx, [rbp - 0x20]
call fcn.18004adf0
test al, al
je 0x180062878
movaps xmm15, xmm10
addss xmm15, xmm13
movss dword [rbp - 0x10], xmm11
movss dword [rbp - 0xc], xmm9
movss dword [rbp - 8], xmm15
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rsp + 0x68]
lea rdx, [rbp - 0x10]
call fcn.18004adf0
test al, al
je 0x180062878
movaps xmm14, xmm8
addss xmm14, xmm13
movss dword [rbp], xmm14
movss dword [rbp + 4], xmm9
movss dword [rbp + 8], xmm12
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rsp + 0x58]
lea rdx, [rbp]
call fcn.18004adf0
test al, al
je 0x180062878
movss dword [rbp - 0x50], xmm14
movss dword [rbp - 0x4c], xmm9
movss dword [rbp - 0x48], xmm15
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp - 0x78]
lea rdx, [rbp - 0x50]
call fcn.18004adf0
test al, al
je 0x180062878
movaps xmm13, xmm9
addss xmm13, dword [0x1800c6364]
movss dword [rbp + 0x10], xmm11
movss dword [rbp + 0x14], xmm13
movss dword [rbp + 0x18], xmm12
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x10]
call fcn.18004adf0
test al, al
je 0x18006286f
movss dword [rbp + 0x20], xmm11
movss dword [rbp + 0x24], xmm13
movss dword [rbp + 0x28], xmm15
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rsp + 0x70]
lea rdx, [rbp + 0x20]
call fcn.18004adf0
test al, al
je 0x18006286f
movss dword [rbp + 0x30], xmm14
movss dword [rbp + 0x34], xmm13
movss dword [rbp + 0x38], xmm12
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp - 0x80]
lea rdx, [rbp + 0x30]
call fcn.18004adf0
test al, al
je 0x18006286f
movss dword [rbp + 0x40], xmm14
movss dword [rbp + 0x44], xmm13
movss dword [rbp + 0x48], xmm15
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rsp + 0x78]
lea rdx, [rbp + 0x40]
call fcn.18004adf0
test al, al
je 0x18006286f
lea rdx, [rbp + 0x340]
call fcn.18004ad60
movss xmm7, dword [rax + 8]
lea rdx, [rbp + 0x330]
call fcn.18004ad60
movss xmm6, dword [rax + 4]
lea rdx, [rbp + 0x320]
call fcn.18004ad60
subss xmm10, xmm7
subss xmm9, xmm6
subss xmm8, dword [rax]
mulss xmm8, xmm8
mulss xmm9, xmm9
addss xmm8, xmm9
mulss xmm10, xmm10
addss xmm8, xmm10
xorps xmm0, xmm0
ucomiss xmm0, xmm8
ja 0x180062242
sqrtss xmm8, xmm8
jmp 0x18006224f
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm8, xmm0
mov rax, qword [0x1800c5920]
mov qword [rbp + 0x740], rax
cmp byte [0x1800c5927], 0
je 0x1800623c3
cmp r12d, 2
jl 0x18006237a
movdqa xmm4, xmmword [0x1800c6820]
movdqa xmm2, xmmword [0x1800c6660]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800c66a0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800c66e0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.6666666666666666]
movd xmm0, dword [rbp + 0x740]
xorps xmm2, xmm0
movd dword [rbp + 0x740], xmm2
movdqa xmm3, xmmword [0x1800c6680]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800c66a0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800c66e0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.6666666666666666]
movd xmm0, dword [rbp + 0x744]
xorps xmm2, xmm0
movd dword [rbp + 0x744], xmm2
jmp 0x1800623c3
lea r9, [rbp + 0x740]
mov r8d, r13d
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x92492493
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x36
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x180062390
movss xmm10, dword [0x1800c6364]
movss dword [rsp + 0x20], xmm10
movss xmm14, dword [0x1800c62d4]
movaps xmm3, xmm14
xorps xmm2, xmm2
movaps xmm1, xmm10
lea rcx, [rbp - 0x70]
call fcn.180001580
mov rcx, rax
call fcn.180003fb0
movss xmm7, dword [rbp + 0x75c]
movaps xmm0, xmm7
movss xmm15, dword [0x1800c6474]
subss xmm0, xmm15
movss xmm6, dword [rbp + 0x758]
subss xmm6, dword [0x1800c644c]
movss dword [rbp - 0x58], xmm6
movss dword [rbp - 0x54], xmm0
movss xmm11, dword [0x1800c6494]
movaps xmm3, xmm11
lea r8, [rbp + 0x740]
mov edx, eax
lea rcx, [rbp - 0x58]
call fcn.18004c0a0
movzx eax, word [0x1800c6144]
mov word [rbp + 0x980], ax
cmp byte [0x1800c6145], 0
je 0x18006246f
mov byte [rbp + 0x980], 0x5d
xor byte [rbp + 0x981], 0x37
cvttss2si edx, xmm8
lea rcx, [rbp + 0x7e8]
call fcn.18004a700
nop
movsd xmm0, qword [str.msqjn]
movsd qword [rbp + 0x748], xmm0
movzx ecx, byte [0x1800c5f78]
mov byte [rbp + 0x748], 0x5b
xor byte [rbp + 0x749], 0x37
xor byte [rbp + 0x74a], 0x38
xor byte [rbp + 0x74b], 0x39
xor byte [rbp + 0x74c], 0x3a
xor byte [rbp + 0x74d], 0x3b
xor byte [rbp + 0x74e], 0x3c
xor byte [rbp + 0x74f], 0x3d
xor cl, 0x3e
mov byte [rbp + 0x750], cl
mov r8, rax
lea rdx, [rbp + 0x748]
lea rcx, [rbp + 0x808]
call fcn.180081ba0
nop
lea r8, [rbp + 0x980]
mov rdx, rax
lea rcx, [rbp + 0x8e8]
call fcn.180081cd0
nop
mov rcx, rax
call fcn.180080650
mov r8, rax
movss dword [rsp + 0x20], xmm10
movaps xmm3, xmm14
xorps xmm2, xmm2
movaps xmm1, xmm10
lea rcx, [rbp + 0x2e0]
call fcn.180001580
mov rcx, rax
call fcn.180003fb0
addss xmm7, xmm15
movss dword [rbp - 0x60], xmm6
movss dword [rbp - 0x5c], xmm7
movaps xmm3, xmm11
mov edx, eax
lea rcx, [rbp - 0x60]
call fcn.18004c0a0
nop
lea rcx, [rbp + 0x8e8]
call fcn.180080790
nop
lea rcx, [rbp + 0x808]
call fcn.180080790
nop
lea rcx, [rbp + 0x7e8]
call fcn.180080790
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x188]
call fcn.18004ad40
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm13, qword [rsp + 0x68]
movq rdx, xmm13
movsd xmm10, qword [rbp + 0x760]
movq rcx, xmm10
call fcn.18004cc50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x18c]
call fcn.18004ad40
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm12, qword [rsp + 0x58]
movq rdx, xmm12
movq rcx, xmm10
call fcn.18004cc50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x190]
call fcn.18004ad40
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm11, qword [rbp - 0x78]
movq rdx, xmm11
movq rcx, xmm13
call fcn.18004cc50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x194]
call fcn.18004ad40
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm11
movq rcx, xmm12
call fcn.18004cc50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x198]
call fcn.18004ad40
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm9, qword [rsp + 0x70]
movq rdx, xmm9
movsd xmm6, qword [rsp + 0x60]
movq rcx, xmm6
call fcn.18004cc50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x19c]
call fcn.18004ad40
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm8, qword [rbp - 0x80]
movq rdx, xmm8
movq rcx, xmm6
call fcn.18004cc50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x1a0]
call fcn.18004ad40
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm7, qword [rsp + 0x78]
movq rdx, xmm7
movq rcx, xmm9
call fcn.18004cc50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x1a4]
call fcn.18004ad40
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm7
movq rcx, xmm8
call fcn.18004cc50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x1a8]
call fcn.18004ad40
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm10
call fcn.18004cc50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x1b8]
call fcn.18004ad40
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm9
movq rcx, xmm13
call fcn.18004cc50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x1ac]
call fcn.18004ad40
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm8
movq rcx, xmm12
call fcn.18004cc50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x504]
call fcn.18004ad40
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm7
movq rcx, xmm11
call fcn.18004cc50
movss xmm7, dword [0x18017e550]
movss xmm6, dword [0x18017e554]
movss xmm13, dword [0x1800c62f4]
add rbx, 0x1c
cmp rbx, rsi
jne 0x180061f20
movzx r8d, byte [0x18017e40c]
cmp byte [0x18017e46a], 0
jne 0x1800628de
cmp byte [0x18017e438], 0
jne 0x1800628de
test r8b, r8b
jne 0x1800628de
cmp byte [0x18017e3ff], r8b
jne 0x1800628de
cmp byte [0x18017e42a], r8b
jne 0x1800628de
cmp byte [0x18017e474], r8b
jne 0x1800628de
cmp byte [0x18017e450], r8b
jne 0x1800628de
cmp byte [0x1800d017e], r8b
jne 0x1800628de
cmp byte [0x18017e44a], r8b
je 0x180066062
mov r15, qword [0x18017e8f8]
mov rsi, qword [0x18017e8f0]
mov rcx, r15
sub rcx, rsi
movabs rax, 0x6c80d901b2036407
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x180066058
mov r14d, r13d
cmp rsi, r15
je 0x180066058
movss xmm12, dword [0x1800c653c]
movss xmm8, dword [0x1800c651c]
movsd xmm9, qword [0x1800c63f8]
movss xmm15, dword [0x1800c63e8]
movabs rbx, 0x7fffffffffffffff
mov rdx, rsi
lea rcx, [rbp + 0x610]
call fcn.180061b80
nop
cmp byte [0x18017e450], 0
je 0x1800630d2
test r14d, r14d
jne 0x180062b36
movss xmm1, dword [0x18017e550]
subss xmm1, xmm12
movss xmm0, dword [0x18017e554]
subss xmm0, xmm8
movss dword [rbp + 0x2c8], xmm0
movss dword [rbp + 0x2cc], xmm1
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movaps xmm2, xmm8
lea rdx, [rbp + 0x2c8]
mov rcx, rdi
call fcn.1800249a0
mov r8d, dword [rdi + 0x78]
dec r8d
mov dword [rdi + 0x78], r8d
mov r9d, 0x78000000
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.1800243e0
mov dword [rdi + 0x78], r13d
cmp byte [0x18017e461], r14b
je 0x1800629f2
movss xmm0, dword [0x1800d0180]
jmp 0x180062a09
mov rax, qword [0x18017e8e8]
mov rdx, qword [rax + 0x21]
add rdx, 0x3939d38
call fcn.180080d50
mulss xmm0, xmm13
mulss xmm0, dword [0x1800c629c]
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
movaps xmm6, xmm0
mulss xmm6, xmm8
movaps xmm1, xmm6
mulss xmm1, xmm6
movss xmm0, dword [0x1800c6570]
subss xmm0, xmm1
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x180062a47
xorps xmm7, xmm7
sqrtss xmm7, xmm0
jmp 0x180062a4f
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm7, xmm0
movss xmm4, dword [0x18017e550]
subss xmm4, xmm12
movaps xmm2, xmm4
subss xmm2, xmm6
movss xmm3, dword [0x18017e554]
subss xmm3, xmm8
movaps xmm1, xmm3
subss xmm1, xmm7
mov r8d, 0xff6699ff
mov r9d, 2
unpcklps xmm1, xmm2
movq rdx, xmm1
movaps xmm1, xmm3
unpcklps xmm1, xmm4
movq rcx, xmm1
call fcn.18004cc50
movss xmm3, dword [0x18017e550]
subss xmm3, xmm12
movaps xmm1, xmm3
subss xmm1, xmm6
movss xmm2, dword [0x18017e554]
subss xmm2, xmm8
movaps xmm0, xmm2
addss xmm0, xmm7
mov r8d, 0xff6699ff
mov r9d, 2
unpcklps xmm0, xmm1
movq rdx, xmm0
movaps xmm1, xmm2
unpcklps xmm1, xmm3
movq rcx, xmm1
call fcn.18004cc50
movss xmm3, dword [0x18017e550]
subss xmm3, xmm12
movaps xmm1, xmm3
subss xmm1, xmm8
movss xmm2, dword [0x18017e554]
subss xmm2, xmm8
mov r8d, 0xffff78
mov r9d, 1
movaps xmm0, xmm2
unpcklps xmm0, xmm1
movq rdx, xmm0
movaps xmm1, xmm2
unpcklps xmm1, xmm3
movq rcx, xmm1
call fcn.18004cc50
mov r14d, 1
mov rax, qword [0x18017d660]
cmp qword [rbp + 0x610], rax
jne 0x180062c04
movss xmm1, dword [0x18017e550]
subss xmm1, xmm12
movss xmm0, dword [0x18017e554]
subss xmm0, xmm8
movss dword [rbp + 0x2d0], xmm0
movss dword [rbp + 0x2d4], xmm1
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movss xmm2, dword [0x1800c6448]
lea rdx, [rbp + 0x2d0]
mov rcx, rdi
call fcn.1800249a0
mov r8d, dword [rdi + 0x78]
dec r8d
mov dword [rdi + 0x78], r8d
mov r9d, 0xff33ffff
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.1800243e0
mov dword [rdi + 0x78], r13d
mov rdx, qword [rbp + 0x6b2]
cmp rdx, 0xf
jbe 0x180066040
inc rdx
mov rcx, qword [rbp + 0x69a]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180062bfa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180063250
call fcn.18008963c
jmp 0x180066040
xorps xmm14, xmm14
ucomiss xmm14, dword [rbp + 0x71a]
jp 0x180062c30
jne 0x180062c30
ucomiss xmm14, dword [rbp + 0x71e]
jp 0x180062c30
jne 0x180062c30
ucomiss xmm14, dword [rbp + 0x722]
jp 0x180062c30
je 0x1800630d6
movss xmm0, dword [rbp + 0x6ba]
comiss xmm0, xmm14
jbe 0x1800630d6
movss xmm0, dword [0x18017d75e]
call fcn.18004ab80
xor ecx, ecx
call fcn.18004a8a0
movaps xmm11, xmm3
movaps xmm12, xmm2
movaps xmm14, xmm1
movaps xmm15, xmm0
lea rdx, [rbp + 0x538]
call fcn.18004ad60
movss xmm7, dword [rbp + 0x6f6]
subss xmm7, dword [rax]
lea rdx, [rbp + 0x544]
call fcn.18004ad60
movss xmm6, dword [rbp + 0x6fa]
subss xmm6, dword [rax + 4]
lea rdx, [rbp + 0x550]
call fcn.18004ad60
movss xmm4, dword [rbp + 0x6fe]
subss xmm4, dword [rax + 8]
cvtps2pd xmm0, xmm7
mulsd xmm0, xmm9
cvtpd2ps xmm3, xmm0
cvtps2pd xmm1, xmm6
mulsd xmm1, xmm9
cvtpd2ps xmm2, xmm1
cvtps2pd xmm0, xmm4
mulsd xmm0, xmm9
cvtpd2ps xmm5, xmm0
movaps xmm1, xmm3
unpcklps xmm1, xmm2
xorps xmm3, xmm3
movsd xmm3, xmm1
movss dword [rbp + 0x988], xmm5
movlhps xmm3, xmm5
movaps xmm6, xmm3
shufps xmm6, xmm3, 0xaa
mulps xmm6, xmm12
movaps xmm0, xmm3
shufps xmm0, xmm3, 0x55
mulps xmm0, xmm14
addps xmm6, xmm11
addps xmm6, xmm0
shufps xmm3, xmm3, 0
mulps xmm3, xmm15
addps xmm6, xmm3
movaps xmm7, xmm6
shufps xmm7, xmm6, 0xaa
movaps xmm1, xmm7
mulss xmm1, xmm7
movsd qword [rbp + 0x980], xmm6
movaps xmm0, xmm6
mulss xmm0, xmm6
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x180062d46
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x180062d4e
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm0, xmm8
jbe 0x180062d66
divss xmm6, xmm0
mulss xmm6, xmm8
divss xmm7, xmm0
mulss xmm7, xmm8
movss xmm10, dword [0x18017e550]
subss xmm10, dword [0x1800c653c]
subss xmm10, xmm7
movss xmm9, dword [0x18017e554]
subss xmm9, xmm8
subss xmm9, xmm6
movss dword [rbp - 0x58], xmm9
movss dword [rbp - 0x54], xmm10
mov qword [rbp + 0x178], 0
mov dword [rbp + 0x180], 0
mov qword [rbp + 0x2f8], 0
mov dword [rbp + 0x300], 0
mov qword [rbp + 0x350], 0
mov dword [rbp + 0x358], 0
mov qword [rbp + 0x308], 0
mov dword [rbp + 0x310], 0
mov qword [rbp + 0x360], 0
mov dword [rbp + 0x368], 0
lea rax, [rbp + 0x360]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x308]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x350]
lea r8, [rbp + 0x2f8]
lea rdx, [rbp + 0x178]
lea rcx, [rbp + 0x610]
call fcn.18004ec30
movss xmm6, dword [rbp + 0x178]
movaps xmm8, xmm6
subss xmm8, dword [rbp + 0x6f6]
lea rdx, [rbp + 0x55c]
call fcn.18004ad60
mulss xmm8, dword [0x1800c6448]
addss xmm8, xmm6
subss xmm8, dword [rax]
lea rdx, [rbp + 0x568]
call fcn.18004ad60
movss xmm7, dword [rbp + 0x17c]
subss xmm7, dword [rax + 4]
movss xmm0, dword [rbp + 0x180]
movaps xmm6, xmm0
subss xmm6, dword [rbp + 0x6fe]
mulss xmm6, dword [0x1800c6448]
addss xmm6, xmm0
lea rdx, [rbp + 0x574]
call fcn.18004ad60
subss xmm6, dword [rax + 8]
cvtps2pd xmm0, xmm8
movsd xmm4, qword [0x1800c63f8]
mulsd xmm0, xmm4
cvtpd2ps xmm3, xmm0
cvtps2pd xmm1, xmm7
mulsd xmm1, xmm4
cvtpd2ps xmm2, xmm1
cvtps2pd xmm0, xmm6
mulsd xmm0, xmm4
cvtpd2ps xmm4, xmm0
movaps xmm1, xmm3
unpcklps xmm1, xmm2
xorps xmm3, xmm3
movsd xmm3, xmm1
movss dword [rbp + 0x988], xmm4
movlhps xmm3, xmm4
movaps xmm6, xmm3
shufps xmm6, xmm3, 0xaa
mulps xmm6, xmm12
movaps xmm0, xmm3
shufps xmm0, xmm3, 0x55
mulps xmm0, xmm14
addps xmm6, xmm11
addps xmm6, xmm0
shufps xmm3, xmm3, 0
mulps xmm3, xmm15
addps xmm6, xmm3
movaps xmm7, xmm6
shufps xmm7, xmm6, 0xaa
movaps xmm1, xmm7
mulss xmm1, xmm7
movsd qword [rbp + 0x980], xmm6
movaps xmm0, xmm6
mulss xmm0, xmm6
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x180062f57
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x180062f5f
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss xmm1, dword [0x1800c6518]
comiss xmm0, xmm1
jbe 0x180062f7c
divss xmm6, xmm0
mulss xmm6, xmm1
divss xmm7, xmm0
mulss xmm7, xmm1
movss xmm8, dword [0x18017e550]
movss xmm12, dword [0x1800c653c]
subss xmm8, xmm12
subss xmm8, xmm7
movss xmm7, dword [0x18017e554]
movss xmm11, dword [0x1800c651c]
subss xmm7, xmm11
subss xmm7, xmm6
mov ebx, 0xff9900cc
cmp byte [rbp + 0x6e1], 0
mov eax, 0xff3300ff
cmovne ebx, eax
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movss xmm2, dword [0x1800c6428]
lea rdx, [rbp - 0x58]
mov rcx, rdi
cmp byte [rbp + 0x6e2], r9b
jne 0x180063017
call fcn.1800249a0
mov r8d, dword [rdi + 0x78]
dec r8d
mov dword [rdi + 0x78], r8d
mov r9d, 0xffffff66
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.1800243e0
mov dword [rdi + 0x78], r13d
jmp 0x1800630bf
call fcn.1800249a0
mov r8d, dword [rdi + 0x78]
dec r8d
mov dword [rdi + 0x78], r8d
mov r9d, ebx
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.1800243e0
mov dword [rdi + 0x78], r13d
mov r8d, 0xffff
mov r9d, 2
movaps xmm0, xmm9
unpcklps xmm0, xmm10
movq rdx, xmm0
movaps xmm1, xmm7
unpcklps xmm1, xmm8
movq rcx, xmm1
call fcn.18004cc50
cmp byte [0x18017e43c], 0
je 0x1800630bf
movss xmm2, dword [0x18017e550]
movss xmm1, dword [0x18017e554]
mov r9d, 1
movaps xmm0, xmm9
subss xmm2, xmm12
subss xmm1, xmm11
unpcklps xmm0, xmm10
movq rdx, xmm0
unpcklps xmm1, xmm2
movq rcx, xmm1
cmp byte [rbp + 0x6e1], 0
mov r8d, 0xffdaa096
jne 0x1800630ba
mov r8d, 0x6666cc96
call fcn.18004cc50
movabs rbx, 0x7fffffffffffffff
movss xmm15, dword [0x1800c63e8]
xorps xmm14, xmm14
cmp byte [0x18017e46a], 0
je 0x180064071
cmp byte [rbp + 0x6e0], 0
je 0x180064071
cmp byte [rbp + 0x6e2], 0
je 0x180064071
movss xmm0, dword [0x18017d70a]
comiss xmm0, xmm14
jbe 0x180064071
movss xmm9, dword [rbp + 0x6f6]
movss xmm8, dword [rbp + 0x6fa]
movss xmm10, dword [rbp + 0x6fe]
lea rdx, [rbp + 0x580]
call fcn.18004ad60
movss xmm7, dword [rax + 8]
lea rdx, [rbp + 0x58c]
call fcn.18004ad60
movss xmm6, dword [rax + 4]
lea rdx, [rbp + 0x598]
call fcn.18004ad60
movaps xmm1, xmm10
subss xmm1, xmm7
movaps xmm2, xmm8
subss xmm2, xmm6
movaps xmm0, xmm9
subss xmm0, dword [rax]
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm0
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x180063197
xorps xmm12, xmm12
sqrtss xmm12, xmm2
jmp 0x1800631a3
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm12, xmm0
mov qword [rbp + 0x158], 0
mov qword [rbp + 0x160], 0
movss xmm2, dword [0x18017e550]
movaps xmm1, xmm8
subss xmm1, dword [0x1800c6390]
movaps xmm0, xmm9
unpcklps xmm0, xmm1
movsd qword [rbp + 0x3e0], xmm0
movss dword [rbp + 0x3e8], xmm10
movss xmm0, dword [0x18017e554]
unpcklps xmm0, xmm2
movq r9, xmm0
lea r8, [rbp + 0x158]
lea rdx, [rbp + 0x3e0]
call fcn.18004adf0
test al, al
jne 0x180063257
mov rdx, qword [rbp + 0x6b2]
cmp rdx, 0xf
jbe 0x180066025
inc rdx
mov rcx, qword [rbp + 0x69a]
cmp rdx, 0x1000
mov rax, rcx
jb 0x180066020
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180066020
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
movss xmm1, dword [0x18017e550]
addss xmm8, dword [0x1800c6364]
movaps xmm0, xmm9
unpcklps xmm0, xmm8
movsd qword [rbp + 0x3f0], xmm0
movss dword [rbp + 0x3f8], xmm10
movss xmm0, dword [0x18017e554]
unpcklps xmm0, xmm1
movq r9, xmm0
lea r8, [rbp + 0x160]
lea rdx, [rbp + 0x3f0]
call fcn.18004adf0
test al, al
je 0x18006320c
movss xmm9, dword [rbp + 0x15c]
movaps xmm1, xmm9
movss xmm11, dword [rbp + 0x164]
subss xmm1, xmm11
andps xmm1, xmmword [0x1800c6800]
cvtps2pd xmm0, xmm1
mulsd xmm0, qword [0x1800c63d0]
cvtpd2ps xmm8, xmm0
mulss xmm1, xmm13
mulss xmm1, xmm13
movss xmm0, dword [0x1800c6494]
maxss xmm0, xmm1
movss xmm6, dword [0x1800c64a4]
minss xmm6, xmm0
movss xmm7, dword [rbp + 0x158]
cmp byte [0x1800d017d], 0
je 0x18006355f
mov byte [rsp + 0x50], 0
mov eax, dword [0x1800c619c]
mov dword [rbp + 0x758], eax
movzx eax, word [0x1800c61a0]
mov word [rbp + 0x75c], ax
mov byte [rbp + 0x758], 0x49
xor byte [rbp + 0x759], 0x37
xor byte [rbp + 0x75a], 0x38
xor byte [rbp + 0x75b], 0x39
xor al, 0x3a
mov byte [rbp + 0x75c], al
xor byte [rbp + 0x75d], 0x3b
lea rax, [rbp + 0x758]
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x180063370
mov rax, rbx
mov rdx, qword [rbp + 0x6aa]
sub rax, rdx
cmp rax, rcx
jb 0x1800662bf
lea rax, [rbp + 0x69a]
cmp qword [rbp + 0x6b2], 0xf
cmova rax, qword [rbp + 0x69a]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rbp + 0x758]
lea rcx, [rbp + 0x828]
call fcn.180082be0
nop
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x828]
call fcn.180080660
xorps xmm0, xmm0
movups xmmword [rbp + 0x788], xmm0
mov qword [rbp + 0x798], r13
mov qword [rbp + 0x7a0], r13
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x788], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x798], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rbp + 0x788]
cmp qword [rbp + 0x7a0], 0xf
cmova r8, qword [rbp + 0x788]
mov rax, qword [0x18017df00]
mov dword [rbp + 0x370], 0
mov dword [rbp + 0x374], 0x3f666666
mov dword [rbp + 0x378], 0x3f800000
movss xmm0, dword [rax + 0x37d0]
movss dword [rbp + 0x37c], xmm0
lea rcx, [rbp + 0x370]
call fcn.180003a40
movaps xmm2, xmm11
subss xmm2, xmm6
movaps xmm1, xmm8
divss xmm1, dword [0x1800c6454]
movaps xmm0, xmm7
subss xmm0, xmm1
movss dword [rbp + 0x2c0], xmm0
movss dword [rbp + 0x2c4], xmm2
movaps xmm3, xmm6
mov edx, eax
lea rcx, [rbp + 0x2c0]
call fcn.18004c0a0
nop
mov rdx, qword [rbp + 0x7a0]
cmp rdx, 0xf
jbe 0x1800634ec
inc rdx
mov rcx, qword [rbp + 0x788]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800634e7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180066143
call fcn.18008963c
mov qword [rbp + 0x798], r13
mov qword [rbp + 0x7a0], 0xf
mov byte [rbp + 0x788], 0
mov rdx, qword [rbp + 0x840]
cmp rdx, 0xf
jbe 0x180063546
inc rdx
mov rcx, qword [rbp + 0x828]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180063541
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006614a
call fcn.18008963c
mov qword [rbp + 0x838], r13
mov qword [rbp + 0x840], 0xf
mov byte [rbp + 0x828], 0
movss xmm10, dword [rbp + 0x160]
cmp byte [0x18017df0e], 0
je 0x1800635b9
cvttss2si eax, dword [rbp + 0x6be]
cvttss2si ecx, dword [rbp + 0x6ba]
movss xmm0, dword [rbp + 0x6e6]
mulss xmm0, dword [0x1800c637c]
cvttss2si r8d, xmm0
movaps xmm1, xmm11
subss xmm1, dword [0x1800c64bc]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
mov r9d, 0x7d
movaps xmm0, xmm10
call fcn.18004b2d0
cmp byte [0x18017e40d], 0
je 0x1800637aa
mov byte [rsp + 0x50], 0
cvttss2si r8d, dword [rbp + 0x6ba]
lea r9, [rbp + 0x995]
test r8d, r8d
jns 0x180063630
neg r8d
nop dword [rax]
nop word [rax + rax]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x1800635f0
dec r9
mov byte [r9], 0x2d
jmp 0x18006365a
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 0x180063630
lea r8, [rbp + 0x995]
mov rdx, r9
lea rcx, [rbp + 0x8e8]
call fcn.180082d30
nop
mov eax, dword [0x1800c5c1c]
mov dword [rbp + 0x760], eax
movzx eax, byte [0x1800c5c20]
mov byte [rbp + 0x760], 0x48
xor byte [rbp + 0x761], 0x37
xor byte [rbp + 0x762], 0x38
xor byte [rbp + 0x763], 0x39
xor al, 0x3a
mov byte [rbp + 0x764], al
lea r8, [rbp + 0x8e8]
lea rdx, [rbp + 0x760]
lea rcx, [rbp + 0x908]
call fcn.180081ba0
nop
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.180080660
xorps xmm0, xmm0
movups xmmword [rbp + 0x848], xmm0
mov qword [rbp + 0x858], r13
mov qword [rbp + 0x860], r13
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x848], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x858], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rcx, [rbp + 0x848]
call fcn.180080650
mov r8, rax
movss xmm0, dword [0x1800c6364]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm0
movss xmm0, dword [0x1800c6350]
movaps xmm2, xmm0
movaps xmm1, xmm0
lea rcx, [rbp + 0x600]
call fcn.180001580
mov rcx, rax
call fcn.180003fb0
movaps xmm1, xmm8
divss xmm1, dword [0x1800c6454]
movaps xmm0, xmm7
subss xmm0, xmm1
movss dword [rbp + 0x2b8], xmm0
movss dword [rbp + 0x2bc], xmm9
movaps xmm3, xmm6
mov edx, eax
lea rcx, [rbp + 0x2b8]
call fcn.18004c0a0
nop
lea rcx, [rbp + 0x848]
call fcn.180080790
nop
lea rcx, [rbp + 0x908]
call fcn.180080790
nop
lea rcx, [rbp + 0x8e8]
call fcn.180080790
cmp byte [0x1800d017c], 0
je 0x180063a1f
mov byte [rsp + 0x50], 0
cvttss2si edx, dword [rbp + 0x6e6]
lea rcx, [rbp + 0x8a8]
call fcn.18004a700
nop
mov ecx, dword [0x1800c6194]
mov dword [rbp + 0x740], ecx
movzx ecx, word [0x1800c6198]
mov word [rbp + 0x744], cx
mov byte [rbp + 0x740], 0x55
xor byte [rbp + 0x741], 0x37
xor byte [rbp + 0x742], 0x38
xor byte [rbp + 0x743], 0x39
xor cl, 0x3a
mov byte [rbp + 0x744], cl
xor byte [rbp + 0x745], 0x3b
mov r8, rax
lea rdx, [rbp + 0x740]
lea rcx, [rbp + 0x888]
call fcn.180081ba0
nop
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.180080660
xorps xmm0, xmm0
movups xmmword [rbp + 0x7a8], xmm0
mov qword [rbp + 0x7b8], r13
mov qword [rbp + 0x7c0], r13
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x7a8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x7b8], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rbp + 0x7a8]
cmp qword [rbp + 0x7c0], 0xf
cmova r8, qword [rbp + 0x7a8]
mov rax, qword [0x18017df00]
mov dword [rbp + 0x380], 0x3f666666
mov dword [rbp + 0x384], 0x3f666666
mov dword [rbp + 0x388], 0x3f800000
movss xmm0, dword [rax + 0x37d0]
movss dword [rbp + 0x38c], xmm0
lea rcx, [rbp + 0x380]
call fcn.180003a40
movaps xmm1, xmm6
addss xmm1, xmm9
movaps xmm0, xmm8
movss xmm9, dword [0x1800c6454]
divss xmm0, xmm9
subss xmm7, xmm0
movss dword [rbp + 0x2b0], xmm7
movss dword [rbp + 0x2b4], xmm1
movaps xmm3, xmm6
mov edx, eax
lea rcx, [rbp + 0x2b0]
call fcn.18004c0a0
nop
mov rdx, qword [rbp + 0x7c0]
cmp rdx, 0xf
jbe 0x180063950
inc rdx
mov rcx, qword [rbp + 0x7a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006394b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180066151
call fcn.18008963c
mov qword [rbp + 0x7b8], r13
mov qword [rbp + 0x7c0], 0xf
mov byte [rbp + 0x7a8], 0
mov rdx, qword [rbp + 0x8a0]
cmp rdx, 0xf
jbe 0x1800639aa
inc rdx
mov rcx, qword [rbp + 0x888]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800639a5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180066158
call fcn.18008963c
mov qword [rbp + 0x898], r13
mov qword [rbp + 0x8a0], 0xf
mov byte [rbp + 0x888], 0
mov rdx, qword [rbp + 0x8c0]
cmp rdx, 0xf
jbe 0x180063a04
inc rdx
mov rcx, qword [rbp + 0x8a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800639ff
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006615f
call fcn.18008963c
mov qword [rbp + 0x8b8], r13
mov qword [rbp + 0x8c0], 0xf
mov byte [rbp + 0x8a8], 0
jmp 0x180063a28
movss xmm9, dword [0x1800c6454]
cmp byte [0x18017e449], 0
je 0x180063e41
mov byte [rsp + 0x50], 0
cvttss2si r8d, xmm12
lea r9, [rbp + 0x77d]
test r8d, r8d
jns 0x180063a90
neg r8d
nop
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x180063a50
dec r9
mov byte [r9], 0x2d
jmp 0x180063aba
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 0x180063a90
lea r8, [rbp + 0x77d]
mov rdx, r9
lea rcx, [rbp + 0x868]
call fcn.180082d30
nop
mov rax, qword [str.rkm]
mov qword [rbp + 0x980], rax
cmp byte [0x1800c60e7], 0
je 0x180063c43
cmp r12d, 2
jl 0x180063c02
movdqa xmm4, xmmword [0x1800c6820]
movdqa xmm2, xmmword [0x1800c6660]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800c66a0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800c66e0]
packuswb xmm2, xmm2
mov eax, dword [str.6666666666666666]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x980]
xorps xmm2, xmm1
movd dword [rbp + 0x980], xmm2
movdqa xmm3, xmmword [0x1800c6680]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800c66a0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800c66e0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x984]
xorps xmm2, xmm1
movd dword [rbp + 0x984], xmm2
jmp 0x180063c43
lea r9, [rbp + 0x980]
mov r8d, r13d
nop dword [rax]
mov eax, 0x92492493
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x36
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x180063c10
lea r8, [rbp + 0x868]
lea rdx, [rbp + 0x980]
lea rcx, [rbp + 0x8c8]
call fcn.180081ba0
nop
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.180080660
xorps xmm0, xmm0
movups xmmword [rbp + 0x7c8], xmm0
mov qword [rbp + 0x7d8], r13
mov qword [rbp + 0x7e0], r13
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x7c8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x7d8], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rbp + 0x7c8]
cmp qword [rbp + 0x7e0], 0xf
cmova r8, qword [rbp + 0x7c8]
mov rax, qword [0x18017df00]
mov dword [rbp + 0x2e0], 0x3f666666
mov dword [rbp + 0x2e4], 0x3f666666
mov dword [rbp + 0x2e8], 0x3f800000
movss xmm0, dword [rax + 0x37d0]
movss dword [rbp + 0x2ec], xmm0
lea rcx, [rbp + 0x2e0]
call fcn.180003a40
movaps xmm1, xmm8
divss xmm1, xmm9
movaps xmm0, xmm10
subss xmm0, xmm1
movss dword [rbp + 0x2a0], xmm0
movss dword [rbp + 0x2a4], xmm11
movaps xmm3, xmm6
mov edx, eax
lea rcx, [rbp + 0x2a0]
call fcn.18004c0a0
nop
mov rdx, qword [rbp + 0x7e0]
cmp rdx, 0xf
jbe 0x180063d74
inc rdx
mov rcx, qword [rbp + 0x7c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180063d6f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180066166
call fcn.18008963c
mov qword [rbp + 0x7d8], r13
mov qword [rbp + 0x7e0], 0xf
mov byte [rbp + 0x7c8], 0
mov rdx, qword [rbp + 0x8e0]
cmp rdx, 0xf
jbe 0x180063dce
inc rdx
mov rcx, qword [rbp + 0x8c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180063dc9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006616d
call fcn.18008963c
mov qword [rbp + 0x8d8], r13
mov qword [rbp + 0x8e0], 0xf
mov byte [rbp + 0x8c8], 0
mov rdx, qword [rbp + 0x880]
cmp rdx, 0xf
jbe 0x180063e28
inc rdx
mov rcx, qword [rbp + 0x868]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180063e23
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180066174
call fcn.18008963c
mov qword [rbp + 0x878], r13
mov qword [rbp + 0x880], 0xf
mov byte [rbp + 0x868], 0
cmp byte [0x18017e468], 0
je 0x180064071
mov byte [rbp + 0x980], 0
mov r8, qword [rbp + 0x618]
mov rdx, qword [rbp + 0x680]
lea rcx, [rbp + 0x808]
call fcn.180054ea0
nop
mov byte [rsp + 0x50], 0
mov r8, rax
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x7e8]
call fcn.180081ba0
nop
lea rdx, [rbp + 0x980]
mov rcx, rax
call fcn.180080660
xorps xmm0, xmm0
movups xmmword [rbp + 0x768], xmm0
mov qword [rbp + 0x778], r13
mov qword [rbp + 0x780], r13
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x768], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x778], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rbp + 0x768]
cmp qword [rbp + 0x780], 0xf
cmova r8, qword [rbp + 0x768]
mov rax, qword [0x18017df00]
mov dword [rbp - 0x70], 0x3f666666
mov dword [rbp - 0x6c], 0x3f666666
mov dword [rbp - 0x68], 0x3f800000
movss xmm0, dword [rax + 0x37d0]
movss dword [rbp - 0x64], xmm0
lea rcx, [rbp - 0x70]
call fcn.180003a40
movaps xmm0, xmm6
addss xmm0, xmm11
movss xmm11, dword [0x1800c644c]
subss xmm0, xmm11
divss xmm8, xmm9
subss xmm10, xmm8
movss dword [rbp + 0x298], xmm10
movss dword [rbp + 0x29c], xmm0
movaps xmm3, xmm6
mov edx, eax
lea rcx, [rbp + 0x298]
call fcn.18004c0a0
nop
mov rdx, qword [rbp + 0x780]
cmp rdx, 0xf
jbe 0x180063fa2
inc rdx
mov rcx, qword [rbp + 0x768]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180063f9d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006617b
call fcn.18008963c
mov qword [rbp + 0x778], r13
mov qword [rbp + 0x780], 0xf
mov byte [rbp + 0x768], 0
mov rdx, qword [rbp + 0x800]
cmp rdx, 0xf
jbe 0x180063ffc
inc rdx
mov rcx, qword [rbp + 0x7e8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180063ff7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180066182
call fcn.18008963c
mov qword [rbp + 0x7f8], r13
mov qword [rbp + 0x800], 0xf
mov byte [rbp + 0x7e8], 0
mov rdx, qword [rbp + 0x820]
cmp rdx, 0xf
jbe 0x180064056
inc rdx
mov rcx, qword [rbp + 0x808]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180064051
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180066189
call fcn.18008963c
mov qword [rbp + 0x818], r13
mov qword [rbp + 0x820], 0xf
mov byte [rbp + 0x808], 0
jmp 0x18006407a
movss xmm11, dword [0x1800c644c]
cmp byte [0x18017e438], 0
je 0x180064b93
cmp byte [rbp + 0x6e0], 0
je 0x180064b93
cmp byte [rbp + 0x6e2], 0
je 0x180064b93
movss xmm0, dword [0x18017d70a]
comiss xmm0, xmm14
jbe 0x180064b93
cmp qword [rbp + 0x680], 0x16dd
je 0x180064b93
lea rdx, [rbp + 0x930]
lea rcx, [rbp + 0x610]
call fcn.18004f390
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x5b0], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x5c0], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x5d0], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rbp + 0x5e0], xmm1
movsd xmm0, qword [rax + 0x40]
movsd qword [rbp + 0x5f0], xmm0
lea r8, [rbp + 0x5b0]
lea rdx, [rbp + 0x50]
lea rcx, [rbp + 0x610]
call fcn.18004f8d0
mov ebx, 0xffff0000
cmp byte [rbp + 0x6e1], 0
mov eax, 0xff00ff00
cmovne ebx, eax
cmp byte [rbp + 0x50], 0
jne 0x180064b93
movsd xmm0, qword [rbp + 0x6f6]
movsd qword [rbp + 0x400], xmm0
mov eax, dword [rbp + 0x6fe]
mov dword [rbp + 0x408], eax
movss xmm0, dword [0x18017e550]
movss xmm1, dword [0x18017e554]
unpcklps xmm1, xmm0
movq r9, xmm1
lea r8, [rbp + 0x980]
lea rdx, [rbp + 0x400]
call fcn.18004adf0
test al, al
je 0x180064b93
mov rcx, qword [rbp + 0x680]
movabs rax, 0xfd1ffffffffffcc9
add rax, rcx
cmp rax, 0x23
ja 0x1800641c1
movabs rdx, 0x800000021
bt rdx, rax
jb 0x18006499f
movabs rax, 0x2e000000000016c
cmp rcx, rax
je 0x18006499f
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0x79]
lea rcx, [rbp + 0x71]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0x81]
lea rcx, [rbp + 0x79]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0x89]
lea rcx, [rbp + 0x81]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0x91]
lea rcx, [rbp + 0x79]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0xa1]
lea rcx, [rbp + 0x79]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0xb1]
lea rcx, [rbp + 0x91]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0xc1]
lea rcx, [rbp + 0xa1]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0xb9]
lea rcx, [rbp + 0xb1]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0xc9]
lea rcx, [rbp + 0xc1]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0xd1]
lea rcx, [rbp + 0x89]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0xe1]
lea rcx, [rbp + 0x89]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0xd9]
lea rcx, [rbp + 0xd1]
call fcn.18004c440
movss xmm3, dword [0x1800c6448]
mov r8d, 0xff000000
lea rdx, [rbp + 0xe9]
lea rcx, [rbp + 0xe1]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0xf1]
lea rcx, [rbp + 0xe9]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0xf9]
lea rcx, [rbp + 0xd9]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0x101]
lea rcx, [rbp + 0xf1]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0x109]
lea rcx, [rbp + 0xf9]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0x79]
lea rcx, [rbp + 0x71]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0x81]
lea rcx, [rbp + 0x79]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0x89]
lea rcx, [rbp + 0x81]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0x91]
lea rcx, [rbp + 0x79]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0xa1]
lea rcx, [rbp + 0x79]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0xb1]
lea rcx, [rbp + 0x91]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0xc1]
lea rcx, [rbp + 0xa1]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0xb9]
lea rcx, [rbp + 0xb1]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0xc9]
lea rcx, [rbp + 0xc1]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0xd1]
lea rcx, [rbp + 0x89]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0xe1]
lea rcx, [rbp + 0x89]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0xd9]
lea rcx, [rbp + 0xd1]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0xe9]
lea rcx, [rbp + 0xe1]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0xf1]
lea rcx, [rbp + 0xe9]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0xf9]
lea rcx, [rbp + 0xd9]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0x101]
lea rcx, [rbp + 0xf1]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0x109]
lea rcx, [rbp + 0xf9]
call fcn.18004c440
movss xmm0, dword [rbp + 0x71]
movss dword [rbp + 0x290], xmm0
movss xmm1, dword [rbp + 0x75]
movss dword [rbp + 0x294], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x290]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0x81]
movss dword [rbp + 0x288], xmm0
movss xmm1, dword [rbp + 0x85]
movss dword [rbp + 0x28c], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x288]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0x89]
movss dword [rbp + 0x280], xmm0
movss xmm1, dword [rbp + 0x8d]
movss dword [rbp + 0x284], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x280]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0x79]
movss dword [rbp + 0x268], xmm0
movss xmm1, dword [rbp + 0x7d]
movss dword [rbp + 0x26c], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x268]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0x91]
movss dword [rbp + 0x230], xmm0
movss xmm1, dword [rbp + 0x95]
movss dword [rbp + 0x234], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x230]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0xa1]
movss dword [rbp + 0x220], xmm0
movss xmm1, dword [rbp + 0xa5]
movss dword [rbp + 0x224], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x220]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0xb1]
movss dword [rbp + 0x218], xmm0
movss xmm1, dword [rbp + 0xb5]
movss dword [rbp + 0x21c], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x218]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0xb9]
movss dword [rbp + 0x210], xmm0
movss xmm1, dword [rbp + 0xbd]
movss dword [rbp + 0x214], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x210]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0xc1]
movss dword [rbp + 0x228], xmm0
movss xmm1, dword [rbp + 0xc5]
movss dword [rbp + 0x22c], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x228]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0xc9]
movss dword [rbp + 0x208], xmm0
movss xmm1, dword [rbp + 0xcd]
movss dword [rbp + 0x20c], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x208]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0xd1]
movss dword [rbp + 0x200], xmm0
movss xmm1, dword [rbp + 0xd5]
movss dword [rbp + 0x204], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x200]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0xd9]
movss dword [rbp + 0x1f8], xmm0
movss xmm1, dword [rbp + 0xdd]
movss dword [rbp + 0x1fc], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x1f8]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0xe1]
movss dword [rbp + 0x1f0], xmm0
movss xmm1, dword [rbp + 0xe5]
movss dword [rbp + 0x1f4], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x1f0]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0xe9]
movss dword [rbp + 0x2a8], xmm0
movss xmm1, dword [rbp + 0xed]
movss dword [rbp + 0x2ac], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x2a8]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0xf1]
movss dword [rbp + 0x270], xmm0
movss xmm1, dword [rbp + 0xf5]
movss dword [rbp + 0x274], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x270]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0x101]
movss dword [rbp + 0x278], xmm0
movss xmm1, dword [rbp + 0x105]
movss dword [rbp + 0x27c], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x278]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0xf9]
movss dword [rbp + 0x2d8], xmm0
movss xmm1, dword [rbp + 0xfd]
movss dword [rbp + 0x2dc], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x2d8]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0x109]
movss dword [rbp + 0x2f0], xmm0
movss xmm1, dword [rbp + 0x10d]
movss dword [rbp + 0x2f4], xmm1
lea rdx, [rbp + 0x2f0]
jmp 0x180064b7c
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0x79]
lea rcx, [rbp + 0x71]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0x81]
lea rcx, [rbp + 0x79]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0x91]
lea rcx, [rbp + 0x81]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, 0xff000000
lea rdx, [rbp + 0xa1]
lea rcx, [rbp + 0x81]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0x79]
lea rcx, [rbp + 0x71]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0x81]
lea rcx, [rbp + 0x79]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0x91]
lea rcx, [rbp + 0x81]
call fcn.18004c440
movaps xmm3, xmm15
mov r8d, ebx
lea rdx, [rbp + 0xa1]
lea rcx, [rbp + 0x81]
call fcn.18004c440
movss xmm0, dword [rbp + 0x71]
movss dword [rbp + 0x238], xmm0
movss xmm1, dword [rbp + 0x75]
movss dword [rbp + 0x23c], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x238]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0x81]
movss dword [rbp + 0x240], xmm0
movss xmm1, dword [rbp + 0x85]
movss dword [rbp + 0x244], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x240]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0x79]
movss dword [rbp + 0x248], xmm0
movss xmm1, dword [rbp + 0x7d]
movss dword [rbp + 0x24c], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x248]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0x91]
movss dword [rbp + 0x250], xmm0
movss xmm1, dword [rbp + 0x95]
movss dword [rbp + 0x254], xmm1
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
lea rdx, [rbp + 0x250]
mov rcx, rdi
call fcn.180026090
movss xmm0, dword [rbp + 0xa1]
movss dword [rbp + 0x258], xmm0
movss xmm1, dword [rbp + 0xa5]
movss dword [rbp + 0x25c], xmm1
lea rdx, [rbp + 0x258]
mov dword [rsp + 0x20], r13d
mov r9d, 0xffff9966
movaps xmm2, xmm15
mov rcx, rdi
call fcn.180026090
cmp byte [0x18017e474], 0
je 0x180064d17
cmp byte [rbp + 0x6e0], 0
je 0x180064d17
cmp byte [rbp + 0x6e2], 0
je 0x180064d17
movss xmm0, dword [0x18017d70a]
comiss xmm0, xmm14
jbe 0x180064d17
cmp qword [rbp + 0x680], 0x16dd
je 0x180064d17
mov qword [rbp + 0x170], 0
movss xmm9, dword [0x18017e554]
movss xmm10, dword [0x18017e550]
movss xmm7, dword [rbp + 0x6f6]
movss xmm6, dword [rbp + 0x6fa]
movss xmm8, dword [rbp + 0x6fe]
movaps xmm0, xmm7
unpcklps xmm0, xmm6
movsd qword [rbp + 0x410], xmm0
movss dword [rbp + 0x418], xmm8
movaps xmm0, xmm9
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rbp + 0x170]
lea rdx, [rbp + 0x410]
call fcn.18004adf0
test al, al
je 0x180064d30
mov dword [rsp + 0x20], 0x96
cmp byte [rbp + 0x6e1], 0
je 0x180064cd6
mov edx, 0xa0
lea r9d, [rdx + 0x5f]
lea r8d, [rdx + 0x3a]
lea rcx, [rbp + 0x1ac]
call fcn.18004ad40
mulss xmm10, xmm13
mulss xmm9, xmm13
unpcklps xmm9, xmm10
movq rcx, xmm9
mov rdx, qword [rbp + 0x170]
mov r8d, dword [rax]
mov r9d, 2
call fcn.18004cc50
movss xmm8, dword [rbp + 0x6fe]
movss dword [rbp + 0x6fe], xmm8
movss xmm6, dword [rbp + 0x6fa]
movss xmm7, dword [rbp + 0x6f6]
movaps xmm0, xmm7
unpcklps xmm0, xmm6
movsd qword [rbp + 0x6f6], xmm0
jmp 0x180064d30
mov edx, 0xcc
mov r9d, 0x66
mov r8d, r9d
lea rcx, [rbp + 0x1b8]
call fcn.18004ad40
movss xmm1, dword [0x18017e550]
mulss xmm1, xmm13
movss xmm0, dword [0x18017e554]
mulss xmm0, xmm13
unpcklps xmm0, xmm1
movq rcx, xmm0
jmp 0x180064c8f
movss xmm8, dword [rbp + 0x6fe]
movss xmm6, dword [rbp + 0x6fa]
movss xmm7, dword [rbp + 0x6f6]
cmp byte [0x18017e42a], 0
je 0x180064ee3
cmp byte [rbp + 0x6e0], 0
je 0x180064ee3
cmp byte [rbp + 0x6e2], 0
je 0x180064ee3
movss xmm0, dword [0x18017d70a]
comiss xmm0, xmm14
jbe 0x180064ee3
cmp qword [rbp + 0x680], 0x16dd
je 0x180064ee3
mov qword [rbp + 0x168], 0
mov dword [rbp + 0x264], 0
movss xmm2, dword [0x18017e550]
movaps xmm1, xmm6
addss xmm1, dword [0x1800c62c0]
movaps xmm0, xmm7
unpcklps xmm0, xmm1
movsd qword [rbp + 0x420], xmm0
movss dword [rbp + 0x428], xmm8
movss xmm0, dword [0x18017e554]
unpcklps xmm0, xmm2
movq r9, xmm0
lea r8, [rbp + 0x168]
lea rdx, [rbp + 0x420]
call fcn.18004adf0
test al, al
je 0x18006320c
movss xmm1, dword [0x18017e550]
subss xmm6, dword [0x1800c63b8]
movaps xmm0, xmm7
unpcklps xmm0, xmm6
movsd qword [rbp + 0x430], xmm0
movss dword [rbp + 0x438], xmm8
movss xmm0, dword [0x18017e554]
unpcklps xmm0, xmm1
movq r9, xmm0
lea r8, [rbp + 0x260]
lea rdx, [rbp + 0x430]
call fcn.18004adf0
test al, al
jne 0x180064e43
lea rcx, [rbp + 0x610]
call fcn.18004ffd0
jmp 0x180066025
movss xmm8, dword [rbp + 0x16c]
movaps xmm7, xmm8
subss xmm7, dword [rbp + 0x264]
andps xmm7, xmmword [0x1800c6800]
cvtps2pd xmm0, xmm7
mulsd xmm0, qword [0x1800c63d0]
cvtpd2ps xmm6, xmm0
lea rcx, [0x1800d01c0]
call fcn.180003fb0
mov dword [rbp + 0x980], eax
movaps xmm0, xmm7
addss xmm0, dword [0x1800c6484]
cvttss2si r9d, xmm0
movaps xmm1, xmm6
addss xmm1, xmm15
cvttss2si r8d, xmm1
divss xmm7, xmm11
subss xmm8, xmm7
subss xmm8, dword [0x1800c6364]
cvttss2si edx, xmm8
mulss xmm6, xmm13
movss xmm0, dword [rbp + 0x168]
subss xmm0, xmm6
subss xmm0, dword [0x1800c6364]
cvttss2si ecx, xmm0
lea rax, [rbp + 0x980]
mov qword [rsp + 0x20], rax
call fcn.18004c560
cmp byte [0x18017e3ff], 0
je 0x180065878
cmp byte [rbp + 0x6e0], 0
je 0x180065878
cmp byte [rbp + 0x6e2], 0
je 0x180065878
movss xmm0, dword [0x18017d70a]
comiss xmm0, xmm14
jbe 0x180065878
cmp qword [rbp + 0x680], 0x16dd
je 0x180065878
mov qword [rbp + 0x1c0], 0
mov dword [rbp + 0x1c8], 0
mov qword [rbp + 0x1d0], 0
mov dword [rbp + 0x1d8], 0
mov qword [rbp + 0x1e0], 0
mov dword [rbp + 0x1e8], 0
mov qword [rbp + 0x40], 0
mov dword [rbp + 0x48], 0
mov qword [rbp + 0x30], 0
mov dword [rbp + 0x38], 0
mov qword [rbp + 0x20], 0
mov dword [rbp + 0x28], 0
mov qword [rbp + 0x10], 0
mov dword [rbp + 0x18], 0
mov qword [rbp - 0x50], 0
mov dword [rbp - 0x48], 0
mov qword [rbp + 0x148], 0
mov qword [rbp + 0x150], 0
mov qword [rbp + 0x138], 0
mov qword [rbp + 0x140], 0
mov qword [rbp + 0x130], 0
mov qword [rbp + 0x128], 0
mov qword [rbp + 0x120], 0
mov qword [rbp - 0x60], 0
lea rax, [rbp - 0x50]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x10]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x30]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x40]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x1e0]
lea r8, [rbp + 0x1d0]
lea rdx, [rbp + 0x1c0]
lea rcx, [rbp + 0x610]
call fcn.18004dd80
movss xmm6, dword [0x18017e554]
movss xmm7, dword [0x18017e550]
movsd xmm0, qword [rbp + 0x1c0]
movsd qword [rbp + 0x440], xmm0
mov eax, dword [rbp + 0x1c8]
mov dword [rbp + 0x448], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x148]
lea rdx, [rbp + 0x440]
call fcn.18004adf0
test al, al
jne 0x1800650f3
mov rdx, qword [rbp + 0x6b2]
cmp rdx, 0xf
jbe 0x180066025
inc rdx
mov rcx, qword [rbp + 0x69a]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180066020
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180066020
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
movsd xmm0, qword [rbp + 0x1d0]
movsd qword [rbp + 0x450], xmm0
mov eax, dword [rbp + 0x1d8]
mov dword [rbp + 0x458], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x150]
lea rdx, [rbp + 0x450]
call fcn.18004adf0
test al, al
jne 0x180065142
lea rcx, [rbp + 0x610]
call fcn.18004ffd0
jmp 0x180066025
movsd xmm0, qword [rbp + 0x1e0]
movsd qword [rbp + 0x460], xmm0
mov eax, dword [rbp + 0x1e8]
mov dword [rbp + 0x468], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x138]
lea rdx, [rbp + 0x460]
call fcn.18004adf0
test al, al
jne 0x180065191
lea rcx, [rbp + 0x610]
call fcn.18004ffd0
jmp 0x180066025
movsd xmm0, qword [rbp + 0x40]
movsd qword [rbp + 0x470], xmm0
mov eax, dword [rbp + 0x48]
mov dword [rbp + 0x478], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x140]
lea rdx, [rbp + 0x470]
call fcn.18004adf0
test al, al
jne 0x1800651da
lea rcx, [rbp + 0x610]
call fcn.18004ffd0
jmp 0x180066025
movsd xmm0, qword [rbp + 0x30]
movsd qword [rbp + 0x480], xmm0
mov eax, dword [rbp + 0x38]
mov dword [rbp + 0x488], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x130]
lea rdx, [rbp + 0x480]
call fcn.18004adf0
test al, al
jne 0x180065223
lea rcx, [rbp + 0x610]
call fcn.18004ffd0
jmp 0x180066025
movsd xmm0, qword [rbp + 0x20]
movsd qword [rbp + 0x490], xmm0
mov eax, dword [rbp + 0x28]
mov dword [rbp + 0x498], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x128]
lea rdx, [rbp + 0x490]
call fcn.18004adf0
test al, al
jne 0x18006526c
lea rcx, [rbp + 0x610]
call fcn.18004ffd0
jmp 0x180066025
movsd xmm0, qword [rbp + 0x10]
movsd qword [rbp + 0x520], xmm0
mov eax, dword [rbp + 0x18]
mov dword [rbp + 0x528], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x120]
lea rdx, [rbp + 0x520]
call fcn.18004adf0
test al, al
jne 0x1800652b5
lea rcx, [rbp + 0x610]
call fcn.18004ffd0
jmp 0x180066025
movsd xmm0, qword [rbp - 0x50]
movsd qword [rbp + 0x4b0], xmm0
mov eax, dword [rbp - 0x48]
mov dword [rbp + 0x4b8], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp - 0x60]
lea rdx, [rbp + 0x4b0]
call fcn.18004adf0
test al, al
jne 0x1800652fb
lea rcx, [rbp + 0x610]
call fcn.18004ffd0
jmp 0x180066025
mov dword [rsp + 0x20], 0x96
cmp byte [rbp + 0x6e1], 0
je 0x1800655a8
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x1a8]
call fcn.18004ad40
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm9, qword [rbp + 0x150]
movq rdx, xmm9
movsd xmm6, qword [rbp + 0x148]
movq rcx, xmm6
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x1a4]
call fcn.18004ad40
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm10, qword [rbp + 0x140]
movq rdx, xmm10
movq rcx, xmm9
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x1a0]
call fcn.18004ad40
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm8, qword [rbp + 0x138]
movq rdx, xmm8
movq rcx, xmm10
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x19c]
call fcn.18004ad40
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm8
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x198]
call fcn.18004ad40
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm11, qword [rbp + 0x130]
movq rdx, xmm11
movq rcx, xmm6
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x194]
call fcn.18004ad40
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm7, qword [rbp + 0x128]
movq rdx, xmm7
movq rcx, xmm9
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x190]
call fcn.18004ad40
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm9, qword [rbp + 0x120]
movq rdx, xmm9
movq rcx, xmm8
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x18c]
call fcn.18004ad40
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm6, qword [rbp - 0x60]
movq rdx, xmm6
movq rcx, xmm10
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x188]
call fcn.18004ad40
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movq rdx, xmm7
movq rcx, xmm11
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x508]
call fcn.18004ad40
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm7
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x50c]
call fcn.18004ad40
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movq rdx, xmm9
movq rcx, xmm6
call fcn.18004cc50
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x510]
jmp 0x180065853
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x530]
call fcn.18004ad40
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm9, qword [rbp + 0x150]
movq rdx, xmm9
movsd xmm6, qword [rbp + 0x148]
movq rcx, xmm6
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x534]
call fcn.18004ad40
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm10, qword [rbp + 0x140]
movq rdx, xmm10
movq rcx, xmm9
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x390]
call fcn.18004ad40
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm8, qword [rbp + 0x138]
movq rdx, xmm8
movq rcx, xmm10
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x500]
call fcn.18004ad40
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm8
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x394]
call fcn.18004ad40
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm11, qword [rbp + 0x130]
movq rdx, xmm11
movq rcx, xmm6
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x398]
call fcn.18004ad40
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm7, qword [rbp + 0x128]
movq rdx, xmm7
movq rcx, xmm9
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x39c]
call fcn.18004ad40
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm9, qword [rbp + 0x120]
movq rdx, xmm9
movq rcx, xmm8
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x3a0]
call fcn.18004ad40
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm6, qword [rbp - 0x60]
movq rdx, xmm6
movq rcx, xmm10
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x3a4]
call fcn.18004ad40
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movq rdx, xmm7
movq rcx, xmm11
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x3a8]
call fcn.18004ad40
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm7
call fcn.18004cc50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x3ac]
call fcn.18004ad40
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movq rdx, xmm9
movq rcx, xmm6
call fcn.18004cc50
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x3b0]
mov dword [rsp + 0x20], 0x96
call fcn.18004ad40
mov r9d, 1
mov r8d, dword [rax]
movq rdx, xmm11
movq rcx, xmm9
call fcn.18004cc50
cmp byte [0x1800d017e], 0
je 0x180065d4a
cmp byte [rbp + 0x6e0], 0
je 0x180065d4a
cmp byte [rbp + 0x6e2], 0
je 0x180065d4a
movss xmm0, dword [0x18017d70a]
comiss xmm0, xmm14
jbe 0x180065d4a
cmp qword [rbp + 0x680], 0x16dd
je 0x180065d4a
movsd xmm6, qword [rbp + 0x6f6]
mov ebx, dword [rbp + 0x6fe]
mov qword [rbp], 0
mov dword [rbp + 8], 0
mov qword [rbp - 0x10], 0
mov dword [rbp - 8], 0
mov qword [rbp - 0x20], 0
mov dword [rbp - 0x18], 0
mov qword [rbp - 0x30], 0
mov dword [rbp - 0x28], 0
mov qword [rbp - 0x40], 0
mov dword [rbp - 0x38], 0
mov qword [rbp - 0x80], 0
mov qword [rsp + 0x78], 0
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x70], 0
mov qword [rbp - 0x78], 0
mov qword [rsp + 0x58], 0
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x20]
lea r8, [rbp - 0x10]
lea rdx, [rbp]
lea rcx, [rbp + 0x610]
call fcn.18004ec30
movss xmm7, dword [0x18017e554]
movss xmm8, dword [0x18017e550]
movsd qword [rbp + 0x4c0], xmm6
mov dword [rbp + 0x4c8], ebx
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rbp - 0x80]
lea rdx, [rbp + 0x4c0]
call fcn.18004adf0
test al, al
je 0x180065fe4
movsd xmm0, qword [rbp]
movsd qword [rbp + 0x4d0], xmm0
mov eax, dword [rbp + 8]
mov dword [rbp + 0x4d8], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rsp + 0x78]
lea rdx, [rbp + 0x4d0]
call fcn.18004adf0
test al, al
jne 0x180065a04
lea rcx, [rbp + 0x610]
call fcn.18004ffd0
jmp 0x180066025
movsd xmm0, qword [rbp - 0x10]
movsd qword [rbp + 0x4e0], xmm0
mov eax, dword [rbp - 8]
mov dword [rbp + 0x4e8], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x4e0]
call fcn.18004adf0
test al, al
jne 0x180065a4c
lea rcx, [rbp + 0x610]
call fcn.18004ffd0
jmp 0x180066025
movsd xmm0, qword [rbp - 0x20]
movsd qword [rbp + 0x4f0], xmm0
mov eax, dword [rbp - 0x18]
mov dword [rbp + 0x4f8], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rsp + 0x70]
lea rdx, [rbp + 0x4f0]
call fcn.18004adf0
test al, al
jne 0x180065a94
lea rcx, [rbp + 0x610]
call fcn.18004ffd0
jmp 0x180066025
movsd xmm0, qword [rbp - 0x30]
movsd qword [rbp + 0x320], xmm0
mov eax, dword [rbp - 0x28]
mov dword [rbp + 0x328], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rbp - 0x78]
lea rdx, [rbp + 0x320]
call fcn.18004adf0
test al, al
jne 0x180065adb
lea rcx, [rbp + 0x610]
call fcn.18004ffd0
jmp 0x180066025
movsd xmm0, qword [rbp - 0x40]
movsd qword [rbp + 0x330], xmm0
mov eax, dword [rbp - 0x38]
mov dword [rbp + 0x338], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rsp + 0x58]
lea rdx, [rbp + 0x330]
call fcn.18004adf0
test al, al
jne 0x180065b23
lea rcx, [rbp + 0x610]
call fcn.18004ffd0
jmp 0x180066025
mov dword [rsp + 0x20], 0xff
cmp byte [rbp + 0x6e1], 0
je 0x180065c2f
xor r9d, r9d
xor r8d, r8d
mov edx, 0xff
lea rcx, [rbp + 0x3b4]
call fcn.18004ad40
lea r9d, [r8 + 3]
mov r8d, dword [rax]
movsd xmm6, qword [rsp + 0x78]
movq rdx, xmm6
mov rcx, qword [rbp - 0x80]
call fcn.18004cc50
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, 0x66
lea r8d, [r9 - 0x33]
lea rcx, [rbp + 0x3b8]
call fcn.18004ad40
lea r9d, [r8 - 0x30]
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x60]
movq rcx, xmm6
call fcn.18004cc50
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, 0x66
lea r8d, [r9 - 0x33]
lea rcx, [rbp + 0x3bc]
call fcn.18004ad40
lea r9d, [r8 - 0x30]
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x70]
movq rcx, xmm6
call fcn.18004cc50
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, 0x66
lea r8d, [r9 - 0x33]
lea rcx, [rbp + 0x3c0]
call fcn.18004ad40
lea r9d, [r8 - 0x30]
mov r8d, dword [rax]
mov rdx, qword [rbp - 0x78]
movq rcx, xmm6
call fcn.18004cc50
mov edx, 0xff
mov r9d, 0x66
lea r8d, [r9 - 0x33]
lea rcx, [rbp + 0x3c4]
jmp 0x180065d25
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x3c8]
call fcn.18004ad40
lea r9d, [rdx - 0x63]
mov r8d, dword [rax]
movsd xmm6, qword [rsp + 0x78]
movq rdx, xmm6
mov rcx, qword [rbp - 0x80]
call fcn.18004cc50
mov dword [rsp + 0x20], 0xff
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x3cc]
call fcn.18004ad40
lea r9d, [rdx - 0x63]
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x60]
movq rcx, xmm6
call fcn.18004cc50
mov dword [rsp + 0x20], 0xff
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x3d0]
call fcn.18004ad40
lea r9d, [rdx - 0x63]
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x70]
movq rcx, xmm6
call fcn.18004cc50
mov dword [rsp + 0x20], 0xff
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x3d4]
call fcn.18004ad40
lea r9d, [rdx - 0x63]
mov r8d, dword [rax]
mov rdx, qword [rbp - 0x78]
movq rcx, xmm6
call fcn.18004cc50
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x4a0]
mov dword [rsp + 0x20], 0xff
call fcn.18004ad40
mov r9d, 3
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x58]
movq rcx, xmm6
call fcn.18004cc50
cmp byte [0x18017e44a], 0
je 0x180065fe4
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x180065d9b
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x180065d9b
mov ecx, 6
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x180065d9b
mov ecx, 5
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180065fe4
mov qword [rsp + 0x68], 0
movss xmm1, dword [0x18017e550]
movsd xmm0, qword [rbp + 0x732]
movsd qword [rbp + 0x340], xmm0
mov eax, dword [rbp + 0x73a]
mov dword [rbp + 0x348], eax
movss xmm0, dword [0x18017e554]
unpcklps xmm0, xmm1
movq r9, xmm0
lea r8, [rsp + 0x68]
lea rdx, [rbp + 0x340]
call fcn.18004adf0
test al, al
je 0x180065fe4
mov eax, dword [0x18017e410]
test eax, eax
jne 0x180065efa
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x66666667
imul r8d
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
shl ecx, 2
sub r8d, ecx
mov dword [0x18017e408], r8d
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x66666667
imul r8d
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
add ecx, ecx
sub r8d, ecx
mov dword [0x18017e3e4], r8d
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x88888889
imul r8d
add edx, r8d
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x1e
sub r8d, ecx
movd xmm0, r8d
cvtdq2ps xmm0, xmm0
movss dword [0x18017e3f0], xmm0
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x66666667
imul r8d
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
add ecx, ecx
sub r8d, ecx
mov dword [0x18017e458], r8d
cmp r8d, 5
jl 0x180065ebe
neg dword [0x18017e408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x66666667
imul r8d
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
add ecx, ecx
sub r8d, ecx
mov dword [0x18017e458], r8d
mov eax, dword [0x18017e410]
cmp r8d, 5
jl 0x180065efa
neg dword [0x18017e3e4]
inc eax
mov dword [0x18017e410], eax
cmp eax, 0xe
jne 0x180065f0e
mov dword [0x18017e410], r13d
cmp byte [rbp + 0x6e0], 0
je 0x180065fe4
cmp byte [rbp + 0x6e1], 0
je 0x180065fe4
cmp qword [0x18017d660], 0
je 0x180065fe4
cmp byte [rbp + 0x6e2], 0
je 0x180065fe4
movd xmm1, dword [0x18017e3e4]
cvtdq2ps xmm1, xmm1
addss xmm1, dword [rsp + 0x6c]
movd xmm0, dword [0x18017e408]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [rsp + 0x68]
movss dword [rbp + 0x748], xmm0
movss dword [rbp + 0x74c], xmm1
movss xmm2, dword [0x18017e3f0]
comiss xmm13, xmm2
ja 0x180065fe4
subss xmm2, xmm13
mov dword [rsp + 0x28], 0x1ff
movss xmm0, dword [0x1800c645c]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm14
lea rdx, [rbp + 0x748]
mov rcx, rdi
call fcn.180024ec0
movss xmm0, dword [0x1800c6414]
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 1
mov r9d, 0xffffffff
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.180023480
mov dword [rdi + 0x78], r13d
mov rdx, qword [rbp + 0x6b2]
cmp rdx, 0xf
jbe 0x180066025
inc rdx
mov rcx, qword [rbp + 0x69a]
cmp rdx, 0x1000
mov rax, rcx
jb 0x180066020
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180066190
call fcn.18008963c
movss xmm8, dword [0x1800c651c]
movss xmm12, dword [0x1800c653c]
movsd xmm9, qword [0x1800c63f8]
add rsi, 0x12e
cmp rsi, r15
jne 0x180062943
movzx r8d, byte [0x18017e40c]
test r8b, r8b
je 0x180066062
call fcn.180060050
cmp byte [0x18017e463], 0
je 0x180066257
movss xmm0, dword [0x1800d0188]
movss dword [rbp - 0x70], xmm0
movss xmm1, dword [0x1800d018c]
movss dword [rbp - 0x6c], xmm1
movss xmm0, dword [0x1800d0190]
movss dword [rbp - 0x68], xmm0
movss xmm1, dword [0x1800d0194]
mov r8, qword [0x18017df00]
mulss xmm1, dword [r8 + 0x37d0]
movss dword [rbp - 0x64], xmm1
lea rcx, [rbp - 0x70]
call fcn.180003a40
mov ebx, eax
movss xmm8, dword [0x1800c645c]
test eax, 0xff000000
je 0x180066197
movss xmm2, dword [0x1800d01d4]
comiss xmm13, xmm2
ja 0x180066197
subss xmm2, xmm13
mov dword [rsp + 0x28], 0x1ff
movss dword [rsp + 0x20], xmm8
xorps xmm3, xmm3
lea rdx, [rbp + 0x1b0]
mov rcx, rdi
call fcn.180024ec0
movss xmm7, dword [0x1800c6364]
movss dword [rsp + 0x28], xmm7
mov dword [rsp + 0x20], 1
mov r9d, ebx
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.180023480
mov dword [rdi + 0x78], r13d
mov r8, qword [0x18017df00]
jmp 0x18006619f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
movss xmm7, dword [0x1800c6364]
cmp byte [0x18017e43e], 0
je 0x180066257
movss xmm0, dword [0x1800d0210]
movss dword [rbp - 0x70], xmm0
movss xmm1, dword [0x1800d0214]
movss dword [rbp - 0x6c], xmm1
movss xmm0, dword [0x1800d0218]
movss dword [rbp - 0x68], xmm0
movss xmm1, dword [0x1800d021c]
mulss xmm1, dword [r8 + 0x37d0]
movss dword [rbp - 0x64], xmm1
lea rcx, [rbp - 0x70]
call fcn.180003a40
mov ebx, eax
test eax, 0xff000000
je 0x180066257
movss xmm2, dword [0x1800d02b8]
comiss xmm13, xmm2
ja 0x180066257
subss xmm2, xmm13
mov dword [rsp + 0x28], 0x1ff
movss dword [rsp + 0x20], xmm8
xorps xmm3, xmm3
lea rdx, [rbp + 0x1b0]
mov rcx, rdi
call fcn.180024ec0
movss dword [rsp + 0x28], xmm7
mov dword [rsp + 0x20], 1
mov r9d, ebx
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.180023480
mov dword [rdi + 0x78], r13d
mov rcx, qword [rbp + 0x998]
xor rcx, rsp
call fcn.1800893d0
lea r11, [rsp + 0xb40]
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.18004a6e0
nop
int3