Function at 0x14003f610
Capabilities:
Encode data using xor
Hash data using fnv
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x2f8]
sub rsp, 0x3c0
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm15
mov rax, qword [0x1401ef0c0]
xor rax, rsp
mov qword [rbp + 0x230], rax
mov qword [rbp + 0xc0], r8
mov rdi, rdx
mov qword [rbp - 0x30], rdx
mov r15, rcx
mov qword [rbp + 0x190], rdx
xor r14d, r14d
mov dword [rsp + 0x5c], r14d
lea rcx, [rbp + 0x68]
call fcn.140039970
lea r8, [rbp + 0x68]
lea rdx, [rbp - 0x78]
mov rcx, qword [0x140273d10]
call fcn.1400ec5b0
lea rcx, [rbp + 0x1b8]
call fcn.140037de0
lea rcx, [rbp + 0x1b8]
call fcn.14004a600
nop
lea rcx, [rbp + 0x1f0]
call fcn.140037de0
lea rcx, [rbp + 0x1f0]
call fcn.140010660
nop
mov rcx, r15
call fcn.140039ad0
mov dword [rbp + 0x1b0], eax
lea r8, [rbp + 0x1b0]
lea rdx, [rbp - 0x70]
lea rcx, [0x140271ce0]
call fcn.140033bf0
xorps xmm10, xmm10
mov rcx, qword [0x140271ce0]
cmp qword [rax], rcx
jne 0x14003f73e
mov rcx, r15
call fcn.140039ad0
mov dword [rsp + 0x68], eax
mov dword [rsp + 0x6c], r14d
lea r8, [rsp + 0x68]
lea rdx, [rsp + 0x70]
lea rcx, [0x140271ce0]
call fcn.140036460
mov rcx, r15
call fcn.140039ad0
mov qword [rsp + 0x40], rax
lea r8, [rsp + 0x40]
lea rdx, [rbp - 0x70]
lea rcx, [0x140271cc0]
call fcn.14004a640
mov rcx, qword [0x140271cc0]
cmp qword [rax], rcx
jne 0x14003f796
mov rcx, r15
call fcn.140039ad0
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], r14
lea r8, [rsp + 0x70]
lea rdx, [rbp + 0x220]
lea rcx, [0x140271cc0]
call fcn.14002a7d0
mov rcx, r15
call fcn.140039ad0
mov qword [rsp + 0x40], rax
lea r8, [rsp + 0x40]
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x1b8]
call fcn.14004a640
mov esi, 1
mov rcx, qword [rbp + 0x1b8]
cmp qword [rax], rcx
jne 0x14003f876
mov rcx, r15
call fcn.140039ad0
mov qword [rsp + 0x40], rax
lea rdx, [0x1401beef6]
lea rcx, [rbp + 0x1d0]
call fcn.140008b20
nop
lea rax, [rbp + 0x1d0]
mov qword [rsp + 0x70], rax
lea rax, [rbp + 0x1f0]
mov qword [rsp + 0x78], rax
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x58]
call fcn.140026030
nop
lea r8, [rbp - 0x58]
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 8]
call fcn.14004ab00
nop
lea r8, [rbp + 8]
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x1b8]
call fcn.14004ab30
nop
lea rcx, [rbp + 0x10]
call fcn.140008d70
nop
lea rcx, [rbp - 0x58]
call fcn.140008d70
nop
lea r9, [fcn.140008a80]
mov r8d, esi
lea edx, [rsi + 0x1f]
lea rcx, [rbp + 0x1d0]
call fcn.14015d7bc
mov rcx, r15
call fcn.140039ad0
mov dword [rbp + 0x1b0], eax
lea r8, [rbp + 0x1b0]
lea rdx, [rbp - 0x70]
lea rcx, [0x140271cd0]
call fcn.14004a910
mov rcx, qword [0x140271cd0]
cmp qword [rax], rcx
jne 0x14003f8e2
mov rcx, r15
call fcn.140039ad0
mov qword [rsp + 0x40], rax
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x70]
call fcn.14004ac50
nop
lea r8, [rbp + 0x70]
lea rdx, [rsp + 0x70]
lea rcx, [0x140271cd0]
call fcn.14004ac90
nop
lea rcx, [rbp + 0x78]
call fcn.140008e00
mov rcx, r15
call fcn.140039ad0
mov dword [rbp + 0x1b0], eax
lea r8, [rbp + 0x1b0]
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x1f0]
call fcn.140033bf0
mov rcx, qword [rbp + 0x1f0]
cmp qword [rax], rcx
jne 0x14003f93d
mov rcx, r15
call fcn.140039ad0
mov dword [rsp + 0x68], eax
mov dword [rsp + 0x6c], 0xffffffec
lea r8, [rsp + 0x68]
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x1f0]
call fcn.140036460
movss xmm9, dword [rbp - 0x74]
addss xmm9, dword [0x1401cb018]
movss dword [rbp - 0x74], xmm9
mov rax, qword [0x140273d10]
cvttss2si ecx, dword [rax + 0x238]
add ecx, 0xffffffd5
mov ebx, 0x12c
cmp ecx, ebx
cmovl ebx, ecx
mov dword [rsp + 0x64], ebx
call fcn.1400ec4d0
mov r9, rax
movd xmm6, ebx
cvtdq2ps xmm6, xmm6
movss dword [rbp - 0x60], xmm6
mov dword [rbp - 0x5c], 0x41980000
mov dword [rsp + 0x68], 0
mov dword [rsp + 0x6c], 0x41900000
lea r8, [rsp + 0x68]
lea rdx, [rbp - 0x70]
lea rcx, [rbp - 0x78]
call fcn.1400ec5e0
lea r8, [rbp - 0x60]
mov rdx, rax
mov rcx, r9
call fcn.1400ec460
test al, al
je 0x14003fa0c
call fcn.1400ec4d0
mov r10, rax
mov r8, qword [0x140273d10]
lea rdx, [r8 + 0x238]
lea rcx, [rbp - 0x28]
call fcn.1400ec540
mov r9, rax
lea rdx, [r8 + 0x230]
lea rcx, [rsp + 0x40]
call fcn.1400ec540
mov r8, r9
mov rdx, rax
mov rcx, r10
call fcn.1400ec460
test al, al
mov byte [rsp + 0x54], 1
jne 0x14003fa11
mov byte [rsp + 0x54], 0
call fcn.1400ec4d0
mov r9, rax
movss dword [rsp + 0x68], xmm6
movss xmm8, dword [0x1401cb120]
mov dword [rsp + 0x6c], 0x43a00000
lea rdx, [rbp - 0x78]
lea rcx, [rbp - 0x70]
call fcn.1400ec540
lea r8, [rsp + 0x68]
mov rdx, rax
mov rcx, r9
call fcn.1400ec460
test al, al
je 0x14003fa9c
call fcn.1400ec4d0
mov r9, rax
mov r10, qword [0x140273d10]
lea rdx, [r10 + 0x238]
lea rcx, [rbp - 0x28]
call fcn.1400ec540
mov r8, rax
lea rdx, [r10 + 0x230]
lea rcx, [rsp + 0x40]
call fcn.1400ec540
mov rdx, rax
mov rcx, r9
call fcn.1400ec460
test al, al
je 0x14003faa3
mov byte [rbp + 0x1a0], 1
jmp 0x14003faaa
mov r10, qword [0x140273d10]
mov byte [rbp + 0x1a0], 0
mov dword [rsp + 0x20], 0xff
mov edx, 0x12
mov r9d, edx
mov r8d, edx
lea rcx, [rsp + 0x60]
call fcn.14000b000
movzx ecx, byte [rax + 3]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x1b0]
call fcn.14000b000
lea rdx, [rbp - 0x78]
lea rcx, [rbp - 0x70]
call fcn.1400ec540
mov rbx, rax
mov ecx, dword [rbp + 0x1b0]
mov dword [rbp + 0x1b0], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x1b0]
call fcn.140081000
mov rcx, rax
call fcn.140053cc0
movss xmm3, dword [rbx + 4]
movaps xmm2, xmm3
addss xmm2, xmm8
movss xmm1, dword [rbx]
movaps xmm0, xmm1
addss xmm0, xmm6
movss dword [rsp + 0x68], xmm0
movss dword [rsp + 0x6c], xmm2
movss dword [rbp - 0x60], xmm1
movss dword [rbp - 0x5c], xmm3
mov dword [rsp + 0x28], r14d
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rsp + 0x68]
lea rdx, [rbp - 0x60]
mov rcx, r10
call fcn.140073900
movss dword [rsp + 0x68], xmm6
mov dword [rsp + 0x6c], 0x439f0000
movaps xmm1, xmm9
movss xmm15, dword [0x1401caf0c]
addss xmm1, xmm15
movss xmm13, dword [rbp - 0x78]
movss dword [rbp - 0x60], xmm13
movss dword [rbp - 0x5c], xmm1
mov r8b, 1
lea rdx, [rsp + 0x68]
lea rcx, [rbp - 0x60]
call fcn.140082dc0
xor r12b, r12b
mov dword [rbp + 0x1b0], r12d
xor r13b, r13b
mov dword [rsp + 0x50], r13d
mov r9d, r14d
mov dword [rsp + 0x58], r14d
mov r8, qword [rdi]
mov rcx, qword [rdi + 8]
sub rcx, r8
movabs rax, 0x4bda12f684bda13
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
movss xmm11, dword [0x1401cb01c]
add rdx, rax
je 0x14004039e
mov rax, r14
mov r13, r14
movss xmm6, dword [0x1401cb118]
cmp qword [r8 + r13], 0
je 0x140040355
cmp byte [r8 + r13 + 0x13c], 0
jne 0x140040355
imul r12, rax, 0x1b0
lea rdx, [r8 + 0x158]
add rdx, r12
lea rcx, [rbp + 0x200]
call fcn.140008b60
nop
lea rsi, [rbp + 0x200]
cmp qword [rbp + 0x218], 0xf
jbe 0x14003fc84
mov rsi, qword [rbp + 0x200]
mov rbx, qword [rbp + 0x210]
add rbx, rsi
mov rdi, rsi
jmp 0x14003fc99
lea rbx, [rbp + 0x200]
add rbx, qword [rbp + 0x210]
lea rdi, [rbp + 0x200]
cmp rdi, rbx
je 0x14003fcb4
sub rsi, rdi
movsx ecx, byte [rdi]
call fcn.1401697c8
mov byte [rdi + rsi], al
inc rdi
cmp rdi, rbx
jne 0x14003fca1
mov rcx, r15
call fcn.140039ad0
mov dword [rbp - 0x38], eax
lea rdx, [rbp - 0x38]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rdx, rax
lea rcx, [rbp + 0x1d0]
call fcn.140008b60
nop
lea rdx, [rbp - 8]
lea rcx, [rbp + 0x1d0]
call fcn.14003b890
mov rdi, qword [rax]
lea rdx, [rbp - 0x10]
lea rcx, [rbp + 0x1d0]
call fcn.14003b870
mov rbx, qword [rax]
lea rdx, [rbp]
lea rcx, [rbp + 0x1d0]
call fcn.14003b890
lea rcx, [fcn.1401697c8]
mov qword [rsp + 0x20], rcx
mov r9, rdi
mov r8, rbx
mov rdx, qword [rax]
lea rcx, [rbp + 0x40]
call fcn.14003b920
lea rdx, [rbp + 0x1d0]
lea rcx, [rbp + 0x200]
call fcn.14004aa60
cmp rax, 0xffffffffffffffff
jne 0x14003fd80
cmp qword [rbp + 0x1e0], 0
jbe 0x14003fd80
lea rcx, [rbp + 0x1d0]
call fcn.140008e00
nop
lea rcx, [rbp + 0x200]
call fcn.140008e00
mov r12d, dword [rbp + 0x1b0]
mov esi, 1
jmp 0x140040350
mov rcx, r15
call fcn.140039ad0
mov qword [rbp - 0x28], rax
lea rdx, [rbp - 0x28]
lea rcx, [rbp + 0x1b8]
call fcn.14004a500
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rcx]
add rdx, 0x158
add rdx, r12
mov rcx, rax
call fcn.140025f00
mov rcx, r15
call fcn.140039ad0
mov dword [rbp - 0x80], eax
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x1f0]
call fcn.140039750
add dword [rax], 0x14
mov rcx, r15
call fcn.140039ad0
mov qword [rbp - 0x70], rax
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x1b8]
call fcn.14004a500
mov rsi, qword [rax + 8]
mov rdi, qword [rax]
mov rcx, r15
call fcn.140039ad0
mov dword [rbp + 0x1a8], eax
mov rcx, r15
call fcn.140039ad0
mov dword [rbp + 0x198], eax
lea rdx, [rbp + 0x1a8]
lea rcx, [rbp + 0x1f0]
call fcn.140039750
mov ebx, dword [rax]
lea rdx, [rbp + 0x198]
call fcn.14004a960
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
addss xmm0, dword [rax]
mov dword [rbp + 0x118], 0
movss dword [rbp + 0x11c], xmm0
lea r8, [rbp + 0x118]
lea rdx, [rbp - 0x60]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
sub rsi, rdi
sar rsi, 5
mov eax, r14d
cmp rsi, 0x10
mov ecx, 0xfffffffa
cmova eax, ecx
add eax, dword [rsp + 0x64]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x68], xmm0
mov dword [rsp + 0x6c], 0x41a00000
movaps xmm1, xmm9
subss xmm1, xmm11
movss xmm2, dword [rbp - 0x5c]
comiss xmm2, xmm1
setae cl
addss xmm2, xmm11
movaps xmm0, xmm9
addss xmm0, xmm11
addss xmm0, xmm6
comiss xmm0, xmm2
setae al
test cl, cl
je 0x14004030a
test al, al
je 0x14004030a
cmp byte [rbp + 0x1a0], 0
je 0x1400400b2
call fcn.1400ec4d0
mov r9, rax
mov qword [rbp + 0x110], 0x40c00000
lea r8, [rbp + 0x110]
lea rdx, [rbp + 0xd0]
lea rcx, [rsp + 0x68]
call fcn.1400ec5e0
mov r8, rax
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x120]
call fcn.1400ec540
mov rdx, rax
mov rcx, r9
call fcn.1400ec460
test al, al
je 0x1400400b2
cmp byte [rsp + 0x54], 0
jne 0x1400400b2
call fcn.1400ec4d0
mov r9, rax
mov r10, qword [0x140273d10]
lea rdx, [r10 + 0x238]
lea rcx, [rbp + 0x128]
call fcn.1400ec540
mov r8, rax
lea rdx, [r10 + 0x230]
lea rcx, [rbp + 0xb0]
call fcn.1400ec540
mov rdx, rax
mov rcx, r9
call fcn.1400ec460
test al, al
je 0x1400400b9
cmp qword [r10 + 0x260], 0
jne 0x1400400b9
mov dword [rsp + 0x20], 0xff
mov edx, 0x12
mov r9d, edx
mov r8d, edx
lea rcx, [rbp - 0x34]
call fcn.14000b000
movzx ecx, byte [rax + 3]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp - 0x7c]
call fcn.14000b000
lea rdx, [rsp + 0x68]
lea rcx, [rbp + 0xe0]
call fcn.1400ec540
mov rdi, rax
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x50]
call fcn.1400ec540
mov rbx, rax
mov ecx, dword [rbp - 0x7c]
mov dword [rbp + 0x1c8], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 8]
lea rcx, [rbp + 0x1c8]
call fcn.140081000
mov rcx, rax
call fcn.140053cc0
movss xmm3, dword [rbx + 4]
movaps xmm2, xmm3
addss xmm2, dword [rdi + 4]
movss xmm1, dword [rbx]
movaps xmm0, xmm1
addss xmm0, dword [rdi]
movss dword [rbp + 0xf8], xmm0
movss dword [rbp + 0xfc], xmm2
movss dword [rbp + 0xf0], xmm1
movss dword [rbp + 0xf4], xmm3
mov dword [rsp + 0x28], r14d
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rbp + 0xf8]
lea rdx, [rbp + 0xf0]
mov rcx, r10
call fcn.140073900
call fcn.1400ec4d0
mov edx, 1
call fcn.1400ec4a0
test al, al
je 0x1400400b2
mov rax, qword [rbp - 0x30]
mov rdx, qword [rax]
add rdx, r12
mov rcx, qword [rbp + 0xc0]
call fcn.140006590
mov r10, qword [0x140273d10]
mov rax, qword [rbp - 0x30]
mov r11, qword [rax]
mov rax, qword [r11 + r13]
mov rcx, qword [rbp + 0xc0]
mov dword [rsp + 0x20], 0xff
cmp qword [rcx], rax
je 0x140040194
mov edx, 0xc8
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x60]
call fcn.14000b000
movzx ecx, byte [rax + 3]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp - 0x64]
call fcn.14000b000
mov dword [rbp + 0x98], 0x41200000
mov dword [rbp + 0x9c], 0x40800000
lea r8, [rbp + 0x98]
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x60]
call fcn.1400ec5b0
mov rbx, rax
lea rcx, [r11 + 0x158]
add rcx, r12
call fcn.140010830
mov rdx, rax
lea rcx, [rbp + 0x70]
call fcn.140008b20
mov r8d, dword [rbp - 0x64]
xor r9d, r9d
mov dword [rsp + 0x20], r14d
mov rdx, rbx
mov rcx, rax
call fcn.140082420
mov ebx, dword [rsp + 0x50]
mov r12d, dword [rbp + 0x1b0]
mov esi, 1
jmp 0x14004032c
mov edx, 0x12
mov r9d, edx
mov r8d, edx
lea rcx, [rbp - 0x20]
call fcn.14000b000
movzx ecx, byte [rax + 3]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp - 0x68]
call fcn.14000b000
lea rdx, [rsp + 0x68]
lea rcx, [rbp + 0x100]
call fcn.1400ec540
mov rdi, rax
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x220]
call fcn.1400ec540
mov rbx, rax
mov ecx, dword [rbp - 0x68]
mov dword [rbp + 0x1c8], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp - 0x58]
lea rcx, [rbp + 0x1c8]
call fcn.140081000
mov rcx, rax
call fcn.140053cc0
movss xmm3, dword [rbx + 4]
movaps xmm2, xmm3
addss xmm2, dword [rdi + 4]
movss xmm1, dword [rbx]
movaps xmm0, xmm1
addss xmm0, dword [rdi]
movss dword [rbp - 0x18], xmm0
movss dword [rbp - 0x14], xmm2
movss dword [rsp + 0x48], xmm1
movss dword [rsp + 0x4c], xmm3
mov dword [rsp + 0x28], r14d
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rbp - 0x18]
lea rdx, [rsp + 0x48]
mov rcx, r10
call fcn.140073900
mov rax, qword [0x140273d10]
mov rdx, qword [0x1402723e8]
movzx ecx, byte [rdx + 3]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [rax + 0x2f0]
cvttss2si eax, xmm0
movzx r9d, byte [rdx + 2]
movzx r8d, byte [rdx + 1]
movzx edx, byte [rdx]
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0x60]
call fcn.14000b000
mov dword [rsp + 0x40], 0x41200000
mov dword [rsp + 0x44], 0x40800000
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x60]
call fcn.1400ec5b0
mov rbx, rax
mov rax, qword [rbp - 0x30]
mov rcx, qword [rax]
add rcx, 0x158
add rcx, r12
call fcn.140010830
mov rdx, rax
lea rcx, [rbp + 0x70]
call fcn.140008b20
mov r8d, dword [rsp + 0x60]
jmp 0x14004016c
mov r12d, dword [rbp + 0x1b0]
movzx r12d, r12b
test al, al
mov esi, 1
cmove r12d, esi
mov ebx, dword [rsp + 0x50]
movzx ebx, bl
test cl, cl
cmove ebx, esi
mov dword [rbp + 0x1b0], r12d
mov dword [rsp + 0x50], ebx
lea rcx, [rbp + 0x1d0]
call fcn.140008e00
nop
lea rcx, [rbp + 0x200]
call fcn.140008e00
mov r9d, dword [rsp + 0x58]
inc r9d
mov dword [rsp + 0x58], r9d
add r13, 0x1b0
mov rax, qword [rbp - 0x30]
mov r8, qword [rax]
mov rcx, qword [rax + 8]
sub rcx, r8
movabs rax, 0x4bda12f684bda13
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, r9d
cmp rax, rdx
jb 0x14003fc25
mov r13d, dword [rsp + 0x50]
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov rdx, rsi
mov rcx, qword [rax]
call fcn.1400561d0
mov rdx, rax
mov eax, dword [rax + 0x58]
sub eax, 1
mov dword [rdx + 0x58], eax
jne 0x1400403d6
mov rcx, qword [rdx + 0x38]
add rcx, 0x1c
jmp 0x1400403e3
dec eax
movsxd rcx, eax
shl rcx, 4
add rcx, qword [rdx + 0x60]
movups xmm0, xmmword [rcx]
movups xmmword [rdx + 0x88], xmm0
mov rcx, rdx
call fcn.140070d50
mov rax, 0xffffffffffffffff
mov dword [rsp + 0x50], eax
mov dword [rsp + 0x58], eax
mov r8, qword [r15 + 0x10]
mov rdx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140040415
mov rdx, qword [r15]
movabs rsi, 0xcbf29ce484222325
mov rbx, rsi
mov rcx, r14
movabs r9, 0x100000001b3
test r8, r8
je 0x140040453
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
xor rbx, rax
imul rbx, r9
inc rcx
cmp rcx, r8
jb 0x140040440
mov rdi, qword [rbp + 0x1b8]
mov rax, qword [rdi + 8]
mov qword [rbp - 0x58], rax
mov dword [rbp - 0x50], r14d
mov rcx, rdi
cmp byte [rax + 0x19], 0
jne 0x140040497
nop
mov qword [rbp - 0x58], rax
cmp qword [rax + 0x20], rbx
jae 0x140040484
mov dword [rbp - 0x50], r14d
mov rax, qword [rax + 0x10]
jmp 0x140040491
mov dword [rbp - 0x50], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140040470
movabs r10, 0x3ffffffffffffff
cmp byte [rcx + 0x19], 0
jne 0x1400404b1
cmp rbx, qword [rcx + 0x20]
jae 0x14004053e
cmp qword [rbp + 0x1c0], r10
je 0x140043083
lea rax, [rbp + 0x1b8]
mov qword [rbp + 0x220], rax
mov qword [rbp + 0x228], r14
mov ecx, 0x40
call fcn.14015d780
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x28], r14
mov qword [rax + 0x30], r14
mov qword [rax + 0x38], r14
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rbp - 0x58]
movaps xmmword [rbp + 0x220], xmm0
mov r8, rax
lea rdx, [rbp + 0x220]
lea rcx, [rbp + 0x1b8]
call fcn.140009ba0
mov rcx, rax
mov rdi, qword [rbp + 0x1b8]
movabs r9, 0x100000001b3
movabs r10, 0x3ffffffffffffff
mov rax, qword [rcx + 0x30]
sub rax, qword [rcx + 0x28]
sar rax, 5
movss xmm6, dword [0x1401caf40]
cmp rax, 0x10
jbe 0x140040b27
mov r8, qword [r15 + 0x10]
mov rdx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x14004056d
mov rdx, qword [r15]
mov rbx, rsi
mov rcx, r14
test r8, r8
je 0x140040593
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor rbx, rax
imul rbx, r9
inc rcx
cmp rcx, r8
jb 0x140040580
mov rax, qword [rdi + 8]
mov qword [rbp - 0x58], rax
mov dword [rbp - 0x50], r14d
mov rcx, rdi
cmp byte [rax + 0x19], 0
jne 0x1400405d7
nop dword [rax + rax]
mov qword [rbp - 0x58], rax
cmp qword [rax + 0x20], rbx
jae 0x1400405c4
mov dword [rbp - 0x50], r14d
mov rax, qword [rax + 0x10]
jmp 0x1400405d1
mov dword [rbp - 0x50], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1400405b0
cmp byte [rcx + 0x19], 0
jne 0x1400405e3
cmp rbx, qword [rcx + 0x20]
jae 0x14004065c
cmp qword [rbp + 0x1c0], r10
je 0x140043089
lea rax, [rbp + 0x1b8]
mov qword [rbp + 0x100], rax
mov qword [rbp + 0x108], r14
mov ecx, 0x40
call fcn.14015d780
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x28], r14
mov qword [rax + 0x30], r14
mov qword [rax + 0x38], r14
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rbp - 0x58]
movaps xmmword [rbp + 0x100], xmm0
mov r8, rax
lea rdx, [rbp + 0x100]
lea rcx, [rbp + 0x1b8]
call fcn.140009ba0
mov rcx, rax
mov rdi, qword [rbp + 0x1b8]
mov rax, qword [rcx + 0x30]
sub rax, qword [rcx + 0x28]
sar rax, 5
lea rcx, [rax + 1]
lea rcx, [rcx + rcx*4]
shl rcx, 2
xorps xmm2, xmm2
test rcx, rcx
js 0x140040683
cvtsi2ss xmm2, rcx
jmp 0x140040698
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm2, rax
addss xmm2, xmm2
movss xmm0, dword [0x1401cb124]
movaps xmm1, xmm0
divss xmm1, xmm2
mulss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [rsp + 0x50], eax
mov r9, qword [r15 + 0x10]
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1400406c4
mov r8, qword [r15]
mov rcx, rsi
mov rdx, r14
movabs r10, 0x100000001b3
test r9, r9
je 0x1400406f4
nop dword [rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r10
inc rdx
cmp rdx, r9
jb 0x1400406e0
mov dword [rsp + 0x60], ecx
mov r8, qword [r15 + 0x10]
mov rdx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140040709
mov rdx, qword [r15]
mov rbx, rsi
mov rcx, r14
test r8, r8
je 0x140040733
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor rbx, rax
imul rbx, r10
inc rcx
cmp rcx, r8
jb 0x140040720
mov rax, qword [rdi + 8]
mov qword [rbp - 0x58], rax
mov dword [rbp - 0x50], r14d
mov rcx, rdi
cmp byte [rax + 0x19], 0
jne 0x140040777
nop dword [rax + rax]
mov qword [rbp - 0x58], rax
cmp qword [rax + 0x20], rbx
jae 0x140040764
mov dword [rbp - 0x50], r14d
mov rax, qword [rax + 0x10]
jmp 0x140040771
mov dword [rbp - 0x50], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140040750
cmp byte [rcx + 0x19], 0
jne 0x140040783
cmp rbx, qword [rcx + 0x20]
jae 0x1400407f3
movabs rax, 0x3ffffffffffffff
cmp qword [rbp + 0x1c0], rax
je 0x140043095
lea rax, [rbp + 0x1b8]
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x38], r14
mov ecx, 0x40
call fcn.14015d780
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x28], r14
mov qword [rax + 0x30], r14
mov qword [rax + 0x38], r14
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rbp - 0x58]
movaps xmmword [rbp + 0x30], xmm0
mov r8, rax
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x1b8]
call fcn.140009ba0
mov rcx, rax
mov rbx, qword [rcx + 0x30]
sub rbx, qword [rcx + 0x28]
sar rbx, 5
lea rdx, [rsp + 0x60]
call fcn.14004a960
movss xmm0, dword [rax]
movss xmm7, dword [0x1401cb910]
xorps xmm0, xmm7
lea rcx, [rbx + rbx*4]
shl rcx, 2
xorps xmm1, xmm1
test rcx, rcx
js 0x14004082f
cvtsi2ss xmm1, rcx
jmp 0x140040844
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
mulss xmm0, xmm8
comiss xmm0, xmm6
jbe 0x1400408d8
mov rcx, r15
call fcn.140039ad0
mov dword [rbp - 0x68], eax
mov rcx, r15
call fcn.140039ad0
mov qword [rbp - 0x70], rax
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x1b8]
call fcn.14004a500
mov rbx, qword [rax + 8]
sub rbx, qword [rax]
sar rbx, 5
lea rdx, [rbp - 0x68]
call fcn.14004a960
movss xmm0, dword [rax]
xorps xmm0, xmm7
lea rcx, [rbx + rbx*4]
shl rcx, 2
xorps xmm1, xmm1
test rcx, rcx
js 0x1400408b8
cvtsi2ss xmm1, rcx
divss xmm0, xmm1
mulss xmm0, xmm8
jmp 0x1400408db
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
mulss xmm0, xmm8
jmp 0x1400408db
movaps xmm0, xmm6
mov eax, 0x140
sub eax, dword [rsp + 0x50]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm1, xmm6
comiss xmm1, xmm0
jbe 0x140040b15
mov r9, qword [r15 + 0x10]
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140040909
mov r8, qword [r15]
mov rcx, rsi
mov rdx, r14
movabs r10, 0x100000001b3
test r9, r9
je 0x140040934
nop
movzx eax, byte [r8 + rdx]
xor rcx, rax
imul rcx, r10
inc rdx
cmp rdx, r9
jb 0x140040920
mov dword [rbp - 0x64], ecx
mov r8, qword [r15 + 0x10]
mov rdx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140040948
mov rdx, qword [r15]
mov rbx, rsi
mov rcx, r14
test r8, r8
je 0x140040973
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor rbx, rax
imul rbx, r10
inc rcx
cmp rcx, r8
jb 0x140040960
mov rdi, qword [rbp + 0x1b8]
mov rax, qword [rdi + 8]
mov qword [rbp - 0x58], rax
mov dword [rbp - 0x50], r14d
mov rcx, rdi
cmp byte [rax + 0x19], 0
jne 0x1400409b7
nop
mov qword [rbp - 0x58], rax
cmp qword [rax + 0x20], rbx
jae 0x1400409a4
mov dword [rbp - 0x50], r14d
mov rax, qword [rax + 0x10]
jmp 0x1400409b1
mov dword [rbp - 0x50], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140040990
cmp byte [rcx + 0x19], 0
jne 0x1400409c3
cmp rbx, qword [rcx + 0x20]
jae 0x140040a33
movabs rax, 0x3ffffffffffffff
cmp qword [rbp + 0x1c0], rax
je 0x140043095
lea rax, [rbp + 0x1b8]
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x38], r14
mov ecx, 0x40
call fcn.14015d780
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x28], r14
mov qword [rax + 0x30], r14
mov qword [rax + 0x38], r14
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rbp - 0x58]
movaps xmmword [rbp + 0x30], xmm0
mov r8, rax
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x1b8]
call fcn.140009ba0
mov rcx, rax
mov rbx, qword [rcx + 0x30]
sub rbx, qword [rcx + 0x28]
sar rbx, 5
lea rdx, [rbp - 0x64]
call fcn.14004a960
movss xmm0, dword [rax]
xorps xmm0, xmm7
lea rcx, [rbx + rbx*4]
shl rcx, 2
xorps xmm1, xmm1
test rcx, rcx
js 0x140040a66
cvtsi2ss xmm1, rcx
jmp 0x140040a7b
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
mulss xmm0, xmm8
comiss xmm0, xmm6
jbe 0x140040b18
mov rcx, r15
call fcn.140039ad0
mov dword [rbp + 0x1c8], eax
mov rcx, r15
call fcn.140039ad0
mov qword [rbp - 0x28], rax
lea rdx, [rbp - 0x28]
lea rcx, [rbp + 0x1b8]
call fcn.14004a500
mov rbx, qword [rax + 8]
sub rbx, qword [rax]
sar rbx, 5
lea rdx, [rbp + 0x1c8]
call fcn.14004a960
movss xmm6, dword [rax]
xorps xmm6, xmm7
lea rcx, [rbx + rbx*4]
shl rcx, 2
xorps xmm0, xmm0
test rcx, rcx
js 0x140040af5
cvtsi2ss xmm0, rcx
divss xmm6, xmm0
mulss xmm6, xmm8
jmp 0x140040b18
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm6, xmm0
mulss xmm6, xmm8
jmp 0x140040b18
movaps xmm6, xmm1
cvttss2si eax, xmm6
mov dword [rsp + 0x58], eax
mov rdi, qword [rbp + 0x1b8]
movabs rax, 0x7fffffffffffffff
lea rdx, [0x1401bef70]
cmp byte [rbp + 0x1a0], 0
jne 0x140040bf1
mov rcx, qword [r15 + 0x10]
sub rax, rcx
cmp rax, 1
jb 0x14004308f
mov r9, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140040b63
mov r9, qword [r15]
mov eax, 1
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0x130]
call fcn.140039850
nop
mov eax, 0x11
mov dword [rsp + 0x5c], eax
lea r8, [rbp + 0x130]
cmp qword [rbp + 0x148], 0xf
cmova r8, qword [rbp + 0x130]
mov rcx, rsi
mov rdx, r14
mov r9, qword [rbp + 0x140]
movabs r10, 0x100000001b3
test r9, r9
je 0x140040bd4
movzx eax, byte [r8 + rdx]
xor rcx, rax
imul rcx, r10
inc rdx
cmp rdx, r9
jb 0x140040bc0
mov rax, qword [0x140273d10]
cmp qword [rax + 0x260], rcx
jne 0x140040d19
mov rdi, qword [rbp + 0x1b8]
jmp 0x140040bfb
movabs r10, 0x100000001b3
mov r8, qword [r15 + 0x10]
mov rdx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140040c0c
mov rdx, qword [r15]
mov rbx, rsi
mov rcx, r14
test r8, r8
je 0x140040c33
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor rbx, rax
imul rbx, r10
inc rcx
cmp rcx, r8
jb 0x140040c20
mov rax, qword [rdi + 8]
mov qword [rbp - 0x58], rax
mov dword [rbp - 0x50], r14d
mov rcx, rdi
cmp byte [rax + 0x19], 0
jne 0x140040c77
nop dword [rax + rax]
mov qword [rbp - 0x58], rax
cmp qword [rax + 0x20], rbx
jae 0x140040c64
mov dword [rbp - 0x50], r14d
mov rax, qword [rax + 0x10]
jmp 0x140040c71
mov dword [rbp - 0x50], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140040c50
cmp byte [rcx + 0x19], 0
jne 0x140040c83
cmp rbx, qword [rcx + 0x20]
jae 0x140040cf3
movabs rax, 0x3ffffffffffffff
cmp qword [rbp + 0x1c0], rax
je 0x14004309b
lea rax, [rbp + 0x1b8]
mov qword [rbp + 0x50], rax
mov qword [rbp + 0x58], r14
mov ecx, 0x40
call fcn.14015d780
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x28], r14
mov qword [rax + 0x30], r14
mov qword [rax + 0x38], r14
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rbp - 0x58]
movaps xmmword [rbp + 0x50], xmm0
mov r8, rax
lea rdx, [rbp + 0x50]
lea rcx, [rbp + 0x1b8]
call fcn.140009ba0
mov rcx, rax
mov rax, qword [rcx + 0x30]
sub rax, qword [rcx + 0x28]
sar rax, 5
mov edi, dword [rsp + 0x58]
cmp rax, 0x10
jbe 0x140040d1d
cmp dword [rsp + 0x50], 0xffffffff
je 0x140040d1d
cmp edi, 0xffffffff
je 0x140040d1d
mov bl, 1
jmp 0x140040d1f
mov edi, dword [rsp + 0x58]
xor bl, bl
mov eax, dword [rsp + 0x5c]
test al, 1
je 0x140040d3a
and eax, 0xfffffffe
mov dword [rsp + 0x5c], eax
lea rcx, [rbp + 0x130]
call fcn.140008e00
mov rax, qword [0x140273d10]
test bl, bl
je 0x1400413a6
cmp qword [rax + 0x260], 0
jne 0x140040de1
call fcn.1400ec4d0
mov rax, qword [0x1402718d8]
movss xmm0, dword [rax + 0xe10]
comiss xmm0, xmm10
jbe 0x140040d90
mov rcx, r15
call fcn.140039ad0
mov dword [rbp - 0x7c], eax
lea rdx, [rbp - 0x7c]
call fcn.14004a960
movss xmm6, dword [rax]
addss xmm6, xmm11
jmp 0x140040dc3
call fcn.1400ec4d0
mov rax, qword [0x1402718d8]
comiss xmm10, dword [rax + 0xe10]
jbe 0x140040de1
mov rcx, r15
call fcn.140039ad0
mov dword [rbp - 0x7c], eax
lea rdx, [rbp - 0x7c]
call fcn.14004a960
movss xmm6, dword [rax]
subss xmm6, xmm11
mov rcx, r15
call fcn.140039ad0
mov dword [rbp + 0x198], eax
lea rdx, [rbp + 0x198]
call fcn.14004a960
movss dword [rax], xmm6
mov rdx, qword [0x140272c18]
test rdx, rdx
jne 0x140040e0a
lea ecx, [rdx + 8]
call fcn.14015d780
mov rdx, rax
mov qword [rbp + 0x50], rax
mov qword [rax], r14
mov dword [rax + 4], r14d
mov qword [0x140272c18], rax
movd xmm4, dword [rsp + 0x50]
cvtdq2ps xmm4, xmm4
mov ecx, dword [rsp + 0x64]
add ecx, 0xfffffffb
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
lea eax, [rdi + 1]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm9
addss xmm1, xmm13
movss xmm3, dword [rdx]
comiss xmm3, xmm1
jbe 0x140040e62
movss xmm2, dword [rdx + 4]
comiss xmm2, xmm0
jbe 0x140040e62
addss xmm1, dword [0x1401caf88]
comiss xmm1, xmm3
jbe 0x140040e62
addss xmm0, xmm4
comiss xmm0, xmm2
jbe 0x140040e62
mov cl, 1
jmp 0x140040e64
xor cl, cl
mov rax, qword [0x140273d10]
cmp qword [rax + 0x260], 0
jne 0x140040ecb
test cl, cl
je 0x140041178
call fcn.1400ec4d0
mov edx, 1
call fcn.1400ec3d0
test al, al
je 0x140041171
lea r8, [0x1401bef70]
mov rdx, r15
lea rcx, [rbp + 0x70]
call fcn.14003b8b0
mov rcx, rax
call fcn.140039ad0
mov rcx, qword [0x140273d10]
mov qword [rcx + 0x260], rax
lea rcx, [rbp + 0x70]
call fcn.140008e00
jmp 0x140041171
lea r8, [0x1401bef70]
mov rdx, r15
lea rcx, [rbp + 0x70]
call fcn.14003b8b0
mov rcx, rax
call fcn.140039ad0
mov rdi, rax
mov rcx, qword [0x140273d10]
mov rbx, qword [rcx + 0x260]
lea rcx, [rbp + 0x70]
call fcn.140008e00
cmp rbx, rdi
jne 0x140041171
call fcn.1400ec4d0
mov edx, 1
call fcn.1400ec3d0
test al, al
je 0x140041159
mov rcx, r15
call fcn.140039ad0
mov qword [rsp + 0x40], rax
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x1b8]
call fcn.14004a500
mov rcx, qword [rax + 8]
sub rcx, qword [rax]
sar rcx, 5
lea rax, [rcx + rcx*4]
lea rcx, [rax*4 + 0x128]
xorps xmm1, xmm1
test rcx, rcx
js 0x140040f64
cvtsi2ss xmm1, rcx
jmp 0x140040f79
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
movss xmm6, dword [0x1401cb19c]
movaps xmm0, xmm6
divss xmm0, xmm1
movss xmm2, dword [0x1401cb058]
comiss xmm0, xmm2
jbe 0x140040ff8
mov rcx, r15
call fcn.140039ad0
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x48]
lea rcx, [rbp + 0x1b8]
call fcn.14004a500
mov rcx, qword [rax + 8]
sub rcx, qword [rax]
sar rcx, 5
lea rax, [rcx + rcx*4]
lea rcx, [rax*4 + 0x128]
xorps xmm0, xmm0
test rcx, rcx
js 0x140040fdd
cvtsi2ss xmm0, rcx
divss xmm6, xmm0
jmp 0x140040ffb
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm6, xmm0
jmp 0x140040ffb
movaps xmm6, xmm2
mov edi, 4
mov rax, qword gs:[0x58]
mov rbx, qword [rax]
mov eax, dword [rdi + rbx]
cmp dword [0x140276bfc], eax
jle 0x140041043
lea rcx, [0x140276bfc]
call fcn.14015dba8
cmp dword [0x140276bfc], 0xffffffff
jne 0x140041043
mov qword [0x140276bb0], 0
lea rcx, [0x140276bfc]
call fcn.14015db3c
mov eax, dword [rdi + rbx]
cmp dword [0x140276bc0], eax
jle 0x14004107a
lea rcx, [0x140276bc0]
call fcn.14015dba8
cmp dword [0x140276bc0], 0xffffffff
jne 0x14004107a
mov qword [0x140276ba0], 0
lea rcx, [0x140276bc0]
call fcn.14015db3c
call fcn.1400ec4d0
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.1400ec540
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x50]
lea rcx, [0x140276bb0]
call fcn.1400ec5e0
movss xmm3, dword [rax + 4]
movss xmm2, dword [rax]
movss dword [0x140276ba0], xmm2
movss dword [0x140276ba4], xmm3
mov rcx, r15
call fcn.140039ad0
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x48]
lea rcx, [rbp + 0x1b8]
call fcn.14004a500
mov rcx, qword [rax + 8]
sub rcx, qword [rax]
sar rcx, 5
lea eax, [rcx + rcx*4]
shl eax, 2
cvttss2si edx, dword [0x140276ba4]
subss xmm8, xmm6
cvttss2si r9d, xmm8
mov dword [rsp + 0x28], eax
call fcn.14003f5d0
movaps xmm6, xmm0
mov rcx, r15
call fcn.140039ad0
mov dword [rbp + 0x1a8], eax
lea rdx, [rbp + 0x1a8]
call fcn.14004a960
addss xmm6, dword [rax]
movss dword [rax], xmm6
call fcn.1400ec4d0
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.1400ec540
movss xmm1, dword [rsp + 0x40]
movss dword [0x140276bb0], xmm1
movss xmm2, dword [rsp + 0x44]
movss dword [0x140276bb4], xmm2
jmp 0x140041171
mov dword [0x140272bcc], 0
mov rax, qword [0x140273d10]
mov qword [rax + 0x260], r14
mov rdx, qword [0x140272c18]
test rdx, rdx
jne 0x14004119a
lea ecx, [rdx + 8]
call fcn.14015d780
mov rdx, rax
mov qword [rbp + 0x50], rax
mov qword [rax], r14
mov dword [rax + 4], r14d
mov qword [0x140272c18], rax
movss xmm0, dword [rdx + 4]
movss dword [0x140272bcc], xmm0
mov rax, qword [0x140273d10]
mov byte [rax + 0x2ec], 1
mov dword [rbp - 0x80], r14d
mov r8, qword [r15 + 0x10]
mov rdx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1400411ca
mov rdx, qword [r15]
mov rbx, rsi
mov rcx, r14
test r8, r8
je 0x1400411fa
movabs r12, 0x100000001b3
nop
movzx eax, byte [rcx + rdx]
xor rbx, rax
imul rbx, r12
inc rcx
cmp rcx, r8
jb 0x1400411e0
mov r12d, dword [rbp + 0x1b0]
mov rdi, qword [rbp + 0x1b8]
mov rax, qword [rdi + 8]
mov qword [rbp - 0x58], rax
mov dword [rbp - 0x50], r14d
mov rcx, rdi
cmp byte [rax + 0x19], 0
jne 0x14004123d
mov qword [rbp - 0x58], rax
cmp qword [rax + 0x20], rbx
jae 0x14004122a
mov dword [rbp - 0x50], r14d
mov rax, qword [rax + 0x10]
jmp 0x140041237
mov dword [rbp - 0x50], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140041216
cmp byte [rcx + 0x19], 0
jne 0x140041249
cmp rbx, qword [rcx + 0x20]
jae 0x1400412c5
movabs rax, 0x3ffffffffffffff
cmp qword [rbp + 0x1c0], rax
je 0x1400430a1
lea rax, [rbp + 0x1b8]
mov qword [rbp + 0xe0], rax
mov qword [rbp + 0xe8], r14
mov ecx, 0x40
call fcn.14015d780
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x28], r14
mov qword [rax + 0x30], r14
mov qword [rax + 0x38], r14
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rbp - 0x58]
movaps xmmword [rbp + 0xe0], xmm0
mov r8, rax
lea rdx, [rbp + 0xe0]
lea rcx, [rbp + 0x1b8]
call fcn.140009ba0
mov rcx, rax
mov rax, qword [rcx + 0x30]
sub rax, qword [rcx + 0x28]
sar rax, 5
mov ecx, 0x11
sub ecx, eax
lea ebx, [rcx + rcx*4]
shl ebx, 2
mov dword [rbp + 0x198], ebx
mov r9, qword [r15 + 0x10]
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1400412f5
mov r8, qword [r15]
mov rcx, rsi
mov rdx, r14
movabs rdi, 0x100000001b3
test r9, r9
je 0x140041324
nop word [rax + rax]
movzx eax, byte [r8 + rdx]
xor rcx, rax
imul rcx, rdi
inc rdx
cmp rdx, r9
jb 0x140041310
mov dword [rbp - 0x7c], ecx
lea rdx, [rbp - 0x7c]
call fcn.14004a960
cvttss2si edx, dword [rax]
mov dword [rbp + 0x1a8], edx
lea rcx, [rbp + 0x198]
lea rax, [rbp + 0x1a8]
cmp edx, ebx
cmovge rcx, rax
lea rax, [rbp - 0x80]
test edx, edx
cmovle rax, rcx
movd xmm6, dword [rax]
cvtdq2ps xmm6, xmm6
mov r9, qword [r15 + 0x10]
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140041370
mov r8, qword [r15]
mov rcx, rsi
mov rdx, r14
test r9, r9
je 0x140041394
nop dword [rax + rax]
movzx eax, byte [r8 + rdx]
xor rcx, rax
imul rcx, rdi
inc rdx
cmp rdx, r9
jb 0x140041380
mov dword [rbp - 0x38], ecx
lea rdx, [rbp - 0x38]
call fcn.14004a960
movss dword [rax], xmm6
jmp 0x1400413ad
mov byte [rax + 0x2ec], 0
mov r8, qword [r15 + 0x10]
mov rdx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1400413be
mov rdx, qword [r15]
mov rbx, rsi
mov rcx, r14
test r8, r8
je 0x1400413fa
movabs r12, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor rbx, rax
imul rbx, r12
inc rcx
cmp rcx, r8
jb 0x1400413e0
mov r12d, dword [rbp + 0x1b0]
mov rdi, qword [rbp + 0x1b8]
mov rax, qword [rdi + 8]
mov qword [rbp - 0x58], rax
mov dword [rbp - 0x50], r14d
mov rcx, rdi
cmp byte [rax + 0x19], 0
jne 0x14004143d
mov qword [rbp - 0x58], rax
cmp qword [rax + 0x20], rbx
jae 0x14004142a
mov dword [rbp - 0x50], r14d
mov rax, qword [rax + 0x10]
jmp 0x140041437
mov dword [rbp - 0x50], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140041416
cmp byte [rcx + 0x19], 0
jne 0x14004144d
cmp rbx, qword [rcx + 0x20]
jae 0x1400414d0
movabs rax, 0x3ffffffffffffff
cmp qword [rbp + 0x1c0], rax
je 0x1400430a7
lea rax, [rbp + 0x1b8]
mov qword [rbp + 0xb0], rax
mov qword [rbp + 0xb8], r14
mov ecx, 0x40
call fcn.14015d780
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x28], r14
mov qword [rax + 0x30], r14
mov qword [rax + 0x38], r14
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rbp - 0x58]
movaps xmmword [rbp + 0xb0], xmm0
mov r8, rax
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0x1b8]
call fcn.140009ba0
mov rcx, rax
mov rdi, qword [rbp + 0x1b8]
mov rax, qword [rcx + 0x30]
sub rax, qword [rcx + 0x28]
sar rax, 5
cmp rax, 0x10
jbe 0x1400417d2
cmp dword [rsp + 0x50], 0xffffffff
je 0x1400417d2
cmp dword [rsp + 0x58], 0xffffffff
je 0x1400417d2
mov dword [rsp + 0x20], 0xff
mov edx, 0x12
mov r9d, edx
mov r8d, edx
lea rcx, [rbp - 0x20]
call fcn.14000b000
mov rcx, qword [0x140273d10]
movzx edx, byte [rax + 3]
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [rcx + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x198]
call fcn.14000b000
mov edi, dword [rsp + 0x64]
lea ecx, [rdi - 6]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
mov dword [rsp + 0x44], 0x3f800000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0xb0]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov rbx, rax
mov ecx, dword [rbp + 0x198]
mov dword [rbp + 0x198], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp - 0x58]
lea rcx, [rbp + 0x198]
call fcn.140081000
mov rcx, rax
call fcn.140053cc0
movss xmm3, dword [rbx + 4]
movaps xmm2, xmm3
addss xmm2, dword [0x1401cb11c]
movss xmm1, dword [rbx]
movaps xmm0, xmm1
addss xmm0, dword [0x1401cafa8]
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm2
movss dword [rsp + 0x48], xmm1
movss dword [rsp + 0x4c], xmm3
mov dword [rsp + 0x28], r14d
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x48]
mov rcx, r10
call fcn.140073900
call fcn.1400ec4d0
mov r9, rax
mov dword [rsp + 0x48], 0x40800000
movd xmm6, dword [rsp + 0x50]
cvtdq2ps xmm6, xmm6
movss dword [rsp + 0x4c], xmm6
lea ecx, [rdi - 5]
movd xmm7, ecx
cvtdq2ps xmm7, xmm7
movss dword [rsp + 0x40], xmm7
mov ecx, dword [rsp + 0x58]
inc ecx
movd xmm8, ecx
cvtdq2ps xmm8, xmm8
movss dword [rsp + 0x44], xmm8
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0xb0]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
lea r8, [rsp + 0x48]
mov rdx, rax
mov rcx, r9
call fcn.1400ec460
test al, al
jne 0x1400416bb
lea r8, [0x1401bef70]
mov rdx, r15
lea rcx, [rbp + 0x70]
call fcn.14003b8b0
nop
mov edi, dword [rsp + 0x5c]
or edi, 2
mov dword [rsp + 0x5c], edi
mov rcx, rax
call fcn.140039ad0
mov r10, qword [0x140273d10]
cmp qword [r10 + 0x260], rax
je 0x1400416c6
mov edx, 0x41
lea rcx, [rbp - 0x20]
jmp 0x1400416cf
mov r10, qword [0x140273d10]
mov edi, dword [rsp + 0x5c]
mov edx, 0x50
lea rcx, [rbp + 0x60]
mov dword [rsp + 0x20], 0xff
mov r9d, edx
mov r8d, edx
call fcn.14000b000
movzx ecx, byte [rax + 3]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x2f0]
cvttss2si ecx, xmm0
mov dword [rsp + 0x20], ecx
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
lea rcx, [rbp + 0x198]
call fcn.14000b000
mov r9d, dword [rbp + 0x198]
movss dword [rsp + 0x40], xmm7
movss dword [rsp + 0x44], xmm8
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x128]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov rbx, rax
mov dword [rbp + 0x198], r9d
call fcn.140056380
mov r10, rax
lea rdx, [rbp - 0x58]
lea rcx, [rbp + 0x198]
call fcn.140081000
mov rcx, rax
call fcn.140053cc0
movss xmm2, dword [rbx + 4]
addss xmm6, xmm2
movss xmm1, dword [rbx]
movaps xmm0, xmm1
addss xmm0, dword [0x1401caf88]
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm6
movss dword [rsp + 0x48], xmm1
movss dword [rsp + 0x4c], xmm2
mov dword [rsp + 0x28], r14d
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x48]
mov rcx, r10
call fcn.140073900
nop
test dil, 2
je 0x1400417cb
lea rcx, [rbp + 0x70]
call fcn.140008e00
mov rdi, qword [rbp + 0x1b8]
movss xmm7, dword [0x1401cafa0]
movss xmm8, dword [0x1401caf5c]
test r12b, r12b
je 0x1400425ab
mov r8, qword [r15 + 0x10]
mov rdx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x1400417fd
mov rdx, qword [r15]
mov rbx, rsi
mov rcx, r14
movabs r12, 0x100000001b3
test r8, r8
je 0x140041825
movzx eax, byte [rcx + rdx]
xor rbx, rax
imul rbx, r12
inc rcx
cmp rcx, r8
jb 0x140041812
mov rax, qword [rdi + 8]
mov qword [rbp + 8], rax
mov dword [rbp + 0x10], r14d
mov rcx, rdi
cmp byte [rax + 0x19], 0
jne 0x140041867
nop word [rax + rax]
mov qword [rbp + 8], rax
cmp qword [rax + 0x20], rbx
jae 0x140041854
mov dword [rbp + 0x10], r14d
mov rax, qword [rax + 0x10]
jmp 0x140041861
mov dword [rbp + 0x10], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140041840
cmp byte [rcx + 0x19], 0
jne 0x140041877
cmp rbx, qword [rcx + 0x20]
jae 0x1400418fa
movabs rax, 0x3ffffffffffffff
cmp qword [rbp + 0x1c0], rax
je 0x1400430ad
lea rax, [rbp + 0x1b8]
mov qword [rbp + 0xd0], rax
mov qword [rbp + 0xd8], r14
mov ecx, 0x40
call fcn.14015d780
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x28], r14
mov qword [rax + 0x30], r14
mov qword [rax + 0x38], r14
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rbp + 8]
movaps xmmword [rbp + 0xd0], xmm0
mov r8, rax
lea rdx, [rbp + 0xd0]
lea rcx, [rbp + 0x1b8]
call fcn.140009ba0
mov rcx, rax
mov rdi, qword [rbp + 0x1b8]
mov rax, qword [rcx + 0x30]
sub rax, qword [rcx + 0x28]
sar rax, 5
cmp rax, 0x10
jbe 0x140041ebd
mov r8, qword [r15 + 0x10]
mov rdx, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140041921
mov rdx, qword [r15]
mov rbx, rsi
mov rcx, r14
test r8, r8
je 0x140041943
nop dword [rax]
movzx eax, byte [rdx + rcx]
xor rbx, rax
imul rbx, r12
inc rcx
cmp rcx, r8
jb 0x140041930
mov rax, qword [rdi + 8]
mov qword [rbp + 8], rax
mov dword [rbp + 0x10], r14d
mov rcx, rdi
cmp byte [rax + 0x19], 0
jne 0x140041987
nop dword [rax + rax]
mov qword [rbp + 8], rax
cmp qword [rax + 0x20], rbx
jae 0x140041974
mov dword [rbp + 0x10], r14d
mov rax, qword [rax + 0x10]
jmp 0x140041981
mov dword [rbp + 0x10], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140041960
cmp byte [rcx + 0x19], 0
jne 0x140041993
cmp rbx, qword [rcx + 0x20]
jae 0x140041a03
movabs rax, 0x3ffffffffffffff
cmp qword [rbp + 0x1c0], rax
je 0x1400430b3
lea rax, [rbp + 0x1b8]
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], r14
mov ecx, 0x40
call fcn.14015d780
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x28], r14
mov qword [rax + 0x30], r14
mov qword [rax + 0x38], r14
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rbp + 8]
movaps xmmword [rbp + 0x40], xmm0
mov r8, rax
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x1b8]
call fcn.140009ba0
mov rcx, rax
mov rax, qword [rcx + 0x30]
sub rax, qword [rcx + 0x28]
sar rax, 5
mov edi, dword [rsp + 0x50]
mov ebx, dword [rsp + 0x58]
cmp rax, 0x10
jbe 0x140041ec5
cmp edi, 0xffffffff
je 0x140041ec5
cmp ebx, 0xffffffff
je 0x140041ec5
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x34]
call fcn.14000b000
mov rcx, qword [0x140273d10]
movzx edx, byte [rax + 3]
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [rcx + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x198]
call fcn.14000b000
mov r12d, dword [rsp + 0x64]
movd xmm0, r12d
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
mov dword [rsp + 0x44], 0x439f0000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x40]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov dword [rsp + 0x40], 0x41880000
mov dword [rsp + 0x44], 0x41200000
lea r8, [rsp + 0x40]
lea rdx, [rbp]
mov rcx, rax
call fcn.1400ec5e0
mov rbx, rax
mov ecx, dword [rbp + 0x198]
mov dword [rbp + 0x198], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 8]
lea rcx, [rbp + 0x198]
call fcn.140081000
mov rcx, rax
call fcn.140053cc0
movss xmm3, dword [rbx + 4]
movaps xmm2, xmm3
addss xmm2, xmm15
movss xmm1, dword [rbx]
movaps xmm0, xmm1
addss xmm0, xmm7
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm2
movss dword [rsp + 0x48], xmm1
movss dword [rsp + 0x4c], xmm3
mov dword [rsp + 0x28], r14d
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x48]
mov rcx, r10
call fcn.140073900
mov dword [rsp + 0x20], 0xff
mov edx, 0xcc
mov r9d, edx
mov r8d, edx
lea rcx, [rbp - 0x34]
call fcn.14000b000
mov rcx, qword [0x140273d10]
movzx edx, byte [rax + 3]
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [rcx + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x198]
call fcn.14000b000
movd xmm0, r12d
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
mov dword [rsp + 0x44], 0x439f0000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x40]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov dword [rsp + 0x40], 0x41880000
mov dword [rsp + 0x44], 0x41100000
lea r8, [rsp + 0x40]
lea rdx, [rbp]
mov rcx, rax
call fcn.1400ec5e0
mov rbx, rax
mov ecx, dword [rbp + 0x198]
mov dword [rbp + 0x198], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 8]
lea rcx, [rbp + 0x198]
call fcn.140081000
mov rcx, rax
call fcn.140053cc0
movss xmm3, dword [rbx + 4]
movaps xmm2, xmm3
addss xmm2, xmm15
movss xmm1, dword [rbx]
movaps xmm0, xmm1
addss xmm0, xmm7
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm2
movss dword [rsp + 0x48], xmm1
movss dword [rsp + 0x4c], xmm3
mov dword [rsp + 0x28], r14d
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x48]
mov rcx, r10
call fcn.140073900
mov dword [rsp + 0x20], 0xff
mov edx, 0xcc
mov r9d, edx
mov r8d, edx
lea rcx, [rbp - 0x34]
call fcn.14000b000
mov rcx, qword [0x140273d10]
movzx edx, byte [rax + 3]
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [rcx + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x198]
call fcn.14000b000
movd xmm0, r12d
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
mov dword [rsp + 0x44], 0x439f0000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x40]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov dword [rsp + 0x40], 0x41800000
mov dword [rsp + 0x44], 0x41000000
lea r8, [rsp + 0x40]
lea rdx, [rbp]
mov rcx, rax
call fcn.1400ec5e0
mov rbx, rax
mov ecx, dword [rbp + 0x198]
mov dword [rbp + 0x198], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 8]
lea rcx, [rbp + 0x198]
call fcn.140081000
mov rcx, rax
call fcn.140053cc0
movss xmm3, dword [rbx + 4]
movaps xmm2, xmm3
addss xmm2, xmm15
movss xmm1, dword [rbx]
movaps xmm0, xmm1
addss xmm0, xmm8
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm2
movss dword [rsp + 0x48], xmm1
movss dword [rsp + 0x4c], xmm3
mov dword [rsp + 0x28], r14d
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x48]
mov rcx, r10
call fcn.140073900
mov dword [rsp + 0x20], 0xff
mov edx, 0xcc
mov r9d, edx
mov r8d, edx
lea rcx, [rbp - 0x34]
call fcn.14000b000
mov rcx, qword [0x140273d10]
movzx edx, byte [rax + 3]
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [rcx + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x198]
call fcn.14000b000
movd xmm0, r12d
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
mov dword [rsp + 0x44], 0x439f0000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x40]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov dword [rsp + 0x40], 0x41700000
mov dword [rsp + 0x44], 0x40e00000
lea r8, [rsp + 0x40]
lea rdx, [rbp]
mov rcx, rax
call fcn.1400ec5e0
mov rbx, rax
mov ecx, dword [rbp + 0x198]
mov dword [rbp + 0x198], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 8]
lea rcx, [rbp + 0x198]
call fcn.140081000
mov rcx, rax
call fcn.140053cc0
movss xmm3, dword [rbx + 4]
movaps xmm2, xmm3
addss xmm2, xmm15
movss xmm1, dword [rbx]
movaps xmm0, xmm1
addss xmm0, xmm15
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm2
movss dword [rsp + 0x48], xmm1
movss dword [rsp + 0x4c], xmm3
mov dword [rsp + 0x28], r14d
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x48]
mov rcx, r10
call fcn.140073900
mov ebx, dword [rsp + 0x58]
jmp 0x140041eca
mov ebx, dword [rsp + 0x58]
mov edi, dword [rsp + 0x50]
mov r12d, dword [rsp + 0x64]
test r13b, r13b
je 0x1400423ee
mov r9, qword [r15 + 0x10]
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140041ee4
mov r8, qword [r15]
mov rcx, rsi
mov rdx, r14
test r9, r9
je 0x140041f18
movabs rdi, 0x100000001b3
nop dword [rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, rdi
inc rdx
cmp rdx, r9
jb 0x140041f00
mov edi, dword [rsp + 0x50]
mov dword [rbp + 0x198], ecx
lea rdx, [rbp + 0x198]
call fcn.14004a960
movss xmm0, dword [0x1401cb200]
comiss xmm0, dword [rax]
jb 0x1400423ee
mov rcx, r15
call fcn.140039ad0
mov qword [rbp - 0x18], rax
lea rdx, [rbp - 0x18]
lea rcx, [rbp + 0x1b8]
call fcn.14004a500
mov rcx, qword [rax + 8]
sub rcx, qword [rax]
sar rcx, 5
cmp rcx, 0x10
jbe 0x1400423ee
cmp edi, 0xffffffff
je 0x1400423ee
cmp ebx, 0xffffffff
je 0x1400423ee
mov dword [rsp + 0x20], 0xff
mov edx, 0xcc
mov r9d, edx
mov r8d, edx
lea rcx, [rbp - 0x80]
call fcn.14000b000
mov rcx, qword [0x140273d10]
movzx edx, byte [rax + 3]
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [rcx + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x1a8]
call fcn.14000b000
lea ecx, [r12 - 0x14]
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
movss dword [rsp + 0x40], xmm6
mov dword [rsp + 0x44], 0x40e00000
lea r8, [rsp + 0x40]
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov qword [rsp + 0x40], 0x40a00000
lea r8, [rsp + 0x40]
lea rdx, [rbp - 8]
mov rcx, rax
call fcn.1400ec5b0
mov rbx, rax
mov ecx, dword [rbp + 0x1a8]
mov dword [rbp + 0x1a8], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 0x98]
lea rcx, [rbp + 0x1a8]
call fcn.140081000
mov rcx, rax
call fcn.140053cc0
movss xmm3, dword [rbx + 4]
movaps xmm2, xmm3
addss xmm2, xmm15
movss xmm1, dword [rbx]
movaps xmm0, xmm1
addss xmm0, xmm15
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm2
movss dword [rsp + 0x48], xmm1
movss dword [rsp + 0x4c], xmm3
mov dword [rsp + 0x28], r14d
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x48]
mov rcx, r10
call fcn.140073900
mov dword [rsp + 0x20], 0xff
mov edx, 0xcc
mov r9d, edx
mov r8d, edx
lea rcx, [rbp - 0x80]
call fcn.14000b000
mov rcx, qword [0x140273d10]
movzx edx, byte [rax + 3]
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [rcx + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x1a8]
call fcn.14000b000
movss dword [rsp + 0x40], xmm6
mov dword [rsp + 0x44], 0x40e00000
lea r8, [rsp + 0x40]
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov dword [rsp + 0x40], 0x40800000
mov dword [rsp + 0x44], 0x3f800000
lea r8, [rsp + 0x40]
lea rdx, [rbp - 8]
mov rcx, rax
call fcn.1400ec5b0
mov rbx, rax
mov ecx, dword [rbp + 0x1a8]
mov dword [rbp + 0x1a8], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 0x98]
lea rcx, [rbp + 0x1a8]
call fcn.140081000
mov rcx, rax
call fcn.140053cc0
movss xmm3, dword [rbx + 4]
movaps xmm2, xmm3
addss xmm2, xmm15
movss xmm1, dword [rbx]
movaps xmm0, xmm1
addss xmm0, xmm8
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm2
movss dword [rsp + 0x48], xmm1
movss dword [rsp + 0x4c], xmm3
mov dword [rsp + 0x28], r14d
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x48]
mov rcx, r10
call fcn.140073900
mov dword [rsp + 0x20], 0xff
mov edx, 0xcc
mov r9d, edx
mov r8d, edx
lea rcx, [rbp - 0x80]
call fcn.14000b000
mov rcx, qword [0x140273d10]
movzx edx, byte [rax + 3]
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [rcx + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x1a8]
call fcn.14000b000
movss dword [rsp + 0x40], xmm6
mov dword [rsp + 0x44], 0x40e00000
lea r8, [rsp + 0x40]
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov dword [rsp + 0x40], 0x40400000
mov dword [rsp + 0x44], 0x40000000
lea r8, [rsp + 0x40]
lea rdx, [rbp - 8]
mov rcx, rax
call fcn.1400ec5b0
mov rbx, rax
mov ecx, dword [rbp + 0x1a8]
mov dword [rbp + 0x1a8], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 0x98]
lea rcx, [rbp + 0x1a8]
call fcn.140081000
mov rcx, rax
call fcn.140053cc0
movss xmm3, dword [rbx + 4]
movaps xmm2, xmm3
addss xmm2, xmm15
movss xmm1, dword [rbx]
movaps xmm0, xmm1
addss xmm0, xmm7
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm2
movss dword [rsp + 0x48], xmm1
movss dword [rsp + 0x4c], xmm3
mov dword [rsp + 0x28], r14d
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x48]
mov rcx, r10
call fcn.140073900
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x80]
call fcn.14000b000
mov rcx, qword [0x140273d10]
movzx edx, byte [rax + 3]
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [rcx + 0x2f0]
cvttss2si ecx, xmm0
movzx r9d, byte [rax + 2]
movzx r8d, byte [rax + 1]
movzx edx, byte [rax]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x1a8]
call fcn.14000b000
movss dword [rsp + 0x40], xmm6
mov dword [rsp + 0x44], 0x40e00000
lea r8, [rsp + 0x40]
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov dword [rsp + 0x40], 0x40400000
mov dword [rsp + 0x44], 0x40400000
lea r8, [rsp + 0x40]
lea rdx, [rbp - 8]
mov rcx, rax
call fcn.1400ec5b0
mov rbx, rax
mov ecx, dword [rbp + 0x1a8]
mov dword [rbp + 0x1a8], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 0x98]
lea rcx, [rbp + 0x1a8]
call fcn.140081000
mov rcx, rax
call fcn.140053cc0
movss xmm3, dword [rbx + 4]
movaps xmm2, xmm3
addss xmm2, xmm15
movss xmm1, dword [rbx]
movaps xmm0, xmm1
addss xmm0, xmm7
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm2
movss dword [rsp + 0x48], xmm1
movss dword [rsp + 0x4c], xmm3
mov dword [rsp + 0x28], r14d
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x48]
mov rcx, r10
call fcn.140073900
mov rax, qword [0x140273d10]
movss xmm0, dword [rax + 0x2f0]
movss xmm8, dword [0x1401cb110]
mulss xmm0, xmm8
cvttss2si ebx, xmm0
movaps xmm7, xmm9
subss xmm7, dword [0x1401cb00c]
movaps xmm6, xmm13
subss xmm6, xmm10
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov r13d, 1
mov edx, r13d
mov rcx, qword [rax]
call fcn.1400561d0
mov r10, rax
movzx ecx, bl
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
divss xmm1, xmm8
mov dword [rsp + 0x70], 0x3d909091
mov dword [rsp + 0x74], 0x3d909091
mov dword [rsp + 0x78], 0x3d909091
movss dword [rsp + 0x7c], xmm1
lea rcx, [rsp + 0x70]
call fcn.140053cc0
movaps xmm1, xmm7
addss xmm1, dword [0x1401cb018]
movd xmm0, r12d
cvtdq2ps xmm0, xmm0
addss xmm0, xmm6
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm1
movss dword [rsp + 0x48], xmm6
movss dword [rsp + 0x4c], xmm7
mov dword [rsp + 0x28], r14d
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x48]
mov rcx, r10
call fcn.140073900
movabs rcx, 0x3100350b8e9dcaf4
movabs rbx, 0x21d880e9763f68ac
movabs rdx, 0x31005d68fcfcaf87
mov rax, qword [0x140273d10]
cmp qword [rax + 0x260], 0
jne 0x1400425bd
cmp byte [rax + 0x2eb], 0
je 0x140042517
mov byte [rax + 0x2eb], 0
cmp byte [rsp + 0x54], 0
je 0x140042c9a
call fcn.1400ec4d0
mov edx, r13d
call fcn.1400ec3d0
movabs rdi, 0x3100350b8e9dcaf4
test al, al
je 0x140042ca4
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x78], rbx
movabs rax, 0x31005d68fcfcaf87
mov qword [rbp + 0x220], rax
mov qword [rbp + 0x228], rbx
movdqa xmm0, xmmword [rsp + 0x70]
xorps xmm0, xmmword [rbp + 0x220]
movdqa xmmword [rsp + 0x70], xmm0
lea r8, [rsp + 0x70]
mov rdx, r15
lea rcx, [rbp + 0x70]
call fcn.14003b8b0
mov rcx, rax
call fcn.140039ad0
mov rcx, qword [0x140273d10]
mov qword [rcx + 0x260], rax
lea rcx, [rbp + 0x70]
call fcn.140008e00
jmp 0x140042ca4
mov edi, dword [rsp + 0x50]
mov r12d, dword [rsp + 0x64]
mov ebx, dword [rsp + 0x58]
jmp 0x140041eca
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x78], rbx
mov qword [rbp + 0x220], rdx
mov qword [rbp + 0x228], rbx
movdqa xmm0, xmmword [rsp + 0x70]
xorps xmm0, xmmword [rbp + 0x220]
movdqa xmmword [rsp + 0x70], xmm0
mov rdx, qword [r15 + 0x10]
lea rax, [rsp + 0x70]
mov rcx, 0xffffffffffffffff
nop dword [rax + rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x140042600
movabs r8, 0x7fffffffffffffff
sub r8, rdx
cmp r8, rcx
jb 0x1400430b9
mov r9, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x14004262c
mov r9, qword [r15]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp + 0x150]
call fcn.140039850
lea rdx, [rbp + 0x150]
cmp qword [rbp + 0x168], 0xf
cmova rdx, qword [rbp + 0x150]
mov rdi, rsi
mov rcx, r14
mov r8, qword [rbp + 0x160]
movabs r13, 0x100000001b3
test r8, r8
je 0x140042693
nop
movzx eax, byte [rdx + rcx]
xor rdi, rax
imul rdi, r13
inc rcx
cmp rcx, r8
jb 0x140042680
mov rax, qword [0x140273d10]
mov rbx, qword [rax + 0x260]
lea rcx, [rbp + 0x150]
call fcn.140008e00
cmp rbx, rdi
jne 0x140042c8a
mov rax, qword [0x140273d10]
cmp byte [rax + 0x2eb], 0
jne 0x1400426cd
mov byte [rax + 0x2eb], 1
call fcn.1400ec4d0
mov edx, 1
call fcn.1400ec4a0
test al, al
je 0x1400426f5
cmp byte [rsp + 0x54], 0
jne 0x1400426f5
mov rax, qword [0x140273d10]
mov qword [rax + 0x260], r14
mov edi, r14d
mov ecx, 0xa2
call fcn.14007bd70
mov r12d, eax
cmp qword [0x140272c18], 0
jne 0x14004272c
mov ecx, 8
call fcn.14015d780
mov qword [rsp + 0x70], rax
mov qword [rax], r14
mov dword [rax + 4], r14d
mov qword [0x140272c18], rax
lea eax, [rdi - 1]
cmp eax, 0xfe
ja 0x1400428e6
mov ecx, edi
call fcn.14007bd70
xor r8d, r8d
xor edx, edx
mov ecx, eax
call fcn.14005ee80
test al, al
je 0x1400428e6
cmp edi, 8
je 0x140042841
cmp edi, 0x1b
je 0x14004282e
cmp edi, 0xd
je 0x14004282e
lea eax, [rdi - 0x41]
cmp eax, 0x19
ja 0x1400427dc
call fcn.1400ec4d0
mov edx, 0x10
call fcn.1400ec3d0
test al, al
jne 0x14004279e
mov ecx, 0x14
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
lea ebx, [rdi + 0x20]
je 0x1400427a0
mov ebx, edi
mov rcx, r15
call fcn.140039ad0
mov dword [rsp + 0x60], eax
lea rdx, [rsp + 0x60]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rcx, rax
movzx edx, bl
call fcn.14004aaa0
mov rcx, r15
call fcn.140039ad0
mov dword [rbp - 0x68], eax
lea rdx, [rbp - 0x68]
jmp 0x1400428de
lea eax, [rdi - 0x30]
cmp eax, 9
jbe 0x1400427ed
cmp edi, 0x20
jne 0x1400428e6
mov rcx, r15
call fcn.140039ad0
mov dword [rbp - 0x64], eax
lea rdx, [rbp - 0x64]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rcx, rax
movzx edx, dil
call fcn.14004aaa0
mov rcx, r15
call fcn.140039ad0
mov dword [rbp + 0x1c8], eax
lea rdx, [rbp + 0x1c8]
jmp 0x1400428de
mov rax, qword [0x140273d10]
mov qword [rax + 0x260], r14
jmp 0x1400428e6
mov rcx, r15
call fcn.140039ad0
mov dword [rbp - 0x7c], eax
lea rdx, [rbp - 0x7c]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rbx, rax
mov rcx, r15
call fcn.140039ad0
mov dword [rbp + 0x198], eax
lea rdx, [rbp + 0x198]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov r9, qword [rax + 0x10]
dec r9
xor r8d, r8d
lea rdx, [rbp + 0x70]
mov rcx, rbx
call fcn.140034390
mov rbx, rax
mov rcx, r15
call fcn.140039ad0
mov dword [rbp + 0x1a8], eax
lea rdx, [rbp + 0x1a8]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rcx, rax
mov rdx, rbx
call fcn.140008a90
nop
lea rcx, [rbp + 0x70]
call fcn.140008e00
mov rcx, r15
call fcn.140039ad0
mov dword [rbp - 0x80], eax
lea rdx, [rbp - 0x80]
call fcn.14004a960
mov dword [rax], r14d
cmp qword [0x140272c18], 0
jne 0x14004290d
mov ecx, 8
call fcn.14015d780
mov qword [rsp + 0x70], rax
mov qword [rax], r14
mov dword [rax + 4], r14d
mov qword [0x140272c18], rax
mov ecx, r12d
call fcn.14005ee00
test al, al
je 0x140042a00
cmp qword [0x140272c18], 0
jne 0x140042944
mov ecx, 8
call fcn.14015d780
mov qword [rsp + 0x70], rax
mov qword [rax], r14
mov dword [rax + 4], r14d
mov qword [0x140272c18], rax
mov ecx, 8
call fcn.14007bd70
mov ecx, eax
call fcn.14005ee00
test al, al
je 0x140042a00
mov rcx, r15
call fcn.140039ad0
mov dword [rbp - 0x38], eax
lea rdx, [rbp - 0x38]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rbx, rax
mov rcx, r15
call fcn.140039ad0
mov dword [rsp + 0x5c], eax
lea rdx, [rsp + 0x5c]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov r9, qword [rax + 0x10]
dec r9
xor r8d, r8d
lea rdx, [rbp + 0x70]
mov rcx, rbx
call fcn.140034390
mov rbx, rax
mov rcx, r15
call fcn.140039ad0
mov dword [rbp + 0x1b0], eax
lea rdx, [rbp + 0x1b0]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rcx, rax
mov rdx, rbx
call fcn.140008a90
nop
lea rcx, [rbp + 0x70]
call fcn.140008e00
mov rcx, r15
call fcn.140039ad0
mov dword [rsp + 0x50], eax
lea rdx, [rsp + 0x50]
call fcn.14004a960
mov dword [rax], r14d
inc edi
cmp edi, 0xff
jl 0x140042705
cmp qword [0x140272c18], 0
jne 0x140042a35
mov ecx, 8
call fcn.14015d780
mov qword [rsp + 0x70], rax
mov qword [rax], r14
mov dword [rax + 4], r14d
mov qword [0x140272c18], rax
mov ecx, 8
call fcn.14007bd70
mov ecx, eax
call fcn.14005ee00
test al, al
jne 0x140042a9b
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov rbx, rax
mov r9, qword [r15 + 0x10]
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140042a64
mov r8, qword [r15]
mov rcx, rsi
mov rdx, r14
test r9, r9
je 0x140042a84
nop
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r13
inc rdx
cmp rdx, r9
jb 0x140042a70
mov qword [rbp - 0x70], rcx
lea rdx, [rbp - 0x70]
lea rcx, [0x140271cc0]
call fcn.14004a700
mov qword [rax], rbx
mov r9, qword [r15 + 0x10]
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140042aac
mov r8, qword [r15]
mov rcx, rsi
mov rdx, r14
test r9, r9
je 0x140042ad4
nop word [rax + rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r13
inc rdx
cmp rdx, r9
jb 0x140042ac0
mov qword [rbp - 0x70], rcx
lea rdx, [rbp - 0x70]
lea rcx, [0x140271cc0]
call fcn.14004a700
mov rbx, qword [rax]
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
sub rax, rbx
cmp rax, 0x1f4
jbe 0x140042c85
mov r9, qword [r15 + 0x10]
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140042b11
mov r8, qword [r15]
mov rcx, rsi
mov rdx, r14
test r9, r9
je 0x140042b34
nop dword [rax]
movzx eax, byte [r8 + rdx]
xor rcx, rax
imul rcx, r13
inc rdx
cmp rdx, r9
jb 0x140042b20
mov dword [rsp + 0x60], ecx
lea rdx, [rsp + 0x60]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rbx, rax
mov r9, qword [r15 + 0x10]
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140042b5d
mov r8, qword [r15]
mov rcx, rsi
mov rdx, r14
test r9, r9
je 0x140042b84
nop dword [rax + rax]
movzx eax, byte [r8 + rdx]
xor rcx, rax
imul rcx, r13
inc rdx
cmp rdx, r9
jb 0x140042b70
mov dword [rbp - 0x68], ecx
lea rdx, [rbp - 0x68]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov r8, qword [rax + 0x10]
dec r8
xorps xmm0, xmm0
movups xmmword [rbp + 0x1d0], xmm0
mov qword [rbp + 0x1e0], r14
mov qword [rbp + 0x1e8], r14
cmp qword [rbx + 0x10], r8
cmovb r8, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0xf
jbe 0x140042bc9
mov rbx, qword [rbx]
mov rdx, rbx
lea rcx, [rbp + 0x1d0]
call fcn.140009150
nop
mov r9, qword [r15 + 0x10]
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140042bea
mov r8, qword [r15]
mov rcx, rsi
mov rdx, r14
test r9, r9
je 0x140042c14
nop word [rax + rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r13
inc rdx
cmp rdx, r9
jb 0x140042c00
mov dword [rbp - 0x64], ecx
lea rdx, [rbp - 0x64]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rcx, rax
lea rdx, [rbp + 0x1d0]
call fcn.140008a90
nop
lea rcx, [rbp + 0x1d0]
call fcn.140008e00
mov r9, qword [r15 + 0x10]
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140042c54
mov r8, qword [r15]
mov rcx, rsi
mov rdx, r14
test r9, r9
je 0x140042c74
nop
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r13
inc rdx
cmp rdx, r9
jb 0x140042c60
mov dword [rsp + 0x60], ecx
lea rdx, [rsp + 0x60]
call fcn.14004a960
mov dword [rax], r14d
mov r12d, dword [rsp + 0x64]
mov r13d, 1
movabs rbx, 0x21d880e9763f68ac
movabs rdi, 0x3100350b8e9dcaf4
movd xmm0, r12d
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
mov dword [rsp + 0x44], 0x41900000
movaps xmm1, xmm9
subss xmm1, xmm11
movss dword [rsp + 0x48], xmm13
movss dword [rsp + 0x4c], xmm1
mov r8b, 1
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x48]
call fcn.140082dc0
mov rax, qword [0x140273d10]
movss xmm0, dword [rax + 0x2f0]
mulss xmm0, xmm8
cvttss2si eax, xmm0
mov word [rsp + 0x5c], 0xc8c8
mov byte [rsp + 0x5e], 0xc8
mov byte [rsp + 0x5f], al
subss xmm9, dword [0x1401cb004]
subss xmm13, dword [0x1401cb1f0]
movss dword [rsp + 0x40], xmm13
movss dword [rsp + 0x44], xmm9
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x78], rbx
movabs rax, 0x31005d68fcfcaf87
mov qword [rbp + 0x220], rax
mov qword [rbp + 0x228], rbx
movdqa xmm0, xmmword [rbp + 0x220]
xorps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
mov rdx, qword [r15 + 0x10]
lea rax, [rsp + 0x70]
mov rbx, 0xffffffffffffffff
mov rcx, rbx
inc rcx
cmp byte [rax + rcx], 0
jne 0x140042d72
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, rcx
jb 0x1400430bf
mov r9, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140042d9e
mov r9, qword [r15]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp + 0x170]
call fcn.140039850
nop
lea r8, [rbp + 0x170]
cmp qword [rbp + 0x188], 0xf
cmova r8, qword [rbp + 0x170]
mov rcx, rsi
mov rdx, r14
mov r9, qword [rbp + 0x180]
movabs r12, 0x100000001b3
test r9, r9
je 0x140042e14
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r12
inc rdx
cmp rdx, r9
jb 0x140042e00
mov edx, 0x5f
mov rax, qword [0x140273d10]
cmp qword [rax + 0x260], rcx
mov edi, 0x20
cmove edi, edx
mov r9, qword [r15 + 0x10]
mov r8, r15
cmp qword [r15 + 0x18], 0xf
jbe 0x140042e40
mov r8, qword [r15]
mov rcx, rsi
mov rdx, r14
test r9, r9
je 0x140042e64
nop dword [rax + rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r12
inc rdx
cmp rdx, r9
jb 0x140042e50
mov dword [rsp + 0x60], ecx
lea rdx, [rsp + 0x60]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov byte [rbp + 0x1a0], dil
mov rcx, qword [rax + 0x10]
movabs r8, 0x7fffffffffffffff
cmp rcx, r8
je 0x14004307d
cmp qword [rax + 0x18], 0xf
jbe 0x140042ea1
mov rax, qword [rax]
mov qword [rsp + 0x30], r13
lea rdx, [rbp + 0x1a0]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
mov r9, rax
lea rcx, [rbp - 0x58]
call fcn.140039850
nop
lea rdx, [rbp - 0x58]
cmp qword [rbp - 0x40], 0xf
cmova rdx, qword [rbp - 0x58]
xorps xmm0, xmm0
movups xmmword [rbp + 0x1d0], xmm0
mov qword [rbp + 0x1e0], r14
mov qword [rbp + 0x1e8], r14
nop word [rax + rax]
inc rbx
cmp byte [rdx + rbx], 0
jne 0x140042ef0
mov r8, rbx
lea rcx, [rbp + 0x1d0]
call fcn.140009150
mov dword [rsp + 0x20], r14d
xor r9d, r9d
mov r8d, dword [rsp + 0x5c]
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x1d0]
call fcn.140082420
nop
lea rcx, [rbp - 0x58]
call fcn.140008e00
nop
lea rcx, [rbp + 0x170]
call fcn.140008e00
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov rdx, r13
mov rcx, qword [rax]
call fcn.1400561d0
mov rdx, rax
mov eax, dword [rax + 0x58]
sub eax, 1
mov dword [rdx + 0x58], eax
jne 0x140042f75
mov rcx, qword [rdx + 0x38]
add rcx, 0x1c
jmp 0x140042f82
dec eax
movsxd rcx, eax
shl rcx, 4
add rcx, qword [rdx + 0x60]
movups xmm0, xmmword [rcx]
movups xmmword [rdx + 0x88], xmm0
mov rcx, rdx
call fcn.140070d50
movss xmm1, dword [rbp + 0x6c]
addss xmm1, dword [0x1401cb128]
movss xmm0, dword [rbp + 0x68]
addss xmm0, xmm10
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm1
lea rcx, [rsp + 0x40]
call fcn.1400399f0
mov rdx, qword [r15 + 0x10]
cmp qword [r15 + 0x18], 0xf
jbe 0x140042fcf
mov r15, qword [r15]
test rdx, rdx
je 0x140042ff4
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [r14 + r15]
xor rsi, rax
imul rsi, r12
inc r14
cmp r14, rdx
jb 0x140042fe0
mov rax, qword [0x140273d10]
cmp qword [rax + 0x260], rsi
sete bl
lea rcx, [rbp + 0x1f0]
call fcn.140008880
nop
lea rcx, [rbp + 0x1b8]
call fcn.14004a690
nop
mov rcx, qword [rbp - 0x30]
call fcn.140008cb0
movzx eax, bl
mov rcx, qword [rbp + 0x230]
xor rcx, rsp
call fcn.14015d760
lea r11, [rsp + 0x3c0]
mov rbx, qword [r11 + 0x58]
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 xmm13, xmmword [r11 - 0x70]
movaps xmm15, xmmword [r11 - 0x80]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400059a0
nop
call fcn.1400059f0
int3
call fcn.1400059f0
int3
call fcn.1400059a0
int3
call fcn.1400059f0
nop
call fcn.1400059f0
nop
call fcn.1400059f0
int3
call fcn.1400059f0
int3
call fcn.1400059f0
int3
call fcn.1400059f0
int3
call fcn.1400059a0
int3
call fcn.1400059a0
int3