Function at 0x140018550
Capabilities:
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 - 0x5f8]
sub rsp, 0x6d0
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 [0x1400bb010]
xor rax, rsp
mov qword [rbp + 0x520], rax
xor r14d, r14d
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
lea ecx, [r14 + 1]
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov rcx, qword [0x14022e9a8]
test rcx, rcx
je 0x14001861a
cmp dword [0x14022e9a0], r14d
je 0x14001861a
mov qword [rsp + 0x20], r14
lea r9d, [r14 + 8]
lea r8, [rbp + 0x4b0]
mov rdx, qword [0x14022f7b0]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x14001861a
mov rdx, qword [rbp + 0x4b0]
jmp 0x140018624
mov rdx, r14
mov qword [rbp + 0x4b0], rdx
mov rcx, qword [0x14022e9a8]
test rcx, rcx
je 0x140018666
cmp dword [0x14022e9a0], r14d
je 0x140018666
add rdx, 8
mov qword [rsp + 0x20], r14
mov r9d, 8
lea r8, [rbp + 0x4a8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x140018666
mov rdi, qword [rbp + 0x4a8]
mov qword [rbp + 0x10], rdi
jmp 0x140018674
mov rdi, r14
mov qword [rbp + 0x10], r14
mov qword [rbp + 0x4a8], r14
mov rcx, qword [0x14022e9a8]
test rcx, rcx
je 0x1400186b5
cmp dword [0x14022e9a0], r14d
je 0x1400186b5
mov qword [rsp + 0x20], r14
mov r9d, 8
lea r8, [rbp + 0x480]
mov rdx, qword [0x14022f7b8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x1400186b5
mov rdx, qword [rbp + 0x480]
jmp 0x1400186bf
mov rdx, r14
mov qword [rbp + 0x480], rdx
cmp byte [0x14022fbc0], r14b
je 0x14001a842
test rdx, rdx
je 0x14001a842
mov rcx, qword [0x14022e9a8]
test rcx, rcx
je 0x140018713
cmp dword [0x14022e9a0], r14d
je 0x140018713
add rdx, 0x18
mov qword [rsp + 0x20], r14
mov r9d, 8
lea r8, [rbp + 0x478]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x140018713
mov rbx, qword [rbp + 0x478]
jmp 0x14001871d
mov rbx, r14
mov qword [rbp + 0x478], rbx
mov rcx, qword [0x14022e9a8]
test rcx, rcx
je 0x14001875e
cmp dword [0x14022e9a0], r14d
je 0x14001875e
lea rdx, [rbx + 0x100]
mov qword [rsp + 0x20], r14
mov r9d, 8
lea r8, [rbp + 0x450]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x14001875e
mov r13, qword [rbp + 0x450]
jmp 0x140018768
mov r13, r14
mov qword [rbp + 0x450], r14
mov rcx, qword [0x14022e9a8]
test rcx, rcx
je 0x1400187ae
cmp dword [0x14022e9a0], r14d
je 0x1400187ae
lea rdx, [rbx + 0x108]
mov qword [rsp + 0x20], r14
mov r9d, 4
lea r8, [rbp + 0x470]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x1400187ae
mov r12, qword [rbp + 0x470]
mov qword [rsp + 0x78], r12
jmp 0x1400187ba
mov qword [rsp + 0x78], r14
mov qword [rbp + 0x470], r14
mov r12d, r14d
cmp dword [rsp + 0x78], r14d
jle 0x14001a842
movabs rbx, 0x8000000000000000
movabs rsi, 0x4328578a10c32d56
movss xmm7, dword [0x1400aa4e0]
xorps xmm10, xmm10
movss xmm14, dword [0x1400aa324]
movss xmm15, dword [0x1400aa354]
movss xmm13, dword [0x1400aa3ac]
test r13, r13
je 0x14001a7be
mov rcx, qword [0x14022e9a8]
test rcx, rcx
je 0x140018852
cmp dword [0x14022e9a0], 0
je 0x140018852
mov eax, r12d
shl eax, 4
movsxd rdx, eax
add rdx, r13
mov qword [rsp + 0x20], r14
mov r9d, 8
lea r8, [rbp + 0x468]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x140018852
mov r15, qword [rbp + 0x468]
jmp 0x14001885c
mov r15, r14
mov qword [rbp + 0x468], r14
test r15, r15
je 0x14001a7be
cmp r15, rdi
je 0x14001a7be
mov rdx, qword [0x14022e7d0]
add rdx, r15
mov rcx, qword [0x14022e9a8]
test rcx, rcx
je 0x1400188a9
cmp dword [0x14022e9a0], 0
je 0x1400188a9
mov qword [rsp + 0x20], r14
mov r9d, 4
lea r8, [rbp + 0x4c0]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
jne 0x1400188b0
mov qword [rbp + 0x4c0], r14
movss xmm6, dword [rbp + 0x4c0]
movss dword [rsp + 0x58], xmm6
mov rdx, qword [0x14022e7b8]
add rdx, r15
mov rcx, qword [0x14022e9a8]
test rcx, rcx
je 0x1400188f9
cmp dword [0x14022e9a0], 0
je 0x1400188f9
mov qword [rsp + 0x20], r14
mov r9d, 4
lea r8, [rbp + 0x460]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
jne 0x140018900
mov qword [rbp + 0x460], r14
movss xmm0, dword [rbp + 0x460]
movss dword [rsp + 0x54], xmm0
mov ecx, 0x4e
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x14001897a
mov dword [rbp + 0x400], 0x42ca0000
cmp qword [0x14022e9a8], 0
je 0x14001897a
cmp dword [0x14022e9a0], 0
je 0x14001897a
xor eax, eax
movaps xmm0, xmm6
comiss xmm0, xmm7
jb 0x140018953
subss xmm0, xmm7
comiss xmm0, xmm7
jae 0x140018953
mov rax, rbx
cvttss2si rdx, xmm0
add rdx, rax
mov qword [rsp + 0x20], r14
mov r9d, 4
lea r8, [rbp + 0x400]
mov rcx, qword [0x14022e9a8]
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x14022fbc2], 0
je 0x14001898f
ucomiss xmm6, xmm10
jp 0x14001898f
je 0x14001a7be
cmp byte [0x14022fbc1], 0
je 0x1400189ed
mov rdx, qword [0x14022e7b0]
add rdx, r15
mov rcx, qword [0x14022e9a8]
test rcx, rcx
je 0x140018d87
cmp dword [0x14022e9a0], 0
je 0x140018d87
mov qword [rsp + 0x20], r14
mov r9d, 8
lea r8, [rbp + 0x458]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x140018d87
cmp qword [rbp + 0x458], 0
je 0x14001a7be
mov rcx, qword [0x14022e9a8]
test rcx, rcx
je 0x140018a25
cmp dword [0x14022e9a0], 0
je 0x140018a25
lea rdx, [rdi + 0x90]
mov qword [rsp + 0x20], r14
mov r9d, 0xc
lea r8, [rbp + 0x438]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
jne 0x140018a2c
mov qword [rbp + 0x438], r14
mov rcx, qword [0x14022e9a8]
test rcx, rcx
je 0x140018a64
cmp dword [0x14022e9a0], 0
je 0x140018a64
lea rdx, [r15 + 0x90]
mov qword [rsp + 0x20], r14
mov r9d, 0xc
lea r8, [rbp + 0x428]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
jne 0x140018a6b
mov qword [rbp + 0x428], r14
movss xmm11, dword [rbp + 0x440]
movss xmm8, dword [rbp + 0x430]
subss xmm11, xmm8
movss xmm10, dword [rbp + 0x43c]
movss xmm7, dword [rbp + 0x42c]
subss xmm10, xmm7
movss xmm12, dword [rbp + 0x438]
movss xmm6, dword [rbp + 0x428]
subss xmm12, xmm6
movaps xmm0, xmm8
addss xmm0, xmm14
subss xmm8, xmm15
movss dword [rbp + 0xf0], xmm6
movss dword [rbp + 0xf4], xmm7
movss dword [rbp + 0xf8], xmm0
lea r8, [rbp + 0xf0]
lea rdx, [rbp + 0x58]
lea rcx, [0x14022f710]
call fcn.140016480
movss dword [rbp + 0x100], xmm6
movss dword [rbp + 0x104], xmm7
movss dword [rbp + 0x108], xmm8
lea r8, [rbp + 0x100]
lea rdx, [rsp + 0x48]
lea rcx, [0x14022f710]
call fcn.140016480
movss xmm7, dword [rsp + 0x4c]
movaps xmm0, xmm7
movss xmm14, dword [rbp + 0x5c]
subss xmm0, xmm14
divss xmm0, xmm13
movss xmm9, dword [rsp + 0x48]
movaps xmm15, xmm9
subss xmm15, xmm0
movaps xmm13, xmm9
addss xmm13, xmm0
movss dword [rsp + 0x50], xmm7
movss xmm5, dword [0x1400aa2b0]
comiss xmm5, xmm13
ja 0x14001a7d1
cvtps2pd xmm0, xmm7
movsd xmm4, qword [0x1400aa360]
comisd xmm4, xmm0
ja 0x14001a7d1
mov rax, qword [0x14022e7e8]
movss xmm2, dword [rax + 0x10]
comiss xmm13, xmm2
ja 0x14001a7d1
movss xmm1, dword [rax + 0x14]
comiss xmm7, xmm1
ja 0x14001a7d1
comiss xmm5, xmm15
ja 0x14001a7d1
cvtps2pd xmm0, xmm14
comisd xmm4, xmm0
ja 0x14001a7d1
comiss xmm15, xmm2
ja 0x14001a7d1
comiss xmm14, xmm1
ja 0x14001a7d1
cmp byte [0x14022fbc4], 0
je 0x140018c88
mov rax, qword [rax + 0x4b58]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140035f00
mov rbx, rax
movss xmm0, dword [0x14022fb30]
movss xmm1, dword [0x14022fb34]
movss xmm2, dword [0x14022fb38]
mov rcx, qword [0x14022e7e8]
movss dword [rbp + 0x1a0], xmm0
movss dword [rbp + 0x1a4], xmm1
movss dword [rbp + 0x1a8], xmm2
movss xmm0, dword [0x14022fb3c]
mulss xmm0, dword [rcx + 0x38e8]
movss dword [rbp + 0x1ac], xmm0
lea rcx, [rbp + 0x1a0]
call fcn.140031c70
movss dword [rbp - 0x28], xmm13
movss dword [rbp - 0x24], xmm7
movss dword [rbp - 0x20], xmm15
movss dword [rbp - 0x1c], xmm14
mov dword [rsp + 0x28], r14d
xorps xmm8, xmm8
movss dword [rsp + 0x20], xmm8
mov r9d, eax
lea r8, [rbp - 0x28]
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.140057fa0
cmp byte [0x14022fbc3], 0
je 0x14001908f
mov rax, qword [0x14022e7e8]
mov rax, qword [rax + 0x4b58]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140035f00
mov rbx, rax
movss xmm0, dword [0x14022fb2c]
subss xmm0, dword [0x1400aa300]
mov rdi, qword [0x14022e7e8]
mov qword [rbp + 0x190], 0
mov dword [rbp + 0x198], 0
mulss xmm0, dword [rdi + 0x38e8]
movss dword [rbp + 0x19c], xmm0
lea rcx, [rbp + 0x190]
call fcn.140031c70
mov esi, eax
movaps xmm1, xmm13
movss xmm6, dword [0x1400aa340]
addss xmm1, xmm6
movaps xmm0, xmm7
addss xmm0, xmm6
movaps xmm3, xmm15
subss xmm3, xmm6
movaps xmm2, xmm14
subss xmm2, xmm6
test eax, 0xff000000
je 0x140018e03
mov dword [rsp + 0x20], r14d
mov rcx, rbx
test byte [rbx + 0x30], 1
je 0x140018d93
movss xmm6, dword [0x1400aa2fc]
subss xmm0, xmm6
subss xmm1, xmm6
movss dword [rbp - 0x18], xmm1
movss dword [rbp - 0x14], xmm0
addss xmm2, xmm6
addss xmm3, xmm6
movss dword [rbp - 0x10], xmm3
movss dword [rbp - 0xc], xmm2
xorps xmm3, xmm3
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x10]
call fcn.140057830
movss xmm6, dword [0x1400aa340]
jmp 0x140018dd7
mov qword [rbp + 0x458], r14
jmp 0x14001a7be
subss xmm0, dword [0x1400aa2f8]
subss xmm1, dword [0x1400aa2f8]
movss dword [rbp - 8], xmm1
movss dword [rbp - 4], xmm0
addss xmm2, dword [0x1400aa2fc]
addss xmm3, dword [0x1400aa2fc]
movss dword [rbp], xmm3
movss dword [rbp + 4], xmm2
xorps xmm3, xmm3
lea r8, [rbp - 8]
lea rdx, [rbp]
call fcn.140057830
movss dword [rsp + 0x28], xmm6
mov dword [rsp + 0x20], 1
mov r9d, esi
mov r8d, dword [rbx + 0x50]
mov rdx, qword [rbx + 0x58]
mov rcx, rbx
call fcn.140055a60
mov dword [rbx + 0x50], r14d
mov rdi, qword [0x14022e7e8]
mov rax, qword [rdi + 0x4b58]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140035f00
mov rbx, rax
movss xmm0, dword [0x14022fb2c]
subss xmm0, dword [0x1400aa300]
mov rdi, qword [0x14022e7e8]
mov qword [rbp + 0x180], 0
mov dword [rbp + 0x188], 0
mulss xmm0, dword [rdi + 0x38e8]
movss dword [rbp + 0x18c], xmm0
lea rcx, [rbp + 0x180]
call fcn.140031c70
mov esi, eax
movaps xmm1, xmm13
subss xmm1, xmm6
movaps xmm0, xmm7
subss xmm0, xmm6
movaps xmm3, xmm15
addss xmm3, xmm6
movaps xmm2, xmm14
addss xmm2, xmm6
test eax, 0xff000000
je 0x140018f46
mov dword [rsp + 0x20], r14d
mov rcx, rbx
test byte [rbx + 0x30], 1
je 0x140018ed6
movss xmm4, dword [0x1400aa2fc]
subss xmm0, xmm4
subss xmm1, xmm4
movss dword [rbp + 8], xmm1
movss dword [rbp + 0xc], xmm0
addss xmm2, xmm4
addss xmm3, xmm4
movss dword [rbp - 0x58], xmm3
movss dword [rbp - 0x54], xmm2
lea r8, [rbp + 8]
lea rdx, [rbp - 0x58]
jmp 0x140018f12
subss xmm0, dword [0x1400aa2f8]
subss xmm1, dword [0x1400aa2f8]
movss dword [rbp + 0x18], xmm1
movss dword [rbp + 0x1c], xmm0
addss xmm2, dword [0x1400aa2fc]
addss xmm3, dword [0x1400aa2fc]
movss dword [rbp + 0x20], xmm3
movss dword [rbp + 0x24], xmm2
lea r8, [rbp + 0x18]
lea rdx, [rbp + 0x20]
xorps xmm3, xmm3
call fcn.140057830
movss dword [rsp + 0x28], xmm6
mov dword [rsp + 0x20], 1
mov r9d, esi
mov r8d, dword [rbx + 0x50]
mov rdx, qword [rbx + 0x58]
mov rcx, rbx
call fcn.140055a60
mov dword [rbx + 0x50], r14d
mov rdi, qword [0x14022e7e8]
mov rax, qword [rdi + 0x4b58]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140035f00
mov rbx, rax
movss xmm0, dword [0x14022fb20]
movss xmm1, dword [0x14022fb24]
movss xmm2, dword [0x14022fb28]
mov rcx, qword [0x14022e7e8]
movss dword [rbp + 0x170], xmm0
movss dword [rbp + 0x174], xmm1
movss dword [rbp + 0x178], xmm2
movss xmm0, dword [0x14022fb2c]
mulss xmm0, dword [rcx + 0x38e8]
movss dword [rbp + 0x17c], xmm0
lea rcx, [rbp + 0x170]
call fcn.140031c70
mov edi, eax
movss xmm8, dword [0x1400aa2fc]
test eax, 0xff000000
je 0x140019083
movaps xmm2, xmm15
addss xmm2, xmm8
movaps xmm1, xmm7
movaps xmm0, xmm13
mov dword [rsp + 0x20], r14d
xorps xmm3, xmm3
mov rcx, rbx
test byte [rbx + 0x30], 1
je 0x140019024
subss xmm1, xmm8
subss xmm0, xmm8
movss dword [rbp + 0x28], xmm0
movss dword [rbp + 0x2c], xmm1
movaps xmm1, xmm14
addss xmm1, xmm8
movss dword [rbp + 0x30], xmm2
movss dword [rbp + 0x34], xmm1
lea r8, [rbp + 0x28]
lea rdx, [rbp + 0x30]
jmp 0x140019059
subss xmm1, dword [0x1400aa2f8]
subss xmm0, dword [0x1400aa2f8]
movss dword [rbp + 0x38], xmm0
movss dword [rbp + 0x3c], xmm1
movaps xmm1, xmm14
addss xmm1, xmm8
movss dword [rbp + 0x40], xmm2
movss dword [rbp + 0x44], xmm1
lea r8, [rbp + 0x38]
lea rdx, [rbp + 0x40]
call fcn.140057830
movss dword [rsp + 0x28], xmm6
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [rbx + 0x50]
mov rdx, qword [rbx + 0x58]
mov rcx, rbx
call fcn.140055a60
mov dword [rbx + 0x50], r14d
movabs rsi, 0x4328578a10c32d56
jmp 0x1400190a0
movss xmm8, dword [0x1400aa2fc]
movss xmm6, dword [0x1400aa340]
cmp byte [0x14022fbc7], 0
je 0x140019167
mov rax, qword [0x14022e7e8]
mov rax, qword [rax + 0x4b58]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140035f00
mov rdi, rax
movss xmm0, dword [0x14022fb60]
movss xmm1, dword [0x14022fb64]
movss xmm2, dword [0x14022fb68]
mov rbx, qword [0x14022e7e8]
movss dword [rbp + 0x160], xmm0
movss dword [rbp + 0x164], xmm1
movss dword [rbp + 0x168], xmm2
movss xmm0, dword [0x14022fb6c]
mulss xmm0, dword [rbx + 0x38e8]
movss dword [rbp + 0x16c], xmm0
lea rcx, [rbp + 0x160]
call fcn.140031c70
movss xmm1, dword [rbx + 0x14]
movss xmm0, dword [rbx + 0x10]
mulss xmm0, xmm8
movss dword [rbp + 0x48], xmm0
movss dword [rbp + 0x4c], xmm1
movss dword [rbp + 0x50], xmm9
movss dword [rbp + 0x54], xmm7
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x50]
mov rcx, rdi
call fcn.140057d40
cmp byte [0x14022fbc5], 0
je 0x1400195db
mov edx, r12d
lea rcx, [rbp + 0x2d0]
call fcn.140005050
mov rdx, rax
movabs rax, 0xfee557d1b625ce86
mov qword [rsp + 0x40], rax
mov rcx, qword [rsp + 0x40]
mov qword [rbp + 0x70], rcx
mov qword [rsp + 0x40], rsi
mov rcx, qword [rsp + 0x40]
mov qword [rbp + 0x78], rcx
movabs rbx, 0xfee577ebf26ceedd
mov qword [rsp + 0x40], rbx
mov rcx, qword [rsp + 0x40]
mov qword [rbp + 0x4f0], rcx
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x4f8], rax
movdqa xmm0, xmmword [rbp + 0x70]
pxor xmm0, xmmword [rbp + 0x4f0]
movdqa xmmword [rbp + 0x70], xmm0
lea rax, [rbp + 0x70]
mov r9, 0xffffffffffffffff
inc r9
cmp byte [rax + r9], 0
jne 0x1400191f5
lea r8, [rbp + 0x70]
mov rcx, rdx
call fcn.1400204a0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x4d0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x4e0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rbp + 0x2e8]
cmp rdx, 0x10
jb 0x140019270
inc rdx
mov rcx, qword [rbp + 0x2d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001926b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001a7e0
call fcn.140099710
mov qword [rbp + 0x2e0], r14
mov qword [rbp + 0x2e8], 0xf
mov byte [rbp + 0x2d0], 0
movabs rax, 0xfee577ebf26cb3fd
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x130], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x138], rax
mov qword [rsp + 0x40], rbx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x500], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x508], rax
movdqa xmm0, xmmword [rbp + 0x130]
pxor xmm0, xmmword [rbp + 0x500]
movdqa xmmword [rbp + 0x130], xmm0
lea r8, [rbp + 0x130]
lea rdx, [rbp + 0x4d0]
lea rcx, [rbp + 0x488]
call fcn.14001d710
nop
lea r8, [rbp + 0x488]
mov rdi, qword [rbp + 0x488]
mov rsi, qword [rbp + 0x4a0]
cmp rsi, 0x10
cmovae r8, rdi
mov rbx, qword [0x14022e7e8]
mov rcx, r8
cmp r8, 0xffffffffffffffff
jae 0x140019354
movzx edx, byte [rcx]
test dl, dl
je 0x140019354
lea rax, [rcx + 1]
cmp dl, 0x23
jne 0x14001934b
cmp byte [rax], dl
je 0x140019354
mov rcx, rax
cmp rax, 0xffffffffffffffff
jb 0x140019337
movss xmm7, dword [rbx + 0x3d60]
cmp r8, rcx
jne 0x140019366
xorps xmm6, xmm6
jmp 0x1400193cd
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], r8
movss xmm0, dword [0x1400aa508]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x1400aa4e4]
movaps xmm2, xmm7
lea rdx, [rsp + 0x60]
mov rcx, qword [rbx + 0x3d58]
call fcn.14005faf0
movss xmm0, dword [rsp + 0x60]
addss xmm0, dword [0x1400aa338]
cvttss2si eax, xmm0
movd xmm6, eax
cvtdq2ps xmm6, xmm6
movss dword [rsp + 0x60], xmm6
movss xmm7, dword [rsp + 0x64]
mov rsi, qword [rbp + 0x4a0]
mov rdi, qword [rbp + 0x488]
movss xmm0, dword [0x14022fb40]
movss xmm1, dword [0x14022fb44]
movss xmm2, dword [0x14022fb48]
movss dword [rbp + 0x1b0], xmm0
movss dword [rbp + 0x1b4], xmm1
movss dword [rbp + 0x1b8], xmm2
movss xmm0, dword [0x14022fb4c]
mulss xmm0, dword [rbx + 0x38e8]
movss dword [rbp + 0x1bc], xmm0
lea rcx, [rbp + 0x1b0]
call fcn.140031c70
mov ebx, eax
movss xmm1, dword [rbp + 0x5c]
subss xmm1, xmm7
subss xmm1, dword [0x1400aa380]
mulss xmm6, xmm8
movss xmm9, dword [rsp + 0x48]
movaps xmm0, xmm9
subss xmm0, xmm6
movss dword [rbp + 0x60], xmm0
movss dword [rbp + 0x64], xmm1
lea rdx, [rbp + 0x488]
cmp rsi, 0x10
cmovae rdx, rdi
xorps xmm0, xmm0
movups xmmword [rbp + 0x110], xmm0
mov qword [rbp + 0x120], r14
mov qword [rbp + 0x128], r14
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x140019480
lea rcx, [rbp + 0x110]
call fcn.140004d70
nop
mov rax, qword [0x14022e7e8]
mov byte [rsp + 0x28], 0
mov dword [rsp + 0x20], ebx
movss xmm3, dword [0x1400aa3f0]
lea r8, [rbp + 0x60]
lea rdx, [rbp + 0x110]
mov rcx, qword [rax + 0x3d58]
call fcn.14000da10
nop
mov rdx, qword [rbp + 0x128]
cmp rdx, 0x10
jb 0x140019508
inc rdx
mov rcx, qword [rbp + 0x110]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140019503
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001a7e7
call fcn.140099710
mov qword [rbp + 0x120], r14
mov qword [rbp + 0x128], 0xf
mov byte [rbp + 0x110], 0
mov rdx, qword [rbp + 0x4a0]
cmp rdx, 0x10
jb 0x140019562
inc rdx
mov rcx, qword [rbp + 0x488]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001955d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001a7ee
call fcn.140099710
mov qword [rbp + 0x498], r14
mov qword [rbp + 0x4a0], 0xf
mov byte [rbp + 0x488], 0
mov rdx, qword [rbp + 0x4e8]
cmp rdx, 0x10
jb 0x1400195bc
inc rdx
mov rcx, qword [rbp + 0x4d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400195b7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001a7f5
call fcn.140099710
mov qword [rbp + 0x4e0], r14
mov qword [rbp + 0x4e8], 0xf
mov byte [rbp + 0x4d0], 0
movss xmm7, dword [rsp + 0x4c]
xorps xmm6, xmm6
xorps xmm8, xmm8
cmp byte [0x14022fbc6], 0
je 0x1400199a2
mov rdx, qword [0x14022e7d8]
add rdx, r15
mov rcx, qword [0x14022e9a8]
test rcx, rcx
je 0x140019633
cmp dword [0x14022e9a0], 0
je 0x140019633
mov qword [rsp + 0x20], r14
mov r9d, 8
lea r8, [rbp + 0x448]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x140019633
mov rdx, qword [rbp + 0x448]
jmp 0x14001963d
mov rdx, r14
mov qword [rbp + 0x448], rdx
test rdx, rdx
je 0x1400199a2
mov rcx, qword [0x14022e9a8]
test rcx, rcx
je 0x140019684
cmp dword [0x14022e9a0], 0
je 0x140019684
add rdx, 0x20
mov qword [rsp + 0x20], r14
mov r9d, 8
lea r8, [rbp + 0x4c8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x140019684
mov rdx, qword [rbp + 0x4c8]
jmp 0x14001968e
mov rdx, r14
mov qword [rbp + 0x4c8], rdx
test rdx, rdx
je 0x1400199a2
mov rcx, qword [0x14022e9a8]
test rcx, rcx
je 0x1400196d5
cmp dword [0x14022e9a0], 0
je 0x1400196d5
add rdx, 0x10
mov qword [rsp + 0x20], r14
mov r9d, 8
lea r8, [rbp + 0x4b8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x1400196d5
mov rax, qword [rbp + 0x4b8]
jmp 0x1400196df
mov rax, r14
mov qword [rbp + 0x4b8], rax
mov ecx, eax
call fcn.14000d200
xorps xmm0, xmm0
movups xmmword [rbp + 0x408], xmm0
mov qword [rbp + 0x418], r14
mov qword [rbp + 0x420], r14
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x140019705
mov rdx, rax
lea rcx, [rbp + 0x408]
call fcn.140004d70
nop
lea r8, [rbp + 0x408]
mov rdi, qword [rbp + 0x408]
mov rsi, qword [rbp + 0x420]
cmp rsi, 0x10
cmovae r8, rdi
mov rbx, qword [0x14022e7e8]
mov rcx, r8
cmp r8, 0xffffffffffffffff
jae 0x14001976d
nop dword [rax]
movzx edx, byte [rcx]
test dl, dl
je 0x14001976d
lea rax, [rcx + 1]
cmp dl, 0x23
jne 0x140019764
cmp byte [rax], dl
je 0x14001976d
mov rcx, rax
cmp rax, 0xffffffffffffffff
jb 0x140019750
movss xmm8, dword [rbx + 0x3d60]
cmp r8, rcx
je 0x1400197e4
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], r8
movss xmm0, dword [0x1400aa508]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x1400aa4e4]
movaps xmm2, xmm8
lea rdx, [rsp + 0x68]
mov rcx, qword [rbx + 0x3d58]
call fcn.14005faf0
movss xmm0, dword [rsp + 0x68]
addss xmm0, dword [0x1400aa338]
cvttss2si eax, xmm0
movd xmm6, eax
cvtdq2ps xmm6, xmm6
movss dword [rsp + 0x68], xmm6
movss xmm8, dword [rsp + 0x6c]
mov rsi, qword [rbp + 0x420]
mov rdi, qword [rbp + 0x408]
movss xmm3, dword [0x14022fb70]
movss xmm0, dword [0x14022fb74]
movss xmm1, dword [0x14022fb78]
movss xmm2, dword [0x14022fb7c]
shufps xmm3, xmm3, 0xe1
movss xmm3, xmm0
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm1
shufps xmm3, xmm3, 0x27
movss xmm3, xmm2
shufps xmm3, xmm3, 0x39
movups xmmword [rbp + 0x2c0], xmm3
mulss xmm2, dword [rbx + 0x38e8]
movss dword [rbp + 0x2cc], xmm2
lea rcx, [rbp + 0x2c0]
call fcn.140031c70
mov ebx, eax
movaps xmm0, xmm8
mulss xmm0, dword [0x1400aa2fc]
addss xmm0, xmm7
mulss xmm6, dword [0x1400aa2fc]
subss xmm9, xmm6
movss dword [rbp + 0x90], xmm9
movss dword [rbp + 0x94], xmm0
lea rdx, [rbp + 0x408]
cmp rsi, 0x10
cmovae rdx, rdi
xorps xmm0, xmm0
movups xmmword [rbp + 0x1f0], xmm0
mov qword [rbp + 0x200], r14
mov qword [rbp + 0x208], r14
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x1400198a1
lea rcx, [rbp + 0x1f0]
call fcn.140004d70
nop
mov rax, qword [0x14022e7e8]
mov byte [rsp + 0x28], 0
mov dword [rsp + 0x20], ebx
movss xmm3, dword [0x1400aa3f0]
lea r8, [rbp + 0x90]
lea rdx, [rbp + 0x1f0]
mov rcx, qword [rax + 0x3d58]
call fcn.14000da10
nop
mov rdx, qword [rbp + 0x208]
cmp rdx, 0x10
jb 0x14001992c
inc rdx
mov rcx, qword [rbp + 0x1f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140019927
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001a7fc
call fcn.140099710
mov qword [rbp + 0x200], r14
mov qword [rbp + 0x208], 0xf
mov byte [rbp + 0x1f0], 0
mov rdx, qword [rbp + 0x420]
cmp rdx, 0x10
jb 0x140019986
inc rdx
mov rcx, qword [rbp + 0x408]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140019981
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001a803
call fcn.140099710
mov qword [rbp + 0x418], r14
mov qword [rbp + 0x420], 0xf
mov byte [rbp + 0x408], 0
xorps xmm6, xmm6
cmp byte [0x14022fbd0], 0
je 0x140019e6b
mulss xmm10, xmm10
mulss xmm12, xmm12
addss xmm10, xmm12
mulss xmm11, xmm11
addss xmm10, xmm11
xorps xmm0, xmm0
ucomiss xmm0, xmm10
ja 0x1400199db
xorps xmm0, xmm0
sqrtss xmm0, xmm10
jmp 0x1400199e4
movaps xmm0, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
cvttss2si edx, xmm0
movabs rax, 0xfee577ebf26c83fd
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x80], rax
movabs rcx, 0x4328578a10c32d56
mov qword [rsp + 0x40], rcx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x88], rax
movabs rax, 0xfee577ebf26ceedd
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x510], rax
mov qword [rsp + 0x40], rcx
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x518], rax
movdqa xmm0, xmmword [rbp + 0x80]
pxor xmm0, xmmword [rbp + 0x510]
movdqa xmmword [rbp + 0x80], xmm0
lea rcx, [rbp + 0x2f0]
call fcn.140005050
nop
xor r9d, r9d
lea r8, [0x1400a0f51]
mov rcx, rax
call fcn.1400204a0
xorps xmm0, xmm0
movups xmmword [rbp + 0xd0], xmm0
mov qword [rbp + 0xe0], r14
mov qword [rbp + 0xe8], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xd0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xe0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rax, [rbp + 0x80]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140019ad0
lea rdx, [rbp + 0x80]
lea rcx, [rbp + 0xd0]
call fcn.1400099e0
xorps xmm0, xmm0
movups xmmword [rbp + 0x3e0], xmm0
mov qword [rbp + 0x3f0], r14
mov qword [rbp + 0x3f8], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x3e0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x3f0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rbp + 0xe8]
cmp rdx, 0x10
jb 0x140019b6a
inc rdx
mov rcx, qword [rbp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140019b65
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001a80a
call fcn.140099710
mov qword [rbp + 0xe0], r14
mov qword [rbp + 0xe8], 0xf
mov byte [rbp + 0xd0], 0
mov rdx, qword [rbp + 0x308]
cmp rdx, 0x10
jb 0x140019bc4
inc rdx
mov rcx, qword [rbp + 0x2f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140019bbf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001a811
call fcn.140099710
mov qword [rbp + 0x300], r14
mov qword [rbp + 0x308], 0xf
mov byte [rbp + 0x2f0], 0
lea r8, [rbp + 0x3e0]
mov rdi, qword [rbp + 0x3e0]
mov rsi, qword [rbp + 0x3f8]
cmp rsi, 0x10
cmovae r8, rdi
mov rbx, qword [0x14022e7e8]
mov rcx, r8
cmp r8, 0xffffffffffffffff
jae 0x140019c2d
nop word [rax + rax]
movzx edx, byte [rcx]
test dl, dl
je 0x140019c2d
lea rax, [rcx + 1]
cmp dl, 0x23
jne 0x140019c24
cmp byte [rax], dl
je 0x140019c2d
mov rcx, rax
cmp rax, 0xffffffffffffffff
jb 0x140019c10
movss xmm7, dword [rbx + 0x3d60]
cmp r8, rcx
je 0x140019ca1
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], r8
movss xmm0, dword [0x1400aa508]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x1400aa4e4]
movaps xmm2, xmm7
lea rdx, [rsp + 0x70]
mov rcx, qword [rbx + 0x3d58]
call fcn.14005faf0
movss xmm0, dword [rsp + 0x70]
addss xmm0, dword [0x1400aa338]
cvttss2si eax, xmm0
movd xmm6, eax
cvtdq2ps xmm6, xmm6
movss dword [rsp + 0x70], xmm6
movss xmm7, dword [rsp + 0x74]
mov rsi, qword [rbp + 0x3f8]
mov rdi, qword [rbp + 0x3e0]
movss xmm0, dword [0x14022fb50]
movss xmm1, dword [0x14022fb54]
movss xmm2, dword [0x14022fb58]
movss dword [rbp + 0x1c0], xmm0
movss dword [rbp + 0x1c4], xmm1
movss dword [rbp + 0x1c8], xmm2
movss xmm0, dword [0x14022fb5c]
mulss xmm0, dword [rbx + 0x38e8]
movss dword [rbp + 0x1cc], xmm0
lea rcx, [rbp + 0x1c0]
call fcn.140031c70
mov ebx, eax
mulss xmm8, dword [0x1400aa2fc]
addss xmm8, dword [rsp + 0x4c]
addss xmm8, xmm7
addss xmm8, dword [0x1400aa380]
mulss xmm6, dword [0x1400aa2fc]
movss xmm0, dword [rsp + 0x48]
subss xmm0, xmm6
movss dword [rbp + 0x98], xmm0
movss dword [rbp + 0x9c], xmm8
lea rdx, [rbp + 0x3e0]
cmp rsi, 0x10
cmovae rdx, rdi
xorps xmm0, xmm0
movups xmmword [rbp + 0x210], xmm0
mov qword [rbp + 0x220], r14
mov qword [rbp + 0x228], r14
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x140019d66
lea rcx, [rbp + 0x210]
call fcn.140004d70
nop
mov rax, qword [0x14022e7e8]
mov byte [rsp + 0x28], 0
mov dword [rsp + 0x20], ebx
movss xmm11, dword [0x1400aa3f0]
movaps xmm3, xmm11
lea r8, [rbp + 0x98]
lea rdx, [rbp + 0x210]
mov rcx, qword [rax + 0x3d58]
call fcn.14000da10
nop
mov rdx, qword [rbp + 0x228]
cmp rdx, 0x10
jb 0x140019df6
inc rdx
mov rcx, qword [rbp + 0x210]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140019df1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001a818
call fcn.140099710
mov qword [rbp + 0x220], r14
mov qword [rbp + 0x228], 0xf
mov byte [rbp + 0x210], 0
mov rdx, qword [rbp + 0x3f8]
cmp rdx, 0x10
jb 0x140019e50
inc rdx
mov rcx, qword [rbp + 0x3e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140019e4b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001a81f
call fcn.140099710
mov qword [rbp + 0x3f0], r14
mov qword [rbp + 0x3f8], 0xf
mov byte [rbp + 0x3e0], 0
jmp 0x140019e74
movss xmm11, dword [0x1400aa3f0]
movss xmm6, dword [rsp + 0x58]
cvttss2si esi, xmm6
cvttss2si r14d, dword [rsp + 0x54]
movss xmm8, dword [rsp + 0x50]
movss xmm12, dword [0x1400aa398]
movaps xmm7, xmm8
subss xmm7, xmm14
cmp byte [0x14022fbd3], 0
je 0x14001a01c
divss xmm6, dword [0x1400aa484]
mulss xmm6, xmm7
movaps xmm0, xmm15
subss xmm0, xmm12
cvttss2si edi, xmm0
mov rax, qword [0x14022e7e8]
mov rax, qword [rax + 0x4b58]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140035f00
mov rbx, rax
movaps xmm0, xmmword [0x1400aa830]
movups xmmword [rbp + 0x380], xmm0
lea rcx, [rbp + 0x380]
call fcn.140031c70
lea ecx, [rdi - 1]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xa0], xmm0
movaps xmm1, xmm8
movss xmm9, dword [0x1400aa340]
addss xmm1, xmm9
movss dword [rbp + 0xa4], xmm1
lea ecx, [rdi - 5]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xa8], xmm0
movaps xmm1, xmm14
subss xmm1, xmm9
movss dword [rbp + 0xac], xmm1
mov dword [rsp + 0x28], 0
xorps xmm10, xmm10
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rbp + 0xa0]
lea rdx, [rbp + 0xa8]
mov rcx, rbx
call fcn.140057fa0
mov rax, qword [0x14022e7e8]
mov rax, qword [rax + 0x4b58]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140035f00
mov rbx, rax
movaps xmm0, xmmword [0x1400aa870]
movups xmmword [rbp + 0x390], xmm0
lea rcx, [rbp + 0x390]
call fcn.140031c70
lea ecx, [rdi - 2]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xb0], xmm0
movss dword [rbp + 0xb4], xmm8
lea ecx, [rdi - 4]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xb8], xmm0
movaps xmm1, xmm8
subss xmm1, xmm6
movss dword [rbp + 0xbc], xmm1
xor edi, edi
mov dword [rsp + 0x28], edi
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rbp + 0xb0]
lea rdx, [rbp + 0xb8]
mov rcx, rbx
call fcn.140057fa0
jmp 0x14001a02b
movss xmm9, dword [0x1400aa340]
xorps xmm10, xmm10
xor edi, edi
cmp byte [0x14022fbd1], 0
je 0x14001a194
mov eax, 0x51eb851f
imul r14d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movd xmm6, edx
cvtdq2ps xmm6, xmm6
mulss xmm6, xmm7
subss xmm15, xmm12
cvttss2si edi, xmm15
mov rax, qword [0x14022e7e8]
mov rax, qword [rax + 0x4b58]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140035f00
mov rbx, rax
movaps xmm0, xmmword [0x1400aa830]
movups xmmword [rbp + 0x3a0], xmm0
lea rcx, [rbp + 0x3a0]
call fcn.140031c70
lea ecx, [rdi - 8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xc0], xmm0
movaps xmm1, xmm8
addss xmm1, xmm9
movss dword [rbp + 0xc4], xmm1
lea ecx, [rdi - 0xc]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xc8], xmm0
movaps xmm1, xmm14
subss xmm1, xmm9
movss dword [rbp + 0xcc], xmm1
mov dword [rsp + 0x28], 0
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rbp + 0xc0]
lea rdx, [rbp + 0xc8]
mov rcx, rbx
call fcn.140057fa0
mov rax, qword [0x14022e7e8]
mov rax, qword [rax + 0x4b58]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140035f00
mov rbx, rax
movaps xmm0, xmmword [0x1400aaa60]
movups xmmword [rbp + 0x350], xmm0
lea rcx, [rbp + 0x350]
call fcn.140031c70
lea ecx, [rdi - 9]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x80], xmm0
movss dword [rbp - 0x7c], xmm8
lea ecx, [rdi - 0xb]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x78], xmm0
subss xmm8, xmm6
movss dword [rbp - 0x74], xmm8
xor edi, edi
mov dword [rsp + 0x28], edi
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rbp - 0x80]
lea rdx, [rbp - 0x78]
mov rcx, rbx
call fcn.140057fa0
cmp byte [0x14022fbd4], 0
je 0x14001a30c
movaps xmm0, xmmword [0x1400aa870]
movups xmmword [rbp + 0x360], xmm0
lea rcx, [rbp + 0x360]
call fcn.140031c70
mov ebx, eax
movss xmm6, dword [0x1400aa3b0]
addss xmm13, xmm6
movss dword [rbp - 0x70], xmm13
movss dword [rbp - 0x6c], xmm14
mov edx, esi
lea rcx, [rbp + 0x310]
call fcn.140005050
nop
cmp qword [rax + 0x18], 0x10
jb 0x14001a1ef
mov rax, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0x140], xmm0
mov qword [rbp + 0x150], rdi
mov qword [rbp + 0x158], rdi
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x14001a210
mov rdx, rax
lea rcx, [rbp + 0x140]
call fcn.140004d70
nop
mov rax, qword [0x14022e7e8]
mov byte [rsp + 0x28], 0
mov dword [rsp + 0x20], ebx
movaps xmm3, xmm11
lea r8, [rbp - 0x70]
lea rdx, [rbp + 0x140]
mov rcx, qword [rax + 0x3d58]
call fcn.14000da10
nop
mov rdx, qword [rbp + 0x158]
cmp rdx, 0x10
jb 0x14001a297
inc rdx
mov rcx, qword [rbp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001a292
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001a826
call fcn.140099710
mov qword [rbp + 0x150], rdi
mov qword [rbp + 0x158], 0xf
mov byte [rbp + 0x140], 0
mov rdx, qword [rbp + 0x328]
cmp rdx, 0x10
jb 0x14001a2f1
inc rdx
mov rcx, qword [rbp + 0x310]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001a2ec
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001a82d
call fcn.140099710
mov qword [rbp + 0x320], rdi
mov qword [rbp + 0x328], 0xf
mov byte [rbp + 0x310], 0
jmp 0x14001a319
movss xmm6, dword [0x1400aa3b0]
addss xmm13, xmm6
cmp byte [0x14022fbd2], 0
je 0x14001a49b
movaps xmm0, xmmword [0x1400aaa70]
movups xmmword [rbp + 0x370], xmm0
lea rcx, [rbp + 0x370]
call fcn.140031c70
mov ebx, eax
movss dword [rbp - 0x68], xmm13
addss xmm14, dword [0x1400aa3e4]
addss xmm14, xmm6
movss dword [rbp - 0x64], xmm14
mov edx, r14d
lea rcx, [rbp + 0x330]
call fcn.140005050
nop
cmp qword [rax + 0x18], 0x10
jb 0x14001a376
mov rax, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0x230], xmm0
xor r14d, r14d
mov qword [rbp + 0x240], r14
mov qword [rbp + 0x248], r14
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], r14b
jne 0x14001a3a0
mov rdx, rax
lea rcx, [rbp + 0x230]
call fcn.140004d70
nop
mov rax, qword [0x14022e7e8]
mov byte [rsp + 0x28], 0
mov dword [rsp + 0x20], ebx
movaps xmm3, xmm11
lea r8, [rbp - 0x68]
lea rdx, [rbp + 0x230]
mov rcx, qword [rax + 0x3d58]
call fcn.14000da10
nop
mov rdx, qword [rbp + 0x248]
cmp rdx, 0x10
jb 0x14001a426
inc rdx
mov rcx, qword [rbp + 0x230]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001a421
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001a834
call fcn.140099710
mov qword [rbp + 0x240], r14
mov qword [rbp + 0x248], 0xf
mov byte [rbp + 0x230], 0
mov rdx, qword [rbp + 0x348]
cmp rdx, 0x10
jb 0x14001a480
inc rdx
mov rcx, qword [rbp + 0x330]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001a47b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001a83b
call fcn.140099710
mov qword [rbp + 0x340], r14
mov qword [rbp + 0x348], 0xf
mov byte [rbp + 0x330], 0
jmp 0x14001a49e
xor r14d, r14d
cmp byte [0x14022fbc9], 0
je 0x14001a5dd
xor r8d, r8d
mov rdx, r15
lea rcx, [rbp + 0x2a0]
call fcn.14000d8a0
movsd xmm0, qword [rbp + 0x2a0]
movsd qword [rbp + 0x2b0], xmm0
mov eax, dword [rbp + 0x2a8]
mov dword [rbp + 0x2b8], eax
lea r8, [rbp + 0x2b0]
lea rdx, [rbp - 0x60]
lea rcx, [0x14022f710]
call fcn.140016480
mov rax, qword [0x14022e7e8]
mov rcx, qword [rax + 0x4b58]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rcx]
call fcn.140035f00
mov rbx, rax
movss xmm0, dword [0x14022fb90]
movss xmm1, dword [0x14022fb94]
movss xmm2, dword [0x14022fb98]
movss dword [rbp + 0x1e0], xmm0
movss dword [rbp + 0x1e4], xmm1
movss dword [rbp + 0x1e8], xmm2
movss xmm0, dword [0x14022fb9c]
mov rcx, qword [0x14022e7e8]
mulss xmm0, dword [rcx + 0x38e8]
movss dword [rbp + 0x1ec], xmm0
lea rcx, [rbp + 0x1e0]
call fcn.140031c70
mov edi, eax
movss xmm0, dword [rbp - 0x60]
movss dword [rbp - 0x50], xmm0
movss xmm1, dword [rbp - 0x5c]
movss dword [rbp - 0x4c], xmm1
movss xmm13, dword [0x1400aa3ac]
test eax, 0xff000000
je 0x14001a5e6
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movaps xmm2, xmm13
lea rdx, [rbp - 0x50]
mov rcx, rbx
call fcn.140056ef0
mov r8d, dword [rbx + 0x50]
dec r8d
mov dword [rbx + 0x50], r8d
movss dword [rsp + 0x28], xmm9
mov dword [rsp + 0x20], 1
mov r9d, edi
mov rdx, qword [rbx + 0x58]
mov rcx, rbx
call fcn.140055a60
mov dword [rbx + 0x50], r14d
jmp 0x14001a5e6
movss xmm13, dword [0x1400aa3ac]
cmp byte [0x14022fbc8], 0
je 0x14001a790
movdqa xmm0, xmmword [0x1400aa630]
movdqu xmmword [rbp + 0x3b0], xmm0
movdqa xmm1, xmmword [0x1400aa640]
movdqu xmmword [rbp + 0x3c0], xmm1
movdqa xmm0, xmmword [0x1400aa610]
movdqu xmmword [rbp + 0x3d0], xmm0
mov rdi, r14
nop word [rax + rax]
mov r8d, dword [rbp + rdi*8 + 0x3b0]
mov rdx, r15
lea rcx, [rbp + 0x250]
call fcn.14000d8a0
mov r8d, dword [rbp + rdi*8 + 0x3b4]
mov rdx, r15
lea rcx, [rbp + 0x270]
call fcn.14000d8a0
movsd xmm0, qword [rbp + 0x250]
movsd qword [rbp + 0x260], xmm0
mov eax, dword [rbp + 0x258]
mov dword [rbp + 0x268], eax
lea r8, [rbp + 0x260]
lea rdx, [rbp - 0x40]
lea rcx, [0x14022f710]
call fcn.140016480
movsd xmm0, qword [rbp + 0x270]
movsd qword [rbp + 0x280], xmm0
mov eax, dword [rbp + 0x278]
mov dword [rbp + 0x288], eax
lea r8, [rbp + 0x280]
lea rdx, [rbp - 0x48]
lea rcx, [0x14022f710]
call fcn.140016480
mov rax, qword [0x14022e7e8]
mov rcx, qword [rax + 0x4b58]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rcx]
call fcn.140035f00
mov rbx, rax
movss xmm0, dword [0x14022fb80]
movss xmm1, dword [0x14022fb84]
movss xmm2, dword [0x14022fb88]
movss dword [rbp + 0x1d0], xmm0
movss dword [rbp + 0x1d4], xmm1
movss dword [rbp + 0x1d8], xmm2
movss xmm0, dword [0x14022fb8c]
mov rcx, qword [0x14022e7e8]
mulss xmm0, dword [rcx + 0x38e8]
movss dword [rbp + 0x1dc], xmm0
movss xmm0, dword [rbp - 0x48]
movss dword [rbp - 0x38], xmm0
movss xmm1, dword [rbp - 0x44]
movss dword [rbp - 0x34], xmm1
movss xmm0, dword [rbp - 0x40]
movss dword [rbp - 0x30], xmm0
movss xmm1, dword [rbp - 0x3c]
movss dword [rbp - 0x2c], xmm1
lea rcx, [rbp + 0x1d0]
call fcn.140031c70
mov r9d, eax
movss dword [rsp + 0x20], xmm9
lea r8, [rbp - 0x38]
lea rdx, [rbp - 0x30]
mov rcx, rbx
call fcn.140057d40
inc rdi
cmp rdi, 6
jl 0x14001a630
movabs rbx, 0x8000000000000000
movabs rsi, 0x4328578a10c32d56
movss xmm15, dword [0x1400aa354]
movss xmm14, dword [0x1400aa324]
movss xmm7, dword [0x1400aa4e0]
inc r12d
cmp r12d, dword [rsp + 0x78]
jge 0x14001a842
mov rdi, qword [rbp + 0x10]
jmp 0x140018803
xorps xmm10, xmm10
movss xmm13, dword [0x1400aa3ac]
jmp 0x14001a7a4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, qword [rbp + 0x520]
xor rcx, rsp
call fcn.1400996f0
lea r11, [rsp + 0x6d0]
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