Function at 0x180047d80
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 - 0xad8]
sub rsp, 0xbb0
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 [0x1800aa040]
xor rax, rsp
mov qword [rbp + 0xa00], rax
xor ebx, ebx
mov rax, qword [0x180157ed0]
mov rax, qword [rax + 0x48a8]
lea r8, str.Foreground
lea edx, [rbx + 1]
mov rcx, qword [rax]
call fcn.1800061c0
mov rdi, rax
movss xmm7, dword [0x180158500]
movaps xmm1, xmm7
movss xmm13, dword [0x1800a1688]
mulss xmm1, xmm13
movss xmm6, dword [0x180158504]
movaps xmm0, xmm6
mulss xmm0, xmm13
movss dword [rbp + 0x198], xmm0
movss dword [rbp + 0x19c], xmm1
mov r13d, 0xff
mov r12d, dword [0x1800aa088]
cmp byte [0x1801583e9], bl
je 0x1800487b0
mov rbx, qword [0x180158850]
mov rsi, qword [0x180158858]
cmp rbx, rsi
je 0x1800487ae
movabs r14, 0x400000000002533
nop
movsd xmm0, qword [rbx + 0x10]
movsd qword [rbp + 0x568], xmm0
cmp qword [rbx], r14
je 0x1800487a1
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x68], 0
mov qword [rbp - 0x78], 0
mov qword [rsp + 0x78], 0
mov qword [rbp - 0x80], 0
mov qword [rbp - 0x68], 0
mov qword [rbp - 0x70], 0
mov qword [rbp + 0x7c0], 0
movss xmm8, dword [rbp + 0x568]
movss dword [rbp - 0x10], xmm8
movss xmm9, dword [rbp + 0x56c]
movaps xmm0, xmm9
addss xmm0, xmm13
movss dword [rbp - 0xc], xmm0
movss xmm10, dword [rbx + 0x18]
movss dword [rbp - 8], xmm10
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x7c0]
lea rdx, [rbp - 0x10]
call fcn.18003b590
test al, al
je 0x1800487a1
movaps xmm11, xmm8
subss xmm11, xmm13
movaps xmm12, xmm10
subss xmm12, xmm13
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, [rsp + 0x60]
lea rdx, [rbp - 0x20]
call fcn.18003b590
test al, al
je 0x1800487a1
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, [rsp + 0x60]
lea rdx, [rbp - 0x30]
call fcn.18003b590
test al, al
je 0x1800487a1
movaps xmm15, xmm10
addss xmm15, xmm13
movss dword [rbp - 0x40], xmm11
movss dword [rbp - 0x3c], xmm9
movss dword [rbp - 0x38], xmm15
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rsp + 0x70]
lea rdx, [rbp - 0x40]
call fcn.18003b590
test al, al
je 0x1800487a1
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 + 0x68]
lea rdx, [rbp]
call fcn.18003b590
test al, al
je 0x1800487a1
movss dword [rbp + 0x10], xmm14
movss dword [rbp + 0x14], xmm9
movss dword [rbp + 0x18], xmm15
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp - 0x78]
lea rdx, [rbp + 0x10]
call fcn.18003b590
test al, al
je 0x1800487a1
movaps xmm13, xmm9
addss xmm13, dword [0x1800a16c8]
movss dword [rbp + 0x20], xmm11
movss dword [rbp + 0x24], xmm13
movss dword [rbp + 0x28], xmm12
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rsp + 0x78]
lea rdx, [rbp + 0x20]
call fcn.18003b590
test al, al
je 0x180048798
movss dword [rbp + 0x30], xmm11
movss dword [rbp + 0x34], xmm13
movss dword [rbp + 0x38], xmm15
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp - 0x80]
lea rdx, [rbp + 0x30]
call fcn.18003b590
test al, al
je 0x180048798
movss dword [rbp + 0x40], xmm14
movss dword [rbp + 0x44], xmm13
movss dword [rbp + 0x48], xmm12
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp - 0x68]
lea rdx, [rbp + 0x40]
call fcn.18003b590
test al, al
je 0x180048798
movss dword [rbp + 0x50], xmm14
movss dword [rbp + 0x54], xmm13
movss dword [rbp + 0x58], xmm15
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp - 0x70]
lea rdx, [rbp + 0x50]
call fcn.18003b590
test al, al
je 0x180048798
lea rdx, [rbp + 0x2f0]
call fcn.18003b500
movss xmm7, dword [rax + 8]
lea rdx, [rbp + 0x300]
call fcn.18003b500
movss xmm6, dword [rax + 4]
lea rdx, [rbp + 0x310]
call fcn.18003b500
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 0x1800481a8
sqrtss xmm8, xmm8
jmp 0x1800481b5
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm8, xmm0
mov rax, qword [0x1800a1060]
mov qword [rbp + 0x780], rax
cmp byte [0x1800a1067], 0
je 0x180048320
cmp r12d, 2
jl 0x1800482d8
movdqa xmm4, xmmword [0x1800a1ac0]
movdqa xmm2, xmmword [0x1800a1950]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800a1990]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800a19d0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.7777777777777777]
movd xmm0, dword [rbp + 0x780]
xorps xmm2, xmm0
movd dword [rbp + 0x780], xmm2
movdqa xmm3, xmmword [0x1800a1970]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800a1990]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800a19d0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.7777777777777777]
movd xmm0, dword [rbp + 0x784]
xorps xmm2, xmm0
movd dword [rbp + 0x784], xmm2
jmp 0x180048320
lea r9, [rbp + 0x780]
xor r8d, r8d
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x37
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x1800482f0
movss xmm10, dword [0x1800a16c8]
movss dword [rsp + 0x20], xmm10
movss xmm14, dword [0x1800a166c]
movaps xmm3, xmm14
xorps xmm2, xmm2
movaps xmm1, xmm10
lea rcx, [rbp + 0x9e0]
call fcn.180001550
mov rcx, rax
call fcn.180003940
movss xmm7, dword [rbp + 0x7c4]
movaps xmm0, xmm7
movss xmm11, dword [0x1800a17a8]
subss xmm0, xmm11
movss xmm6, dword [rbp + 0x7c0]
subss xmm6, dword [0x1800a178c]
movss dword [rbp - 0x48], xmm6
movss dword [rbp - 0x44], xmm0
movss xmm15, dword [0x1800a17c4]
movaps xmm3, xmm15
lea r8, [rbp + 0x780]
mov edx, eax
lea rcx, [rbp - 0x48]
call fcn.18003c840
movzx eax, word [0x1800a1038]
mov word [rsp + 0x50], ax
cmp byte [0x1800a1039], 0
je 0x1800483c9
mov byte [rsp + 0x50], 0x5d
xor byte [rsp + 0x51], 0x38
cvttss2si edx, xmm8
lea rcx, [rbp + 0x830]
call fcn.18003aef0
nop
movsd xmm0, qword [str.lpio]
movsd qword [rbp + 0x788], xmm0
movzx ecx, byte [0x1800a10b8]
mov byte [rbp + 0x788], 0x5b
xor byte [rbp + 0x789], 0x38
xor byte [rbp + 0x78a], 0x39
xor byte [rbp + 0x78b], 0x3a
xor byte [rbp + 0x78c], 0x3b
xor byte [rbp + 0x78d], 0x3c
xor byte [rbp + 0x78e], 0x3d
xor byte [rbp + 0x78f], 0x3e
xor cl, 0x3f
mov byte [rbp + 0x790], cl
mov r8, rax
lea rdx, [rbp + 0x788]
lea rcx, [rbp + 0x850]
call fcn.18005f280
nop
lea r8, [rsp + 0x50]
mov rdx, rax
lea rcx, [rbp + 0x8b0]
call fcn.18005f3b0
nop
mov rcx, rax
call fcn.18005e270
mov r8, rax
movss dword [rsp + 0x20], xmm10
movaps xmm3, xmm14
xorps xmm2, xmm2
movaps xmm1, xmm10
lea rcx, [rbp - 0x60]
call fcn.180001550
mov rcx, rax
call fcn.180003940
addss xmm7, xmm11
movss dword [rbp - 0x50], xmm6
movss dword [rbp - 0x4c], xmm7
movaps xmm3, xmm15
mov edx, eax
lea rcx, [rbp - 0x50]
call fcn.18003c840
nop
lea rcx, [rbp + 0x8b0]
call fcn.18005e3b0
nop
lea rcx, [rbp + 0x850]
call fcn.18005e3b0
nop
lea rcx, [rbp + 0x830]
call fcn.18005e3b0
mov dword [rsp + 0x20], 0x64
mov r9d, r13d
mov edx, 0x66
lea r8d, [rdx + 0x33]
lea rcx, [rsp + 0x58]
call fcn.18003b4e0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm13, qword [rsp + 0x70]
movq rdx, xmm13
movsd xmm10, qword [rsp + 0x60]
movq rcx, xmm10
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x64
mov r9d, r13d
mov edx, 0x66
lea r8d, [rdx + 0x33]
lea rcx, [rsp + 0x54]
call fcn.18003b4e0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm12, qword [rsp + 0x68]
movq rdx, xmm12
movq rcx, xmm10
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x64
mov r9d, r13d
mov edx, 0x66
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x1d8]
call fcn.18003b4e0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm11, qword [rbp - 0x78]
movq rdx, xmm11
movq rcx, xmm13
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x64
mov r9d, r13d
mov edx, 0x66
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x1d4]
call fcn.18003b4e0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm11
movq rcx, xmm12
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x64
mov r9d, r13d
mov edx, 0x66
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x1d0]
call fcn.18003b4e0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm9, qword [rbp - 0x80]
movq rdx, xmm9
movsd xmm6, qword [rsp + 0x78]
movq rcx, xmm6
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x64
mov r9d, r13d
mov edx, 0x66
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x190]
call fcn.18003b4e0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm8, qword [rbp - 0x68]
movq rdx, xmm8
movq rcx, xmm6
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x64
mov r9d, r13d
mov edx, 0x66
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x1cc]
call fcn.18003b4e0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm7, qword [rbp - 0x70]
movq rdx, xmm7
movq rcx, xmm9
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x64
mov r9d, r13d
mov edx, 0x66
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x1c8]
call fcn.18003b4e0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm7
movq rcx, xmm8
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x64
mov r9d, r13d
mov edx, 0x66
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x1a4]
call fcn.18003b4e0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm10
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x64
mov r9d, r13d
mov edx, 0x66
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x1a0]
call fcn.18003b4e0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm9
movq rcx, xmm13
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x64
mov r9d, r13d
mov edx, 0x66
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x194]
call fcn.18003b4e0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm8
movq rcx, xmm12
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x64
mov r9d, r13d
mov edx, 0x66
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x530]
call fcn.18003b4e0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm7
movq rcx, xmm11
call fcn.18003d3f0
movss xmm7, dword [0x180158500]
movss xmm6, dword [0x180158504]
movss xmm13, dword [0x1800a1688]
add rbx, 0x1c
cmp rbx, rsi
jne 0x180047e90
xor ebx, ebx
movzx r8d, byte [0x1801583c9]
cmp byte [0x180158417], 0
jne 0x180048809
cmp byte [0x1801583ec], 0
jne 0x180048809
test r8b, r8b
jne 0x180048809
cmp byte [0x1801583c8], r8b
jne 0x180048809
cmp byte [0x1801583e6], r8b
jne 0x180048809
cmp byte [0x180158419], r8b
jne 0x180048809
cmp byte [0x1801583ff], r8b
jne 0x180048809
cmp byte [0x1800aa16b], r8b
jne 0x180048809
cmp byte [0x1801583fd], r8b
je 0x18004bfb3
mov r15, qword [0x180158878]
mov rsi, qword [0x180158870]
mov rcx, r15
sub rcx, rsi
movabs rax, 0x6c80d901b2036407
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x18004bfa9
mov r14d, ebx
cmp rsi, r15
je 0x18004bfa9
movss xmm9, dword [0x1800a1844]
movsd xmm10, qword [0x1800a1750]
movss xmm12, dword [0x1800a185c]
mov rdx, rsi
lea rcx, [rbp + 0x650]
call fcn.180047af0
nop
cmp byte [0x1801583ff], 0
je 0x180048fe3
test r14d, r14d
jne 0x180048a4a
movss xmm1, dword [0x180158500]
subss xmm1, xmm12
movss xmm0, dword [0x180158504]
subss xmm0, xmm9
movss dword [rbp + 0x270], xmm0
movss dword [rbp + 0x274], xmm1
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movaps xmm2, xmm9
lea rdx, [rbp + 0x270]
mov rcx, rdi
call fcn.180023970
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.1800233a0
mov dword [rdi + 0x78], ebx
cmp byte [0x180158414], r14b
je 0x180048909
movss xmm0, dword [0x1800aa178]
jmp 0x180048920
mov rax, qword [0x180158868]
mov rdx, qword [rax + 0x21]
add rdx, 0x39ca0c8
call fcn.18005e800
mulss xmm0, xmm13
mulss xmm0, dword [0x1800a163c]
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
movaps xmm6, xmm0
mulss xmm6, xmm9
movaps xmm1, xmm6
mulss xmm1, xmm6
movss xmm0, dword [0x1800a1888]
subss xmm0, xmm1
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x18004895e
xorps xmm7, xmm7
sqrtss xmm7, xmm0
jmp 0x180048966
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm7, xmm0
movss xmm4, dword [0x180158500]
subss xmm4, xmm12
movaps xmm2, xmm4
subss xmm2, xmm6
movss xmm3, dword [0x180158504]
subss xmm3, xmm9
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.18003d3f0
movss xmm3, dword [0x180158500]
subss xmm3, xmm12
movaps xmm1, xmm3
subss xmm1, xmm6
movss xmm2, dword [0x180158504]
subss xmm2, xmm9
addss xmm7, xmm2
mov r8d, 0xff6699ff
mov r9d, 2
unpcklps xmm7, xmm1
movq rdx, xmm7
movaps xmm1, xmm2
unpcklps xmm1, xmm3
movq rcx, xmm1
call fcn.18003d3f0
movss xmm3, dword [0x180158500]
subss xmm3, xmm12
movaps xmm1, xmm3
subss xmm1, xmm9
movss xmm2, dword [0x180158504]
subss xmm2, xmm9
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.18003d3f0
mov r14d, 1
mov rax, qword [0x180157630]
cmp qword [rbp + 0x650], rax
jne 0x180048b17
movss xmm1, dword [0x180158500]
subss xmm1, xmm12
movss xmm0, dword [0x180158504]
subss xmm0, xmm9
movss dword [rbp + 0x220], xmm0
movss dword [rbp + 0x224], xmm1
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movss xmm2, dword [0x1800a1788]
lea rdx, [rbp + 0x220]
mov rcx, rdi
call fcn.180023970
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.1800233a0
mov dword [rdi + 0x78], ebx
mov rdx, qword [rbp + 0x6f2]
cmp rdx, 0xf
jbe 0x18004bf56
inc rdx
mov rcx, qword [rbp + 0x6da]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180048b0d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004916b
call fcn.1800656fc
jmp 0x18004bf56
xorps xmm15, xmm15
ucomiss xmm15, dword [rbp + 0x75a]
jp 0x180048b43
jne 0x180048b43
ucomiss xmm15, dword [rbp + 0x75e]
jp 0x180048b43
jne 0x180048b43
ucomiss xmm15, dword [rbp + 0x762]
jp 0x180048b43
je 0x180048fe7
movss xmm0, dword [rbp + 0x6fa]
comiss xmm0, xmm15
jbe 0x180048fe7
movss xmm0, dword [0x18015772e]
call fcn.18003b370
xor ecx, ecx
call fcn.18003b090
movaps xmm11, xmm3
movaps xmm12, xmm2
movaps xmm14, xmm1
movaps xmm8, xmm0
movaps xmmword [rbp + 0x9e0], xmm0
lea rdx, [rbp + 0x578]
call fcn.18003b500
movss xmm7, dword [rbp + 0x736]
subss xmm7, dword [rax]
lea rdx, [rbp + 0x584]
call fcn.18003b500
movss xmm6, dword [rbp + 0x73a]
subss xmm6, dword [rax + 4]
lea rdx, [rbp + 0x590]
call fcn.18003b500
movss xmm4, dword [rbp + 0x73e]
subss xmm4, dword [rax + 8]
cvtps2pd xmm0, xmm7
mulsd xmm0, xmm10
cvtpd2ps xmm3, xmm0
cvtps2pd xmm1, xmm6
mulsd xmm1, xmm10
cvtpd2ps xmm2, xmm1
cvtps2pd xmm0, xmm4
mulsd xmm0, xmm10
cvtpd2ps xmm5, xmm0
unpcklps xmm3, xmm2
xorps xmm2, xmm2
movsd xmm2, xmm3
movss dword [rbp + 0x7c8], xmm5
movlhps xmm2, xmm5
movaps xmm6, xmm2
shufps xmm6, xmm2, 0xaa
mulps xmm6, xmm12
movaps xmm0, xmm2
shufps xmm0, xmm2, 0x55
mulps xmm0, xmm14
addps xmm6, xmm11
addps xmm6, xmm0
shufps xmm2, xmm2, 0
mulps xmm2, xmm8
addps xmm6, xmm2
movaps xmm7, xmm6
shufps xmm7, xmm6, 0xaa
movaps xmm1, xmm7
mulss xmm1, xmm7
movsd qword [rbp + 0x7c0], xmm6
movaps xmm0, xmm6
mulss xmm0, xmm6
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x180048c5d
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x180048c65
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm0, xmm9
jbe 0x180048c7d
divss xmm6, xmm0
mulss xmm6, xmm9
divss xmm7, xmm0
mulss xmm7, xmm9
movss xmm10, dword [0x180158500]
subss xmm10, dword [0x1800a185c]
subss xmm10, xmm7
movss xmm9, dword [0x180158504]
subss xmm9, dword [0x1800a1844]
subss xmm9, xmm6
movss dword [rbp - 0x48], xmm9
movss dword [rbp - 0x44], xmm10
mov qword [rbp + 0x180], 0
mov dword [rbp + 0x188], 0
mov qword [rbp + 0x350], 0
mov dword [rbp + 0x358], 0
mov qword [rbp + 0x340], 0
mov dword [rbp + 0x348], 0
mov qword [rbp + 0x330], 0
mov dword [rbp + 0x338], 0
mov qword [rbp + 0x320], 0
mov dword [rbp + 0x328], 0
lea rax, [rbp + 0x320]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x330]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x340]
lea r8, [rbp + 0x350]
lea rdx, [rbp + 0x180]
lea rcx, [rbp + 0x650]
call fcn.18003ec50
movss xmm6, dword [rbp + 0x180]
movaps xmm8, xmm6
subss xmm8, dword [rbp + 0x736]
lea rdx, [rbp + 0x59c]
call fcn.18003b500
mulss xmm8, dword [0x1800a1788]
addss xmm8, xmm6
subss xmm8, dword [rax]
lea rdx, [rbp + 0x5a8]
call fcn.18003b500
movss xmm7, dword [rbp + 0x184]
subss xmm7, dword [rax + 4]
movss xmm0, dword [rbp + 0x188]
movaps xmm6, xmm0
subss xmm6, dword [rbp + 0x73e]
mulss xmm6, dword [0x1800a1788]
addss xmm6, xmm0
lea rdx, [rbp + 0x5b4]
call fcn.18003b500
subss xmm6, dword [rax + 8]
cvtps2pd xmm0, xmm8
movsd xmm4, qword [0x1800a1750]
mulsd xmm0, xmm4
cvtpd2ps xmm3, xmm0
cvtps2pd xmm1, xmm7
mulsd xmm1, xmm4
cvtpd2ps xmm2, xmm1
cvtps2pd xmm0, xmm6
mulsd xmm0, xmm4
cvtpd2ps xmm4, xmm0
unpcklps xmm3, xmm2
xorps xmm2, xmm2
movsd xmm2, xmm3
movss dword [rbp + 0x7c8], xmm4
movlhps xmm2, xmm4
movaps xmm6, xmm2
shufps xmm6, xmm2, 0xaa
mulps xmm6, xmm12
movaps xmm0, xmm2
shufps xmm0, xmm2, 0x55
mulps xmm0, xmm14
addps xmm6, xmm11
addps xmm6, xmm0
shufps xmm2, xmm2, 0
mulps xmm2, xmmword [rbp + 0x9e0]
addps xmm6, xmm2
movaps xmm7, xmm6
shufps xmm7, xmm6, 0xaa
movaps xmm1, xmm7
mulss xmm1, xmm7
movsd qword [rbp + 0x7c0], xmm6
movaps xmm0, xmm6
mulss xmm0, xmm6
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x180048e72
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x180048e7a
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss xmm14, dword [0x1800a1840]
comiss xmm0, xmm14
jbe 0x180048e9b
divss xmm6, xmm0
mulss xmm6, xmm14
divss xmm7, xmm0
mulss xmm7, xmm14
movss xmm8, dword [0x180158500]
movss xmm12, dword [0x1800a185c]
subss xmm8, xmm12
subss xmm8, xmm7
movss xmm7, dword [0x180158504]
movss xmm11, dword [0x1800a1844]
subss xmm7, xmm11
subss xmm7, xmm6
mov ebx, 0xff9900cc
cmp byte [rbp + 0x721], 0
mov eax, 0xff3300ff
cmovne ebx, eax
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movss xmm2, dword [0x1800a1778]
lea rdx, [rbp - 0x48]
mov rcx, rdi
cmp byte [rbp + 0x722], r9b
jne 0x180048f37
call fcn.180023970
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.1800233a0
xor ebx, ebx
mov dword [rdi + 0x78], ebx
jmp 0x180048fe7
call fcn.180023970
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.1800233a0
xor ebx, ebx
mov dword [rdi + 0x78], ebx
mov r8d, 0xffff
lea r9d, [rbx + 2]
movaps xmm0, xmm9
unpcklps xmm0, xmm10
movq rdx, xmm0
movaps xmm1, xmm7
unpcklps xmm1, xmm8
movq rcx, xmm1
call fcn.18003d3f0
cmp byte [0x1801583ef], bl
je 0x180048fe7
movss xmm2, dword [0x180158500]
movss xmm1, dword [0x180158504]
lea r9d, [rbx + 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 + 0x721], bl
je 0x180048fd6
mov r8d, 0xffdaa096
call fcn.18003d3f0
jmp 0x180048fe7
mov r8d, 0x6666cc96
call fcn.18003d3f0
jmp 0x180048fe7
xorps xmm15, xmm15
cmp byte [0x180158417], 0
je 0x180049f67
cmp byte [rbp + 0x720], 0
je 0x180049f67
cmp byte [rbp + 0x722], 0
je 0x180049f67
movss xmm0, dword [0x1801576da]
comiss xmm0, xmm15
jbe 0x180049f67
movss xmm9, dword [rbp + 0x736]
movss xmm8, dword [rbp + 0x73a]
movss xmm10, dword [rbp + 0x73e]
lea rdx, [rbp + 0x5c0]
call fcn.18003b500
movss xmm7, dword [rax + 8]
lea rdx, [rbp + 0x5cc]
call fcn.18003b500
movss xmm6, dword [rax + 4]
lea rdx, [rbp + 0x5d8]
call fcn.18003b500
movaps xmm1, xmm10
subss xmm1, xmm7
movaps xmm0, xmm8
subss xmm0, xmm6
movaps xmm2, xmm9
subss xmm2, dword [rax]
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm0
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x1800490af
xorps xmm11, xmm11
sqrtss xmm11, xmm2
movss dword [rsp + 0x58], xmm11
jmp 0x1800490bd
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss dword [rsp + 0x58], xmm0
mov qword [rbp + 0x160], 0
mov qword [rsp + 0x60], 0
movss xmm6, dword [0x180158504]
movss xmm7, dword [0x180158500]
movaps xmm1, xmm8
subss xmm1, dword [0x1800a16e0]
movaps xmm0, xmm9
unpcklps xmm0, xmm1
movsd qword [rbp + 0x410], xmm0
movss dword [rbp + 0x418], xmm10
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x160]
lea rdx, [rbp + 0x410]
call fcn.18003b590
test al, al
jne 0x180049172
mov rdx, qword [rbp + 0x6f2]
cmp rdx, 0xf
jbe 0x18004bf44
inc rdx
mov rcx, qword [rbp + 0x6da]
cmp rdx, 0x1000
mov rax, rcx
jb 0x18004bf3f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18004bf3f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
movss xmm14, dword [0x1800a16c8]
addss xmm8, xmm14
movaps xmm0, xmm9
unpcklps xmm0, xmm8
movsd qword [rbp + 0x420], xmm0
movss dword [rbp + 0x428], xmm10
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x420]
call fcn.18003b590
test al, al
je 0x180049127
movss xmm12, dword [rbp + 0x164]
movaps xmm6, xmm12
movss xmm7, dword [rsp + 0x64]
subss xmm6, xmm7
andps xmm6, xmmword [0x1800a1ad0]
cvtps2pd xmm0, xmm6
mulsd xmm0, qword [0x1800a1728]
cvtpd2ps xmm11, xmm0
movaps xmm1, xmm6
mulss xmm1, xmm13
mulss xmm1, xmm13
movss xmm0, dword [0x1800a17c4]
maxss xmm0, xmm1
movss xmm8, dword [0x1800a17d4]
minss xmm8, xmm0
movss xmm10, dword [rbp + 0x160]
cmp byte [0x1800aa16a], 0
je 0x18004935f
movzx eax, word [0x1800a1038]
mov word [rsp + 0x50], ax
mov eax, dword [str.lq]
mov dword [rbp + 0x798], eax
movzx eax, word [0x1800a1050]
mov word [rbp + 0x79c], ax
movzx eax, byte [0x1800a1052]
cmp byte [0x1800a1039], 0
je 0x180049270
mov byte [rsp + 0x50], 0x5d
xor byte [rsp + 0x51], 0x38
nop dword [rax + rax]
mov byte [rbp + 0x798], 0x5b
xor byte [rbp + 0x799], 0x38
xor byte [rbp + 0x79a], 0x39
xor byte [rbp + 0x79b], 0x3a
xor byte [rbp + 0x79c], 0x3b
xor byte [rbp + 0x79d], 0x3c
xor al, 0x3d
mov byte [rbp + 0x79e], al
lea r8, [rbp + 0x6da]
lea rdx, [rbp + 0x798]
lea rcx, [rbp + 0x8f0]
call fcn.18005f210
nop
lea r8, [rsp + 0x50]
mov rdx, rax
lea rcx, [rbp + 0x8d0]
call fcn.18005f3b0
nop
mov rcx, rax
call fcn.18005e270
mov r8, rax
movss dword [rsp + 0x20], xmm14
movaps xmm3, xmm14
movss xmm2, dword [0x1800a16b4]
xorps xmm1, xmm1
lea rcx, [rbp + 0x640]
call fcn.180001550
mov rcx, rax
call fcn.180003940
movaps xmm2, xmm7
subss xmm2, xmm8
movaps xmm1, xmm11
divss xmm1, dword [0x1800a1794]
movaps xmm0, xmm10
subss xmm0, xmm1
movss dword [rbp + 0x278], xmm0
movss dword [rbp + 0x27c], xmm2
movaps xmm3, xmm8
mov edx, eax
lea rcx, [rbp + 0x278]
call fcn.18003c840
nop
lea rcx, [rbp + 0x8d0]
call fcn.18005e3b0
nop
lea rcx, [rbp + 0x8f0]
call fcn.18005e3b0
movss xmm9, dword [rbp + 0x6fe]
movss xmm14, dword [rbp + 0x6fa]
xorps xmm6, xmmword [0x1800a1ae0]
movaps xmm0, xmm11
mulss xmm0, xmm13
movaps xmm7, xmm10
subss xmm7, xmm0
addss xmm7, dword [0x1800a17a8]
mov dword [rbp + 0x388], 0x40a00000
movaps xmm0, xmm6
addss xmm0, dword [0x1800a1740]
movups xmm1, xmmword [rbp + 0x380]
movss xmm1, xmm7
shufps xmm1, xmm1, 0xe1
movss xmm1, xmm12
shufps xmm1, xmm1, 0x87
movss xmm1, xmm0
shufps xmm1, xmm1, 0x39
movups xmmword [rbp + 0x380], xmm1
movdqa xmmword [rbp + 0x9e0], xmm1
mov edx, r13d
movss xmm2, dword [0x1800a1768]
lea rcx, [rbp + 0x9e0]
call fcn.18003d540
addss xmm7, dword [0x1800a16c8]
movaps xmm4, xmm12
addss xmm4, dword [0x1800a16c8]
movaps xmm2, xmm14
mulss xmm2, xmm6
divss xmm2, xmm9
mov byte [rsp + 0x54], 0xff
mov al, 0xa
mov word [rsp + 0x56], 0xaff
cvtps2pd xmm3, xmm14
cvtps2pd xmm1, xmm9
movaps xmm0, xmm1
mulsd xmm0, qword [0x1800a1720]
movzx eax, al
comisd xmm0, xmm3
cmovae eax, r13d
mov byte [rsp + 0x55], al
movaps xmm0, xmm1
mulsd xmm0, qword [0x1800a1708]
comisd xmm0, xmm3
jb 0x180049455
mov word [rsp + 0x55], 0x96ff
movaps xmm0, xmm1
mulsd xmm0, qword [0x1800a16f8]
comisd xmm0, xmm3
jbe 0x18004946d
mov word [rsp + 0x55], 0x32ff
mulsd xmm1, qword [0x1800a16e8]
comisd xmm1, xmm3
jbe 0x180049482
mov word [rsp + 0x55], 0xaff
mulss xmm9, xmm15
comiss xmm9, xmm14
jbe 0x180049499
mov word [rsp + 0x55], 0
mov byte [rsp + 0x57], 0
movss dword [rbp + 0x370], xmm7
movss dword [rbp + 0x374], xmm4
mov dword [rbp + 0x378], 0x40400000
movss dword [rbp + 0x37c], xmm2
movss xmm14, dword [0x1800a1768]
movaps xmm2, xmm14
mov edx, dword [rsp + 0x54]
lea rcx, [rbp + 0x370]
call fcn.18003d540
movss xmm6, dword [rsp + 0x60]
movss xmm7, dword [rsp + 0x64]
cmp byte [0x1800aa168], 0
je 0x180049533
cvttss2si eax, dword [rbp + 0x6fe]
cvttss2si ecx, dword [rbp + 0x6fa]
movss xmm0, dword [rbp + 0x726]
mulss xmm0, dword [0x1800a16d4]
cvttss2si r8d, xmm0
movaps xmm1, xmm7
subss xmm1, dword [0x1800a17ec]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
mov r9d, 0x7d
movaps xmm0, xmm6
call fcn.18003ba70
cmp byte [0x1801583ca], 0
je 0x18004969a
movzx eax, word [0x1800a1038]
mov word [rsp + 0x50], ax
cmp byte [0x1800a1039], 0
je 0x18004955f
mov byte [rsp + 0x50], 0x5d
xor byte [rsp + 0x51], 0x38
cvttss2si edx, dword [rbp + 0x6fa]
lea rcx, [rbp + 0x950]
call fcn.18003aef0
nop
mov ecx, dword [str.lpi]
mov dword [rbp + 0x780], ecx
movzx edx, word [0x1800a1350]
mov word [rbp + 0x784], dx
movzx ecx, byte [0x1800a1352]
mov byte [rbp + 0x780], 0x5b
xor byte [rbp + 0x781], 0x38
xor byte [rbp + 0x782], 0x39
xor byte [rbp + 0x783], 0x3a
xor dl, 0x3b
mov byte [rbp + 0x784], dl
xor byte [rbp + 0x785], 0x3c
xor cl, 0x3d
mov byte [rbp + 0x786], cl
mov r8, rax
lea rdx, [rbp + 0x780]
lea rcx, [rbp + 0x930]
call fcn.18005f280
nop
lea r8, [rsp + 0x50]
mov rdx, rax
lea rcx, [rbp + 0x910]
call fcn.18005f3b0
nop
mov rcx, rax
call fcn.18005e270
mov r8, rax
movss xmm0, dword [0x1800a16c8]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm0
movss xmm0, dword [0x1800a16b4]
movaps xmm2, xmm0
movaps xmm1, xmm0
lea rcx, [rbp + 0x558]
call fcn.180001550
mov rcx, rax
call fcn.180003940
movaps xmm1, xmm11
movss xmm9, dword [0x1800a1794]
divss xmm1, xmm9
movaps xmm0, xmm10
subss xmm0, xmm1
movss dword [rbp + 0x280], xmm0
movss dword [rbp + 0x284], xmm12
movaps xmm3, xmm8
mov edx, eax
lea rcx, [rbp + 0x280]
call fcn.18003c840
nop
lea rcx, [rbp + 0x910]
call fcn.18005e3b0
nop
lea rcx, [rbp + 0x930]
call fcn.18005e3b0
nop
lea rcx, [rbp + 0x950]
call fcn.18005e3b0
jmp 0x1800496a3
movss xmm9, dword [0x1800a1794]
cmp byte [0x1800aa169], 0
je 0x180049a51
movzx eax, word [0x1800a1038]
mov word [rsp + 0x50], ax
cmp byte [0x1800a1039], 0
je 0x1800496cf
mov byte [rsp + 0x50], 0x5d
xor byte [rsp + 0x51], 0x38
cvttss2si edx, dword [rbp + 0x726]
lea rcx, [rbp + 0x890]
call fcn.18003aef0
mov r10, rax
mov rcx, qword [str.lmun]
mov qword [rbp + 0x7c0], rcx
cmp byte [str._p_WPR], 0
je 0x180049850
cmp r12d, 2
jl 0x18004980f
movdqa xmm4, xmmword [0x1800a1ac0]
movdqa xmm2, xmmword [0x1800a1950]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800a1990]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800a19d0]
packuswb xmm2, xmm2
mov eax, dword [str.7777777777777777]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x7c0]
xorps xmm2, xmm1
movd dword [rbp + 0x7c0], xmm2
movdqa xmm3, xmmword [0x1800a1970]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1800a1990]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1800a19d0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x7c4]
xorps xmm2, xmm1
movd dword [rbp + 0x7c4], xmm2
jmp 0x180049850
lea r9, [rbp + 0x7c0]
mov r8d, ebx
nop dword [rax]
mov eax, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x37
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x180049820
mov r8, r10
lea rdx, [rbp + 0x7c0]
lea rcx, [rbp + 0x870]
call fcn.18005f280
nop
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.18005e280
xorps xmm0, xmm0
movups xmmword [rbp + 0x7f0], xmm0
mov qword [rbp + 0x800], rbx
mov qword [rbp + 0x808], rbx
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x7f0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x800], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rbp + 0x7f0]
cmp qword [rbp + 0x808], 0xf
cmova r8, qword [rbp + 0x7f0]
mov rax, qword [0x180157ed0]
mov dword [rbp + 0x360], 0x3f666666
mov dword [rbp + 0x364], 0x3f666666
mov dword [rbp + 0x368], 0x3f800000
movss xmm0, dword [rax + 0x37d0]
movss dword [rbp + 0x36c], xmm0
lea rcx, [rbp + 0x360]
call fcn.1800036a0
movaps xmm1, xmm8
addss xmm1, xmm12
movaps xmm0, xmm11
divss xmm0, xmm9
subss xmm10, xmm0
movss dword [rbp + 0x288], xmm10
movss dword [rbp + 0x28c], xmm1
movaps xmm3, xmm8
mov edx, eax
lea rcx, [rbp + 0x288]
call fcn.18003c840
nop
mov rdx, qword [rbp + 0x808]
cmp rdx, 0xf
jbe 0x180049984
inc rdx
mov rcx, qword [rbp + 0x7f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004997f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004bf69
call fcn.1800656fc
mov qword [rbp + 0x800], rbx
mov qword [rbp + 0x808], 0xf
mov byte [rbp + 0x7f0], 0
mov rdx, qword [rbp + 0x888]
cmp rdx, 0xf
jbe 0x1800499de
inc rdx
mov rcx, qword [rbp + 0x870]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800499d9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004bf70
call fcn.1800656fc
mov qword [rbp + 0x880], rbx
mov qword [rbp + 0x888], 0xf
mov byte [rbp + 0x870], 0
mov rdx, qword [rbp + 0x8a8]
cmp rdx, 0xf
jbe 0x180049a38
inc rdx
mov rcx, qword [rbp + 0x890]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180049a33
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004bf77
call fcn.1800656fc
mov qword [rbp + 0x8a0], rbx
mov qword [rbp + 0x8a8], 0xf
mov byte [rbp + 0x890], 0
cmp byte [0x1801583fc], 0
je 0x180049cda
movzx eax, word [0x1800a1038]
mov word [rsp + 0x50], ax
cmp byte [0x1800a1039], 0
je 0x180049a7d
mov byte [rsp + 0x50], 0x5d
xor byte [rsp + 0x51], 0x38
cvttss2si r8d, dword [rsp + 0x58]
lea r9, [rbp + 0x9f5]
test r8d, r8d
jns 0x180049ae0
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 0x180049aa0
dec r9
mov byte [r9], 0x2d
jmp 0x180049b0a
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 0x180049ae0
lea r8, [rbp + 0x9f5]
mov rdx, r9
lea rcx, [rbp + 0x8b0]
call fcn.18005faa0
nop
movsd xmm0, qword [str.lpio]
movsd qword [rbp + 0x7b0], xmm0
movzx eax, byte [0x1800a10b8]
mov byte [rbp + 0x7b0], 0x5b
xor byte [rbp + 0x7b1], 0x38
xor byte [rbp + 0x7b2], 0x39
xor byte [rbp + 0x7b3], 0x3a
xor byte [rbp + 0x7b4], 0x3b
xor byte [rbp + 0x7b5], 0x3c
xor byte [rbp + 0x7b6], 0x3d
xor byte [rbp + 0x7b7], 0x3e
xor al, 0x3f
mov byte [rbp + 0x7b8], al
lea r8, [rbp + 0x8b0]
lea rdx, [rbp + 0x7b0]
lea rcx, [rbp + 0x970]
call fcn.18005f280
nop
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.18005e280
xorps xmm0, xmm0
movups xmmword [rbp + 0x810], xmm0
mov qword [rbp + 0x820], rbx
mov qword [rbp + 0x828], rbx
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x810], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x820], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rbp + 0x810]
cmp qword [rbp + 0x828], 0xf
cmova r8, qword [rbp + 0x810]
mov rax, qword [0x180157ed0]
mov dword [rbp + 0x390], 0x3f666666
mov dword [rbp + 0x394], 0x3f666666
mov dword [rbp + 0x398], 0x3f800000
movss xmm0, dword [rax + 0x37d0]
movss dword [rbp + 0x39c], xmm0
lea rcx, [rbp + 0x390]
call fcn.1800036a0
movaps xmm1, xmm11
divss xmm1, xmm9
movaps xmm0, xmm6
subss xmm0, xmm1
movss dword [rbp + 0x290], xmm0
movss dword [rbp + 0x294], xmm7
movaps xmm3, xmm8
mov edx, eax
lea rcx, [rbp + 0x290]
call fcn.18003c840
nop
mov rdx, qword [rbp + 0x828]
cmp rdx, 0xf
jbe 0x180049ca8
inc rdx
mov rcx, qword [rbp + 0x810]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180049ca3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004bf7e
call fcn.1800656fc
mov qword [rbp + 0x820], rbx
mov qword [rbp + 0x828], 0xf
mov byte [rbp + 0x810], 0
lea rcx, [rbp + 0x970]
call fcn.18005e3b0
nop
lea rcx, [rbp + 0x8b0]
call fcn.18005e3b0
cmp byte [0x180158416], 0
je 0x180049f70
movzx eax, word [0x1800a1038]
mov word [rsp + 0x50], ax
cmp byte [0x1800a1039], 0
je 0x180049d06
mov byte [rsp + 0x50], 0x5d
xor byte [rsp + 0x51], 0x38
mov r8, qword [rbp + 0x658]
mov rdx, qword [rbp + 0x6c0]
lea rcx, [rbp + 0x850]
call fcn.180040070
nop
movsd xmm0, qword [str.lvxw]
movsd qword [rbp + 0x7a0], xmm0
movzx ecx, byte [0x1800a1468]
mov byte [rbp + 0x7a0], 0x5b
xor byte [rbp + 0x7a1], 0x38
xor byte [rbp + 0x7a2], 0x39
xor byte [rbp + 0x7a3], 0x3a
xor byte [rbp + 0x7a4], 0x3b
xor byte [rbp + 0x7a5], 0x3c
xor byte [rbp + 0x7a6], 0x3d
xor byte [rbp + 0x7a7], 0x3e
xor cl, 0x3f
mov byte [rbp + 0x7a8], cl
mov r8, rax
lea rdx, [rbp + 0x7a0]
lea rcx, [rbp + 0x830]
call fcn.18005f280
nop
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.18005e280
xorps xmm0, xmm0
movups xmmword [rbp + 0x7d0], xmm0
mov qword [rbp + 0x7e0], rbx
mov qword [rbp + 0x7e8], rbx
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x7d0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x7e0], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rbp + 0x7d0]
cmp qword [rbp + 0x7e8], 0xf
cmova r8, qword [rbp + 0x7d0]
mov rax, qword [0x180157ed0]
mov dword [rbp - 0x60], 0x3f666666
mov dword [rbp - 0x5c], 0x3f666666
mov dword [rbp - 0x58], 0x3f800000
movss xmm0, dword [rax + 0x37d0]
movss dword [rbp - 0x54], xmm0
lea rcx, [rbp - 0x60]
call fcn.1800036a0
movaps xmm0, xmm8
addss xmm0, xmm7
divss xmm11, xmm9
subss xmm6, xmm11
movss dword [rbp + 0x298], xmm6
movss dword [rbp + 0x29c], xmm0
movaps xmm3, xmm8
mov edx, eax
lea rcx, [rbp + 0x298]
call fcn.18003c840
nop
mov rdx, qword [rbp + 0x7e8]
cmp rdx, 0xf
jbe 0x180049e98
inc rdx
mov rcx, qword [rbp + 0x7d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180049e93
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004bf85
call fcn.1800656fc
mov qword [rbp + 0x7e0], rbx
mov qword [rbp + 0x7e8], 0xf
mov byte [rbp + 0x7d0], 0
mov rdx, qword [rbp + 0x848]
cmp rdx, 0xf
jbe 0x180049ef2
inc rdx
mov rcx, qword [rbp + 0x830]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180049eed
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004bf8c
call fcn.1800656fc
mov qword [rbp + 0x840], rbx
mov qword [rbp + 0x848], 0xf
mov byte [rbp + 0x830], 0
mov rdx, qword [rbp + 0x868]
cmp rdx, 0xf
jbe 0x180049f4c
inc rdx
mov rcx, qword [rbp + 0x850]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180049f47
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004bf93
call fcn.1800656fc
mov qword [rbp + 0x860], rbx
mov qword [rbp + 0x868], 0xf
mov byte [rbp + 0x850], 0
jmp 0x180049f70
movss xmm14, dword [0x1800a1768]
cmp byte [0x1801583ec], 0
je 0x18004aae9
cmp byte [rbp + 0x720], 0
je 0x18004aae9
cmp byte [rbp + 0x722], 0
je 0x18004aae9
movss xmm0, dword [0x1801576da]
comiss xmm0, xmm15
jbe 0x18004aae9
cmp qword [rbp + 0x6c0], 0x16dd
je 0x18004aae9
lea rdx, [rbp + 0x990]
lea rcx, [rbp + 0x650]
call fcn.18003f3c0
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x5f0], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x600], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x610], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rbp + 0x620], xmm1
movsd xmm0, qword [rax + 0x40]
movsd qword [rbp + 0x630], xmm0
lea r8, [rbp + 0x5f0]
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x650]
call fcn.18003f900
mov ebx, 0xffff0000
cmp byte [rbp + 0x721], 0
mov eax, 0xff00ff00
cmovne ebx, eax
cmp byte [rbp + 0x60], 0
jne 0x18004aae9
movsd xmm0, qword [rbp + 0x736]
movsd qword [rbp + 0x430], xmm0
mov eax, dword [rbp + 0x73e]
mov dword [rbp + 0x438], eax
movss xmm0, dword [0x180158500]
movss xmm1, dword [0x180158504]
unpcklps xmm1, xmm0
movq r9, xmm1
lea r8, [rbp + 0x7c0]
lea rdx, [rbp + 0x430]
call fcn.18003b590
test al, al
je 0x18004aae9
mov rcx, qword [rbp + 0x6c0]
movabs rax, 0xfd1ffffffffffcc9
add rax, rcx
cmp rax, 0x23
ja 0x18004a0b7
movabs rdx, 0x800000021
bt rdx, rax
jb 0x18004a8cf
movabs rax, 0x2e000000000016c
cmp rcx, rax
je 0x18004a8cf
movss xmm11, dword [0x1800a1740]
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0x89]
lea rcx, [rbp + 0x81]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0x91]
lea rcx, [rbp + 0x89]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0x99]
lea rcx, [rbp + 0x91]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0xa1]
lea rcx, [rbp + 0x89]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0xb1]
lea rcx, [rbp + 0x89]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0xc1]
lea rcx, [rbp + 0xa1]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0xd1]
lea rcx, [rbp + 0xb1]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0xc9]
lea rcx, [rbp + 0xc1]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0xd9]
lea rcx, [rbp + 0xd1]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0xe1]
lea rcx, [rbp + 0x99]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0xf1]
lea rcx, [rbp + 0x99]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0xe9]
lea rcx, [rbp + 0xe1]
call fcn.18003cbe0
movss xmm3, dword [0x1800a1788]
mov r8d, 0xff000000
lea rdx, [rbp + 0xf9]
lea rcx, [rbp + 0xf1]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0x101]
lea rcx, [rbp + 0xf9]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0x109]
lea rcx, [rbp + 0xe9]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0x111]
lea rcx, [rbp + 0x101]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0x119]
lea rcx, [rbp + 0x109]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0x89]
lea rcx, [rbp + 0x81]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0x91]
lea rcx, [rbp + 0x89]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0x99]
lea rcx, [rbp + 0x91]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0xa1]
lea rcx, [rbp + 0x89]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0xb1]
lea rcx, [rbp + 0x89]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0xc1]
lea rcx, [rbp + 0xa1]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0xd1]
lea rcx, [rbp + 0xb1]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0xc9]
lea rcx, [rbp + 0xc1]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0xd9]
lea rcx, [rbp + 0xd1]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0xe1]
lea rcx, [rbp + 0x99]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0xf1]
lea rcx, [rbp + 0x99]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0xe9]
lea rcx, [rbp + 0xe1]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0xf9]
lea rcx, [rbp + 0xf1]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0x101]
lea rcx, [rbp + 0xf9]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0x109]
lea rcx, [rbp + 0xe9]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0x111]
lea rcx, [rbp + 0x101]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0x119]
lea rcx, [rbp + 0x109]
call fcn.18003cbe0
movss xmm0, dword [rbp + 0x81]
movss dword [rbp + 0x2a0], xmm0
movss xmm1, dword [rbp + 0x85]
movss dword [rbp + 0x2a4], xmm1
xor ebx, ebx
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x2a0]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0x91]
movss dword [rbp + 0x2a8], xmm0
movss xmm1, dword [rbp + 0x95]
movss dword [rbp + 0x2ac], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x2a8]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0x99]
movss dword [rbp + 0x2b0], xmm0
movss xmm1, dword [rbp + 0x9d]
movss dword [rbp + 0x2b4], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x2b0]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0x89]
movss dword [rbp + 0x2b8], xmm0
movss xmm1, dword [rbp + 0x8d]
movss dword [rbp + 0x2bc], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x2b8]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0xa1]
movss dword [rbp + 0x2c0], xmm0
movss xmm1, dword [rbp + 0xa5]
movss dword [rbp + 0x2c4], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x2c0]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0xb1]
movss dword [rbp + 0x2c8], xmm0
movss xmm1, dword [rbp + 0xb5]
movss dword [rbp + 0x2cc], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x2c8]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0xc1]
movss dword [rbp + 0x2d0], xmm0
movss xmm1, dword [rbp + 0xc5]
movss dword [rbp + 0x2d4], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x2d0]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0xc9]
movss dword [rbp + 0x2d8], xmm0
movss xmm1, dword [rbp + 0xcd]
movss dword [rbp + 0x2dc], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x2d8]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0xd1]
movss dword [rbp + 0x2e0], xmm0
movss xmm1, dword [rbp + 0xd5]
movss dword [rbp + 0x2e4], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x2e0]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0xd9]
movss dword [rbp + 0x1f0], xmm0
movss xmm1, dword [rbp + 0xdd]
movss dword [rbp + 0x1f4], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x1f0]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0xe1]
movss dword [rbp + 0x1f8], xmm0
movss xmm1, dword [rbp + 0xe5]
movss dword [rbp + 0x1fc], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x1f8]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0xe9]
movss dword [rbp + 0x200], xmm0
movss xmm1, dword [rbp + 0xed]
movss dword [rbp + 0x204], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x200]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0xf1]
movss dword [rbp + 0x208], xmm0
movss xmm1, dword [rbp + 0xf5]
movss dword [rbp + 0x20c], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x208]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0xf9]
movss dword [rbp + 0x210], xmm0
movss xmm1, dword [rbp + 0xfd]
movss dword [rbp + 0x214], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x210]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0x101]
movss dword [rbp + 0x218], xmm0
movss xmm1, dword [rbp + 0x105]
movss dword [rbp + 0x21c], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x218]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0x111]
movss dword [rbp + 0x268], xmm0
movss xmm1, dword [rbp + 0x115]
movss dword [rbp + 0x26c], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x268]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0x109]
movss dword [rbp + 0x228], xmm0
movss xmm1, dword [rbp + 0x10d]
movss dword [rbp + 0x22c], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x228]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0x119]
movss dword [rbp + 0x230], xmm0
movss xmm1, dword [rbp + 0x11d]
movss dword [rbp + 0x234], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x230]
mov rcx, rdi
call fcn.180024db0
jmp 0x18004aaf2
movss xmm11, dword [0x1800a1740]
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0x89]
lea rcx, [rbp + 0x81]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0x91]
lea rcx, [rbp + 0x89]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0xa1]
lea rcx, [rbp + 0x91]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, 0xff000000
lea rdx, [rbp + 0xb1]
lea rcx, [rbp + 0x91]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0x89]
lea rcx, [rbp + 0x81]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0x91]
lea rcx, [rbp + 0x89]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0xa1]
lea rcx, [rbp + 0x91]
call fcn.18003cbe0
movaps xmm3, xmm11
mov r8d, ebx
lea rdx, [rbp + 0xb1]
lea rcx, [rbp + 0x91]
call fcn.18003cbe0
movss xmm0, dword [rbp + 0x81]
movss dword [rbp + 0x238], xmm0
movss xmm1, dword [rbp + 0x85]
movss dword [rbp + 0x23c], xmm1
xor ebx, ebx
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x238]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0x91]
movss dword [rbp + 0x240], xmm0
movss xmm1, dword [rbp + 0x95]
movss dword [rbp + 0x244], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x240]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0x89]
movss dword [rbp + 0x248], xmm0
movss xmm1, dword [rbp + 0x8d]
movss dword [rbp + 0x24c], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x248]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0xa1]
movss dword [rbp + 0x250], xmm0
movss xmm1, dword [rbp + 0xa5]
movss dword [rbp + 0x254], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x250]
mov rcx, rdi
call fcn.180024db0
movss xmm0, dword [rbp + 0xb1]
movss dword [rbp + 0x258], xmm0
movss xmm1, dword [rbp + 0xb5]
movss dword [rbp + 0x25c], xmm1
mov dword [rsp + 0x20], ebx
mov r9d, 0xffff9966
movaps xmm2, xmm11
lea rdx, [rbp + 0x258]
mov rcx, rdi
call fcn.180024db0
jmp 0x18004aaf2
movss xmm11, dword [0x1800a1740]
cmp byte [0x180158419], 0
je 0x18004ac75
cmp byte [rbp + 0x720], 0
je 0x18004ac75
cmp byte [rbp + 0x722], 0
je 0x18004ac75
movss xmm0, dword [0x1801576da]
comiss xmm0, xmm15
jbe 0x18004ac75
cmp qword [rbp + 0x6c0], 0x16dd
je 0x18004ac75
mov qword [rbp + 0x168], 0
movss xmm9, dword [0x180158504]
movss xmm10, dword [0x180158500]
movss xmm7, dword [rbp + 0x736]
movss xmm6, dword [rbp + 0x73a]
movss xmm8, dword [rbp + 0x73e]
movaps xmm0, xmm7
unpcklps xmm0, xmm6
movsd qword [rbp + 0x440], xmm0
movss dword [rbp + 0x448], xmm8
movaps xmm0, xmm9
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rbp + 0x168]
lea rdx, [rbp + 0x440]
call fcn.18003b590
test al, al
je 0x18004ac8e
mov dword [rsp + 0x20], 0x96
cmp byte [rbp + 0x721], 0
je 0x18004ac34
mov r9d, r13d
mov edx, 0xa0
lea r8d, [rdx + 0x3a]
lea rcx, [rbp + 0x194]
call fcn.18003b4e0
mulss xmm10, xmm13
mulss xmm9, xmm13
unpcklps xmm9, xmm10
movq rcx, xmm9
mov rdx, qword [rbp + 0x168]
mov r8d, dword [rax]
mov r9d, 2
call fcn.18003d3f0
movss xmm8, dword [rbp + 0x73e]
movss dword [rbp + 0x73e], xmm8
movss xmm6, dword [rbp + 0x73a]
movss xmm7, dword [rbp + 0x736]
movaps xmm0, xmm7
unpcklps xmm0, xmm6
movsd qword [rbp + 0x736], xmm0
jmp 0x18004ac8e
mov edx, 0xcc
mov r9d, 0x66
mov r8d, r9d
lea rcx, [rbp + 0x1a0]
call fcn.18003b4e0
movss xmm1, dword [0x180158500]
mulss xmm1, xmm13
movss xmm0, dword [0x180158504]
mulss xmm0, xmm13
unpcklps xmm0, xmm1
movq rcx, xmm0
jmp 0x18004abed
movss xmm8, dword [rbp + 0x73e]
movss xmm6, dword [rbp + 0x73a]
movss xmm7, dword [rbp + 0x736]
cmp byte [0x1801583e6], 0
je 0x18004ae40
cmp byte [rbp + 0x720], 0
je 0x18004ae40
cmp byte [rbp + 0x722], 0
je 0x18004ae40
movss xmm0, dword [0x1801576da]
comiss xmm0, xmm15
jbe 0x18004ae40
cmp qword [rbp + 0x6c0], 0x16dd
je 0x18004ae40
mov qword [rbp + 0x170], 0
mov dword [rbp + 0x264], 0
movss xmm2, dword [0x180158500]
movaps xmm1, xmm6
addss xmm1, dword [0x1800a165c]
movaps xmm0, xmm7
unpcklps xmm0, xmm1
movsd qword [rbp + 0x450], xmm0
movss dword [rbp + 0x458], xmm8
movss xmm0, dword [0x180158504]
unpcklps xmm0, xmm2
movq r9, xmm0
lea r8, [rbp + 0x170]
lea rdx, [rbp + 0x450]
call fcn.18003b590
test al, al
je 0x180049127
movss xmm1, dword [0x180158500]
subss xmm6, dword [0x1800a1710]
movaps xmm0, xmm7
unpcklps xmm0, xmm6
movsd qword [rbp + 0x460], xmm0
movss dword [rbp + 0x468], xmm8
movss xmm0, dword [0x180158504]
unpcklps xmm0, xmm1
movq r9, xmm0
lea r8, [rbp + 0x260]
lea rdx, [rbp + 0x460]
call fcn.18003b590
test al, al
jne 0x18004ada1
lea rcx, [rbp + 0x650]
call fcn.180040000
jmp 0x18004bf44
movss xmm8, dword [rbp + 0x174]
movaps xmm7, xmm8
subss xmm7, dword [rbp + 0x264]
andps xmm7, xmmword [0x1800a1ad0]
cvtps2pd xmm0, xmm7
mulsd xmm0, qword [0x1800a1728]
cvtpd2ps xmm6, xmm0
lea rcx, [0x1800aa1b8]
call fcn.180003940
mov dword [rsp + 0x58], eax
movaps xmm0, xmm7
addss xmm0, dword [0x1800a17b8]
cvttss2si r9d, xmm0
movaps xmm1, xmm6
addss xmm1, xmm11
cvttss2si r8d, xmm1
divss xmm7, dword [0x1800a178c]
subss xmm8, xmm7
subss xmm8, dword [0x1800a16c8]
cvttss2si edx, xmm8
mulss xmm6, xmm13
movss xmm0, dword [rbp + 0x170]
subss xmm0, xmm6
subss xmm0, dword [0x1800a16c8]
cvttss2si ecx, xmm0
lea rax, [rsp + 0x58]
mov qword [rsp + 0x20], rax
call fcn.18003cd00
cmp byte [0x1801583c8], 0
je 0x18004b7d5
cmp byte [rbp + 0x720], 0
je 0x18004b7d5
cmp byte [rbp + 0x722], 0
je 0x18004b7d5
movss xmm0, dword [0x1801576da]
comiss xmm0, xmm15
jbe 0x18004b7d5
cmp qword [rbp + 0x6c0], 0x16dd
je 0x18004b7d5
mov qword [rbp + 0x1e0], 0
mov dword [rbp + 0x1e8], 0
mov qword [rbp + 0x1b8], 0
mov dword [rbp + 0x1c0], 0
mov qword [rbp + 0x1a8], 0
mov dword [rbp + 0x1b0], 0
mov qword [rbp + 0x50], 0
mov dword [rbp + 0x58], 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 + 0x158], 0
mov qword [rbp + 0x178], 0
mov qword [rbp + 0x130], 0
mov qword [rbp + 0x150], 0
mov qword [rbp + 0x138], 0
mov qword [rbp + 0x140], 0
mov qword [rbp + 0x148], 0
mov qword [rbp - 0x50], 0
lea rax, [rbp + 0x10]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x30]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x1a8]
lea r8, [rbp + 0x1b8]
lea rdx, [rbp + 0x1e0]
lea rcx, [rbp + 0x650]
call fcn.18003dd80
movss xmm6, dword [0x180158504]
movss xmm7, dword [0x180158500]
movsd xmm0, qword [rbp + 0x1e0]
movsd qword [rbp + 0x470], xmm0
mov eax, dword [rbp + 0x1e8]
mov dword [rbp + 0x478], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x158]
lea rdx, [rbp + 0x470]
call fcn.18003b590
test al, al
jne 0x18004b050
mov rdx, qword [rbp + 0x6f2]
cmp rdx, 0xf
jbe 0x18004bf44
inc rdx
mov rcx, qword [rbp + 0x6da]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004bf3f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18004bf3f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
movsd xmm0, qword [rbp + 0x1b8]
movsd qword [rbp + 0x480], xmm0
mov eax, dword [rbp + 0x1c0]
mov dword [rbp + 0x488], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x178]
lea rdx, [rbp + 0x480]
call fcn.18003b590
test al, al
jne 0x18004b09f
lea rcx, [rbp + 0x650]
call fcn.180040000
jmp 0x18004bf44
movsd xmm0, qword [rbp + 0x1a8]
movsd qword [rbp + 0x490], xmm0
mov eax, dword [rbp + 0x1b0]
mov dword [rbp + 0x498], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x130]
lea rdx, [rbp + 0x490]
call fcn.18003b590
test al, al
jne 0x18004b0ee
lea rcx, [rbp + 0x650]
call fcn.180040000
jmp 0x18004bf44
movsd xmm0, qword [rbp + 0x50]
movsd qword [rbp + 0x4a0], xmm0
mov eax, dword [rbp + 0x58]
mov dword [rbp + 0x4a8], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x150]
lea rdx, [rbp + 0x4a0]
call fcn.18003b590
test al, al
jne 0x18004b137
lea rcx, [rbp + 0x650]
call fcn.180040000
jmp 0x18004bf44
movsd xmm0, qword [rbp + 0x40]
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 + 0x138]
lea rdx, [rbp + 0x4b0]
call fcn.18003b590
test al, al
jne 0x18004b180
lea rcx, [rbp + 0x650]
call fcn.180040000
jmp 0x18004bf44
movsd xmm0, qword [rbp + 0x30]
movsd qword [rbp + 0x4c0], xmm0
mov eax, dword [rbp + 0x38]
mov dword [rbp + 0x4c8], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x140]
lea rdx, [rbp + 0x4c0]
call fcn.18003b590
test al, al
jne 0x18004b1c9
lea rcx, [rbp + 0x650]
call fcn.180040000
jmp 0x18004bf44
movsd xmm0, qword [rbp + 0x20]
movsd qword [rbp + 0x4d0], xmm0
mov eax, dword [rbp + 0x28]
mov dword [rbp + 0x4d8], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x148]
lea rdx, [rbp + 0x4d0]
call fcn.18003b590
test al, al
jne 0x18004b212
lea rcx, [rbp + 0x650]
call fcn.180040000
jmp 0x18004bf44
movsd xmm0, qword [rbp + 0x10]
movsd qword [rbp + 0x540], xmm0
mov eax, dword [rbp + 0x18]
mov dword [rbp + 0x548], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp - 0x50]
lea rdx, [rbp + 0x540]
call fcn.18003b590
test al, al
jne 0x18004b258
lea rcx, [rbp + 0x650]
call fcn.180040000
jmp 0x18004bf44
mov dword [rsp + 0x20], 0x96
cmp byte [rbp + 0x721], 0
je 0x18004b505
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x1a4]
call fcn.18003b4e0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm9, qword [rbp + 0x178]
movq rdx, xmm9
movsd xmm6, qword [rbp + 0x158]
movq rcx, xmm6
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x1c8]
call fcn.18003b4e0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm10, qword [rbp + 0x150]
movq rdx, xmm10
movq rcx, xmm9
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x1cc]
call fcn.18003b4e0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm8, qword [rbp + 0x130]
movq rdx, xmm8
movq rcx, xmm10
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x190]
call fcn.18003b4e0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm8
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x1d0]
call fcn.18003b4e0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm11, qword [rbp + 0x138]
movq rdx, xmm11
movq rcx, xmm6
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x1d4]
call fcn.18003b4e0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm7, qword [rbp + 0x140]
movq rdx, xmm7
movq rcx, xmm9
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x1d8]
call fcn.18003b4e0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm9, qword [rbp + 0x148]
movq rdx, xmm9
movq rcx, xmm8
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x3a0]
call fcn.18003b4e0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm6, qword [rbp - 0x50]
movq rdx, xmm6
movq rcx, xmm10
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x3a4]
call fcn.18003b4e0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movq rdx, xmm7
movq rcx, xmm11
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x3a8]
call fcn.18003b4e0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm7
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x3ac]
call fcn.18003b4e0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movq rdx, xmm9
movq rcx, xmm6
call fcn.18003d3f0
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x3b0]
jmp 0x18004b7b0
mov r9d, 0x99
lea r8d, [r9 - 0x66]
mov edx, r13d
lea rcx, [rbp + 0x3b4]
call fcn.18003b4e0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm9, qword [rbp + 0x178]
movq rdx, xmm9
movsd xmm6, qword [rbp + 0x158]
movq rcx, xmm6
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
mov r9d, 0x99
lea r8d, [r9 - 0x66]
mov edx, r13d
lea rcx, [rbp + 0x3b8]
call fcn.18003b4e0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm10, qword [rbp + 0x150]
movq rdx, xmm10
movq rcx, xmm9
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
mov r9d, 0x99
lea r8d, [r9 - 0x66]
mov edx, r13d
lea rcx, [rbp + 0x3bc]
call fcn.18003b4e0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm8, qword [rbp + 0x130]
movq rdx, xmm8
movq rcx, xmm10
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
mov r9d, 0x99
lea r8d, [r9 - 0x66]
mov edx, r13d
lea rcx, [rbp + 0x3dc]
call fcn.18003b4e0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm8
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
mov r9d, 0x99
lea r8d, [r9 - 0x66]
mov edx, r13d
lea rcx, [rbp + 0x3c0]
call fcn.18003b4e0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm11, qword [rbp + 0x138]
movq rdx, xmm11
movq rcx, xmm6
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
mov r9d, 0x99
lea r8d, [r9 - 0x66]
mov edx, r13d
lea rcx, [rbp + 0x3c4]
call fcn.18003b4e0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm7, qword [rbp + 0x140]
movq rdx, xmm7
movq rcx, xmm9
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
mov r9d, 0x99
lea r8d, [r9 - 0x66]
mov edx, r13d
lea rcx, [rbp + 0x3c8]
call fcn.18003b4e0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm9, qword [rbp + 0x148]
movq rdx, xmm9
movq rcx, xmm8
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
mov r9d, 0x99
lea r8d, [r9 - 0x66]
mov edx, r13d
lea rcx, [rbp + 0x3cc]
call fcn.18003b4e0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm6, qword [rbp - 0x50]
movq rdx, xmm6
movq rcx, xmm10
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
mov r9d, 0x99
lea r8d, [r9 - 0x66]
mov edx, r13d
lea rcx, [rbp + 0x3d0]
call fcn.18003b4e0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movq rdx, xmm7
movq rcx, xmm11
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
mov r9d, 0x99
lea r8d, [r9 - 0x66]
mov edx, r13d
lea rcx, [rbp + 0x3d4]
call fcn.18003b4e0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm7
call fcn.18003d3f0
mov dword [rsp + 0x20], 0x96
mov r9d, 0x99
lea r8d, [r9 - 0x66]
mov edx, r13d
lea rcx, [rbp + 0x3d8]
call fcn.18003b4e0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movq rdx, xmm9
movq rcx, xmm6
call fcn.18003d3f0
mov r9d, 0x99
lea r8d, [r9 - 0x66]
mov edx, r13d
lea rcx, [rbp + 0x550]
mov dword [rsp + 0x20], 0x96
call fcn.18003b4e0
mov r9d, 1
mov r8d, dword [rax]
movq rdx, xmm11
movq rcx, xmm9
call fcn.18003d3f0
cmp byte [0x1800aa16b], 0
je 0x18004bc6e
cmp byte [rbp + 0x720], 0
je 0x18004bc6e
cmp byte [rbp + 0x722], 0
je 0x18004bc6e
movss xmm0, dword [0x1801576da]
comiss xmm0, xmm15
jbe 0x18004bc6e
cmp qword [rbp + 0x6c0], 0x16dd
je 0x18004bc6e
movsd xmm6, qword [rbp + 0x736]
mov ebx, dword [rbp + 0x73e]
mov qword [rbp], 0
mov dword [rbp + 8], 0
mov qword [rbp - 0x40], 0
mov dword [rbp - 0x38], 0
mov qword [rbp - 0x30], 0
mov dword [rbp - 0x28], 0
mov qword [rbp - 0x20], 0
mov dword [rbp - 0x18], 0
mov qword [rbp - 0x10], 0
mov dword [rbp - 8], 0
mov qword [rbp - 0x68], 0
mov qword [rbp - 0x70], 0
mov qword [rsp + 0x78], 0
mov qword [rbp - 0x80], 0
mov qword [rbp - 0x78], 0
mov qword [rsp + 0x68], 0
lea rax, [rbp - 0x10]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x20]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x30]
lea r8, [rbp - 0x40]
lea rdx, [rbp]
lea rcx, [rbp + 0x650]
call fcn.18003ec50
movss xmm7, dword [0x180158504]
movss xmm8, dword [0x180158500]
movsd qword [rbp + 0x4f0], xmm6
mov dword [rbp + 0x4f8], ebx
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rbp - 0x68]
lea rdx, [rbp + 0x4f0]
call fcn.18003b590
test al, al
je 0x18004bf07
movsd xmm0, qword [rbp]
movsd qword [rbp + 0x500], xmm0
mov eax, dword [rbp + 8]
mov dword [rbp + 0x508], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rbp - 0x70]
lea rdx, [rbp + 0x500]
call fcn.18003b590
test al, al
jne 0x18004b95e
lea rcx, [rbp + 0x650]
call fcn.180040000
jmp 0x18004bf44
movsd xmm0, qword [rbp - 0x40]
movsd qword [rbp + 0x510], xmm0
mov eax, dword [rbp - 0x38]
mov dword [rbp + 0x518], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rsp + 0x78]
lea rdx, [rbp + 0x510]
call fcn.18003b590
test al, al
jne 0x18004b9a6
lea rcx, [rbp + 0x650]
call fcn.180040000
jmp 0x18004bf44
movsd xmm0, qword [rbp - 0x30]
movsd qword [rbp + 0x520], xmm0
mov eax, dword [rbp - 0x28]
mov dword [rbp + 0x528], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rbp - 0x80]
lea rdx, [rbp + 0x520]
call fcn.18003b590
test al, al
jne 0x18004b9ed
lea rcx, [rbp + 0x650]
call fcn.180040000
jmp 0x18004bf44
movsd xmm0, qword [rbp - 0x20]
movsd qword [rbp + 0x310], xmm0
mov eax, dword [rbp - 0x18]
mov dword [rbp + 0x318], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rbp - 0x78]
lea rdx, [rbp + 0x310]
call fcn.18003b590
test al, al
jne 0x18004ba34
lea rcx, [rbp + 0x650]
call fcn.180040000
jmp 0x18004bf44
movsd xmm0, qword [rbp - 0x10]
movsd qword [rbp + 0x300], xmm0
mov eax, dword [rbp - 8]
mov dword [rbp + 0x308], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rsp + 0x68]
lea rdx, [rbp + 0x300]
call fcn.18003b590
test al, al
jne 0x18004ba7c
lea rcx, [rbp + 0x650]
call fcn.180040000
jmp 0x18004bf44
mov dword [rsp + 0x20], r13d
cmp byte [rbp + 0x721], 0
je 0x18004bb70
xor r9d, r9d
xor r8d, r8d
mov edx, r13d
lea rcx, [rbp + 0x4e0]
call fcn.18003b4e0
lea r9d, [r8 + 3]
mov r8d, dword [rax]
movsd xmm6, qword [rbp - 0x70]
movq rdx, xmm6
mov rcx, qword [rbp - 0x68]
call fcn.18003d3f0
mov dword [rsp + 0x20], r13d
mov r9d, 0x66
lea r8d, [r9 - 0x33]
mov edx, r13d
lea rcx, [rbp + 0x400]
call fcn.18003b4e0
lea r9d, [r8 - 0x30]
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x78]
movq rcx, xmm6
call fcn.18003d3f0
mov dword [rsp + 0x20], r13d
mov r9d, 0x66
lea r8d, [r9 - 0x33]
mov edx, r13d
lea rcx, [rbp + 0x3fc]
call fcn.18003b4e0
lea r9d, [r8 - 0x30]
mov r8d, dword [rax]
mov rdx, qword [rbp - 0x80]
movq rcx, xmm6
call fcn.18003d3f0
mov dword [rsp + 0x20], r13d
mov r9d, 0x66
lea r8d, [r9 - 0x33]
mov edx, r13d
lea rcx, [rbp + 0x3f8]
call fcn.18003b4e0
lea r9d, [r8 - 0x30]
mov r8d, dword [rax]
mov rdx, qword [rbp - 0x78]
movq rcx, xmm6
call fcn.18003d3f0
mov r9d, 0x66
lea r8d, [r9 - 0x33]
mov edx, r13d
lea rcx, [rbp + 0x3f4]
jmp 0x18004bc4c
mov r9d, r13d
mov edx, 0x66
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x3f0]
call fcn.18003b4e0
lea r9d, [rdx - 0x63]
mov r8d, dword [rax]
movsd xmm6, qword [rbp - 0x70]
movq rdx, xmm6
mov rcx, qword [rbp - 0x68]
call fcn.18003d3f0
mov dword [rsp + 0x20], r13d
mov r9d, r13d
mov edx, 0x66
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x3ec]
call fcn.18003b4e0
lea r9d, [rdx - 0x63]
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x78]
movq rcx, xmm6
call fcn.18003d3f0
mov dword [rsp + 0x20], r13d
mov r9d, r13d
mov edx, 0x66
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x3e8]
call fcn.18003b4e0
lea r9d, [rdx - 0x63]
mov r8d, dword [rax]
mov rdx, qword [rbp - 0x80]
movq rcx, xmm6
call fcn.18003d3f0
mov dword [rsp + 0x20], r13d
mov r9d, r13d
mov edx, 0x66
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x3e4]
call fcn.18003b4e0
lea r9d, [rdx - 0x63]
mov r8d, dword [rax]
mov rdx, qword [rbp - 0x78]
movq rcx, xmm6
call fcn.18003d3f0
mov r9d, r13d
mov edx, 0x66
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x3e0]
mov dword [rsp + 0x20], r13d
call fcn.18003b4e0
mov r9d, 3
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x68]
movq rcx, xmm6
call fcn.18003d3f0
cmp byte [0x1801583fd], 0
je 0x18004bf07
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x18004bcbf
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x18004bcbf
mov ecx, 6
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x18004bcbf
mov ecx, 5
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x18004bf07
mov qword [rsp + 0x70], 0
movss xmm1, dword [0x180158500]
movsd xmm0, qword [rbp + 0x772]
movsd qword [rbp + 0x2f0], xmm0
mov eax, dword [rbp + 0x77a]
mov dword [rbp + 0x2f8], eax
movss xmm0, dword [0x180158504]
unpcklps xmm0, xmm1
movq r9, xmm0
lea r8, [rsp + 0x70]
lea rdx, [rbp + 0x2f0]
call fcn.18003b590
test al, al
je 0x18004bf07
mov eax, dword [0x1801583cc]
test eax, eax
jne 0x18004be1e
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 [0x1801583c4], 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 [0x1801583b0], 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 [0x1801583b8], 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 [0x180158404], r8d
cmp r8d, 5
jl 0x18004bde2
neg dword [0x1801583c4]
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 [0x180158404], r8d
mov eax, dword [0x1801583cc]
cmp r8d, 5
jl 0x18004be1e
neg dword [0x1801583b0]
inc eax
mov dword [0x1801583cc], eax
cmp eax, 0xe
jne 0x18004be35
mov dword [0x1801583cc], 0
cmp byte [rbp + 0x720], 0
je 0x18004bf07
cmp byte [rbp + 0x721], 0
je 0x18004bf07
cmp qword [0x180157630], 0
je 0x18004bf07
cmp byte [rbp + 0x722], 0
je 0x18004bf07
movd xmm1, dword [0x1801583b0]
cvtdq2ps xmm1, xmm1
addss xmm1, dword [rsp + 0x74]
movd xmm0, dword [0x1801583c4]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [rsp + 0x70]
movss dword [rbp + 0x788], xmm0
movss dword [rbp + 0x78c], xmm1
movss xmm2, dword [0x1801583b8]
comiss xmm13, xmm2
ja 0x18004bf07
subss xmm2, xmm13
mov dword [rsp + 0x28], 0x1ff
movss xmm0, dword [0x1800a179c]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm15
lea rdx, [rbp + 0x788]
mov rcx, rdi
call fcn.180023ea0
movss dword [rsp + 0x28], xmm14
mov dword [rsp + 0x20], 1
mov r9d, 0xffffffff
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.180022450
mov dword [rdi + 0x78], 0
mov rdx, qword [rbp + 0x6f2]
cmp rdx, 0xf
jbe 0x18004bf44
inc rdx
mov rcx, qword [rbp + 0x6da]
cmp rdx, 0x1000
mov rax, rcx
jb 0x18004bf3f
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004bf9a
call fcn.1800656fc
movss xmm9, dword [0x1800a1844]
movsd xmm10, qword [0x1800a1750]
add rsi, 0x12e
cmp rsi, r15
je 0x18004bfa1
xor ebx, ebx
jmp 0x18004885c
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
movzx r8d, byte [0x1801583c9]
test r8b, r8b
je 0x18004bfb3
call fcn.180046060
cmp byte [0x180158415], 0
je 0x18004c152
movss xmm0, dword [0x1800aa180]
movss dword [rbp - 0x60], xmm0
movss xmm1, dword [0x1800aa184]
movss dword [rbp - 0x5c], xmm1
movss xmm0, dword [0x1800aa188]
movss dword [rbp - 0x58], xmm0
movss xmm1, dword [0x1800aa18c]
mov r8, qword [0x180157ed0]
mulss xmm1, dword [r8 + 0x37d0]
movss dword [rbp - 0x54], xmm1
lea rcx, [rbp - 0x60]
call fcn.1800036a0
mov ebx, eax
movss xmm8, dword [0x1800a179c]
test eax, 0xff000000
je 0x18004c08f
movss xmm2, dword [0x1800aa1c8]
comiss xmm13, xmm2
ja 0x18004c08f
subss xmm2, xmm13
mov dword [rsp + 0x28], 0x1ff
movss dword [rsp + 0x20], xmm8
xorps xmm3, xmm3
lea rdx, [rbp + 0x198]
mov rcx, rdi
call fcn.180023ea0
movss xmm7, dword [0x1800a16c8]
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.180022450
mov dword [rdi + 0x78], 0
mov r8, qword [0x180157ed0]
jmp 0x18004c097
movss xmm7, dword [0x1800a16c8]
cmp byte [0x1801583f1], 0
je 0x18004c152
movss xmm0, dword [0x1800aa1f0]
movss dword [rbp - 0x60], xmm0
movss xmm1, dword [0x1800aa1f4]
movss dword [rbp - 0x5c], xmm1
movss xmm0, dword [0x1800aa1f8]
movss dword [rbp - 0x58], xmm0
movss xmm1, dword [0x1800aa1fc]
mulss xmm1, dword [r8 + 0x37d0]
movss dword [rbp - 0x54], xmm1
lea rcx, [rbp - 0x60]
call fcn.1800036a0
mov ebx, eax
test eax, 0xff000000
je 0x18004c152
movss xmm2, dword [0x1800aa288]
comiss xmm13, xmm2
ja 0x18004c152
subss xmm2, xmm13
mov dword [rsp + 0x28], 0x1ff
movss dword [rsp + 0x20], xmm8
xorps xmm3, xmm3
lea rdx, [rbp + 0x198]
mov rcx, rdi
call fcn.180023ea0
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.180022450
mov dword [rdi + 0x78], 0
mov rcx, qword [rbp + 0xa00]
xor rcx, rsp
call fcn.180065490
lea r11, [rsp + 0xbb0]
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