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

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x2e8]
sub rsp, 0x3b0
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], xmm12
movaps xmmword [rax - 0xb8], xmm15
mov rax, qword [0x1401ef0c0]
xor rax, rsp
mov qword [rbp + 0x220], rax
mov rdi, rdx
mov qword [rbp + 8], rdx
mov r14, rcx
mov qword [rbp - 8], rcx
mov qword [rbp + 0x148], rdx
xor esi, esi
mov dword [rsp + 0x58], esi
lea rcx, [rbp + 0x78]
call fcn.140039970
lea r8, [rbp + 0x78]
lea rdx, [rbp - 0x78]
mov rcx, qword [0x140273d10]
call fcn.1400ec5b0
lea rcx, [rbp + 0x170]
call fcn.140037de0
lea rcx, [rbp + 0x170]
call fcn.14004a600
nop
lea rcx, [rbp + 0x1b0]
call fcn.140037de0
lea rcx, [rbp + 0x1b0]
call fcn.140010660
nop
mov rcx, r14
call fcn.140039ad0
mov dword [rbp + 0x168], eax
lea r8, [rbp + 0x168]
lea rdx, [rsp + 0x78]
lea rcx, [0x140271ce0]
call fcn.140033bf0
xorps xmm10, xmm10
mov rcx, qword [0x140271ce0]
cmp qword [rax], rcx
jne 0x1400431f8
mov rcx, r14
call fcn.140039ad0
mov dword [rsp + 0x68], eax
mov dword [rsp + 0x6c], esi
lea r8, [rsp + 0x68]
lea rdx, [rbp - 0x70]
lea rcx, [0x140271ce0]
call fcn.140036460
mov rcx, r14
call fcn.140039ad0
mov qword [rsp + 0x40], rax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x78]
lea rcx, [0x140271cc0]
call fcn.14004a640
mov rcx, qword [0x140271cc0]
cmp qword [rax], rcx
jne 0x14004324b
mov rcx, r14
call fcn.140039ad0
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], rsi
lea r8, [rbp - 0x40]
lea rdx, [rbp - 0x70]
lea rcx, [0x140271cc0]
call fcn.14002a7d0
mov rcx, r14
call fcn.140039ad0
mov qword [rsp + 0x40], rax
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x78]
lea rcx, [rbp + 0x170]
call fcn.14004a640
mov r15d, 1
mov rcx, qword [rbp + 0x170]
cmp qword [rax], rcx
jne 0x140043337
mov rcx, r14
call fcn.140039ad0
mov qword [rsp + 0x40], rax
lea rdx, [0x1401beef6]
lea rcx, [rbp + 0x188]
call fcn.140008b20
nop
lea rax, [rbp + 0x188]
mov qword [rbp - 0x40], rax
lea rax, [rbp + 0x1a8]
mov qword [rbp - 0x38], rax
movaps xmm0, xmmword [rbp - 0x40]
movdqa xmmword [rbp + 0x200], xmm0
lea rdx, [rbp + 0x200]
lea rcx, [rbp - 0x28]
call fcn.140026030
nop
lea r8, [rbp - 0x28]
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x88]
call fcn.14004ab00
nop
lea r8, [rbp + 0x88]
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x170]
call fcn.14004ab30
nop
lea rcx, [rbp + 0x90]
call fcn.140008d70
nop
lea rcx, [rbp - 0x28]
call fcn.140008d70
nop
lea r9, [fcn.140008a80]
mov r8d, r15d
lea edx, [r15 + 0x1f]
lea rcx, [rbp + 0x188]
call fcn.14015d7bc
mov rcx, r14
call fcn.140039ad0
mov dword [rbp + 0x168], eax
lea r8, [rbp + 0x168]
lea rdx, [rsp + 0x78]
lea rcx, [0x140271cd0]
call fcn.14004a910
mov rcx, qword [0x140271cd0]
cmp qword [rax], rcx
jne 0x1400433ac
mov rcx, r14
call fcn.140039ad0
mov qword [rsp + 0x40], rax
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x188]
call fcn.14004ac50
nop
lea r8, [rbp + 0x188]
lea rdx, [rbp - 0x70]
lea rcx, [0x140271cd0]
call fcn.14004ac90
nop
lea rcx, [rbp + 0x190]
call fcn.140008e00
mov rcx, r14
call fcn.140039ad0
mov dword [rbp + 0x168], eax
lea r8, [rbp + 0x168]
lea rdx, [rsp + 0x78]
lea rcx, [rbp + 0x1b0]
call fcn.140033bf0
mov rcx, qword [rbp + 0x1b0]
cmp qword [rax], rcx
jne 0x140043407
mov rcx, r14
call fcn.140039ad0
mov dword [rsp + 0x68], eax
mov dword [rsp + 0x6c], 0xffffffec
lea r8, [rsp + 0x68]
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x1b0]
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 + 0x60], ebx
call fcn.1400ec4d0
mov r9, rax
movd xmm6, ebx
cvtdq2ps xmm6, xmm6
movss dword [rbp - 0x48], xmm6
mov dword [rbp - 0x44], 0x41980000
mov dword [rsp + 0x68], 0
mov dword [rsp + 0x6c], 0x41900000
lea r8, [rsp + 0x68]
lea rdx, [rsp + 0x78]
lea rcx, [rbp - 0x78]
call fcn.1400ec5e0
lea r8, [rbp - 0x48]
mov rdx, rax
mov rcx, r9
call fcn.1400ec460
test al, al
je 0x1400434d6
call fcn.1400ec4d0
mov r10, rax
mov r8, qword [0x140273d10]
lea rdx, [r8 + 0x238]
lea rcx, [rbp + 0x38]
call fcn.1400ec540
mov r9, rax
lea rdx, [r8 + 0x230]
lea rcx, [rbp + 0x40]
call fcn.1400ec540
mov r8, r9
mov rdx, rax
mov rcx, r10
call fcn.1400ec460
test al, al
mov byte [rsp + 0x50], 1
jne 0x1400434db
mov byte [rsp + 0x50], 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, [rsp + 0x78]
call fcn.1400ec540
lea r8, [rsp + 0x68]
mov rdx, rax
mov rcx, r9
call fcn.1400ec460
test al, al
je 0x140043566
call fcn.1400ec4d0
mov r9, rax
mov r10, qword [0x140273d10]
lea rdx, [r10 + 0x238]
lea rcx, [rbp + 0x38]
call fcn.1400ec540
mov r8, rax
lea rdx, [r10 + 0x230]
lea rcx, [rbp + 0x40]
call fcn.1400ec540
mov rdx, rax
mov rcx, r9
call fcn.1400ec460
test al, al
je 0x14004356d
mov byte [rbp + 0x160], 1
jmp 0x140043574
mov r10, qword [0x140273d10]
mov byte [rbp + 0x160], 0
mov dword [rsp + 0x20], 0xff
mov edx, 0x12
mov r9d, edx
mov r8d, edx
lea rcx, [rsp + 0x74]
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 + 0x168]
call fcn.14000b000
lea rdx, [rbp - 0x78]
lea rcx, [rsp + 0x78]
call fcn.1400ec540
mov rbx, rax
mov ecx, dword [rbp + 0x168]
mov dword [rbp + 0x168], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x168]
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, xmm6
addss xmm0, xmm1
movss dword [rsp + 0x68], xmm0
movss dword [rsp + 0x6c], xmm2
movss dword [rbp - 0x48], xmm1
movss dword [rbp - 0x44], xmm3
mov dword [rsp + 0x28], esi
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rsp + 0x68]
lea rdx, [rbp - 0x48]
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 xmm12, dword [rbp - 0x78]
movss dword [rbp - 0x48], xmm12
movss dword [rbp - 0x44], xmm1
mov r8b, 1
lea rdx, [rsp + 0x68]
lea rcx, [rbp - 0x48]
call fcn.140082dc0
xor r13b, r13b
mov byte [rbp + 0x168], r13b
mov r9d, esi
mov dword [rsp + 0x54], esi
mov r8, qword [rdi]
mov rcx, qword [rdi + 8]
sub rcx, r8
movabs rax, 0x2e8ba2e8ba2e8ba3
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
movabs rbx, 0x31005d68fcfcaf87
movabs r11, 0x21d880e9763f68ac
movss xmm11, dword [0x1401cb01c]
add rdx, rax
je 0x140044146
mov rax, rsi
mov qword [rsp + 0x68], rax
movabs r10, 0x21d880e9763f68f1
movss xmm6, dword [0x1401cb118]
movabs rdx, 0x43652b018eb8f4a7
imul rcx, rax, 0x58
mov qword [rsp + 0x78], rcx
cmp qword [r8 + rcx], 0
je 0x1400440fb
movsxd rax, r9d
imul rax, rax, 0x58
mov qword [rbp + 0x38], rax
cmp qword [r8 + rcx + 0x30], 0
je 0x14004376f
lea rcx, [rax + 0x38]
add rcx, r8
mov qword [rbp - 0x40], rdx
mov qword [rbp - 0x38], r10
mov qword [rbp + 0x210], rbx
mov qword [rbp + 0x218], r11
movdqa xmm0, xmmword [rbp - 0x40]
xorps xmm0, xmmword [rbp + 0x210]
movdqa xmmword [rbp - 0x40], xmm0
lea rdx, [rbp - 0x40]
call fcn.140034420
jmp 0x140043776
add rax, 0x38
add rax, r8
mov rdx, rax
lea rcx, [rbp + 0x188]
call fcn.140008b60
nop
lea rdx, [rbp + 0x188]
lea rcx, [rbp + 0x1e0]
call fcn.140008b60
nop
lea r15, [rbp + 0x1e0]
cmp qword [rbp + 0x1f8], 0xf
jbe 0x1400437c1
mov r15, qword [rbp + 0x1e0]
mov rbx, qword [rbp + 0x1f0]
add rbx, r15
mov rdi, r15
jmp 0x1400437d6
lea rbx, [rbp + 0x1e0]
add rbx, qword [rbp + 0x1f0]
lea rdi, [rbp + 0x1e0]
cmp rdi, rbx
je 0x1400437f4
sub r15, rdi
nop
movsx ecx, byte [rdi]
call fcn.1401697c8
mov byte [rdi + r15], al
inc rdi
cmp rdi, rbx
jne 0x1400437e0
mov rcx, r14
call fcn.140039ad0
mov dword [rsp + 0x5c], eax
lea rdx, [rsp + 0x5c]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rdx, rax
lea rcx, [rbp + 0x1c0]
call fcn.140008b60
nop
lea r15, [rbp + 0x1c0]
mov rax, qword [rbp + 0x1c0]
mov rcx, qword [rbp + 0x1d8]
mov r12, qword [rbp + 0x1d0]
cmp rcx, 0xf
jbe 0x14004384f
mov r15, rax
lea rbx, [rax + r12]
mov rdi, rax
jmp 0x140043860
lea rbx, [rbp + 0x1c0]
add rbx, r12
lea rdi, [rbp + 0x1c0]
cmp rdi, rbx
je 0x140043891
sub r15, rdi
movsx ecx, byte [rdi]
call fcn.1401697c8
mov byte [rdi + r15], al
inc rdi
cmp rdi, rbx
jne 0x140043868
mov rcx, qword [rbp + 0x1d8]
mov r12, qword [rbp + 0x1d0]
mov rax, qword [rbp + 0x1c0]
lea r9, [rbp + 0x1c0]
cmp rcx, 0xf
cmova r9, rax
lea rcx, [rbp + 0x1e0]
cmp qword [rbp + 0x1f8], 0xf
cmova rcx, qword [rbp + 0x1e0]
mov qword [rsp + 0x20], r12
mov rdx, qword [rbp + 0x1f0]
call fcn.14000bfc0
cmp rax, 0xffffffffffffffff
jne 0x140043904
test r12, r12
je 0x140043904
lea rcx, [rbp + 0x1c0]
call fcn.140008e00
nop
lea rcx, [rbp + 0x1e0]
call fcn.140008e00
nop
lea rcx, [rbp + 0x188]
call fcn.140008e00
mov r15d, 1
jmp 0x1400440d3
mov rcx, r14
call fcn.140039ad0
mov rbx, rax
mov rdi, qword [rbp + 0x170]
mov rcx, qword [rdi + 8]
mov qword [rbp - 0x70], rcx
mov dword [rbp - 0x68], esi
mov rax, rdi
cmp byte [rcx + 0x19], 0
jne 0x140043957
mov r14d, 1
mov qword [rbp - 0x70], rcx
cmp qword [rcx + 0x20], rbx
jae 0x140043943
mov dword [rbp - 0x68], esi
mov rcx, qword [rcx + 0x10]
jmp 0x14004394d
mov dword [rbp - 0x68], r14d
mov rax, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x140043930
mov r14, qword [rbp - 8]
cmp byte [rax + 0x19], 0
jne 0x140043963
cmp rbx, qword [rax + 0x20]
jae 0x1400439dd
movabs rax, 0x3ffffffffffffff
cmp qword [rbp + 0x178], rax
je 0x140046a5f
lea rax, [rbp + 0x170]
mov qword [rbp + 0xe8], rax
mov qword [rbp + 0xf0], rsi
mov ecx, 0x40
call fcn.14015d780
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x28], rsi
mov qword [rax + 0x30], rsi
mov qword [rax + 0x38], rsi
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
mov qword [rbp + 0xf0], rsi
movups xmm0, xmmword [rbp - 0x70]
movaps xmmword [rbp - 0x70], xmm0
mov r8, rax
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x170]
call fcn.140009ba0
lea rbx, [rax + 0x28]
mov rax, qword [rbx + 8]
cmp rax, qword [rbx + 0x10]
je 0x140043a01
lea rdx, [rbp + 0x188]
mov rcx, rax
call fcn.140008b60
add qword [rbx + 8], 0x20
jmp 0x140043a13
lea r8, [rbp + 0x188]
mov rdx, rax
mov rcx, rbx
call fcn.1400267c0
mov rcx, r14
call fcn.140039ad0
mov rbx, rax
mov rdi, qword [rbp + 0x1b0]
mov rcx, qword [rdi + 8]
mov qword [rbp - 0x70], rcx
mov dword [rbp - 0x68], esi
mov rax, rdi
cmp byte [rcx + 0x19], 0
jne 0x140043a66
mov r14d, 1
nop
mov qword [rbp - 0x70], rcx
cmp dword [rcx + 0x1c], ebx
jge 0x140043a52
mov dword [rbp - 0x68], esi
mov rcx, qword [rcx + 0x10]
jmp 0x140043a5c
mov dword [rbp - 0x68], r14d
mov rax, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x140043a40
mov r14, qword [rbp - 8]
cmp byte [rax + 0x19], 0
jne 0x140043a71
cmp ebx, dword [rax + 0x1c]
jge 0x140043ae1
movabs rax, 0x666666666666666
cmp qword [rbp + 0x1b8], rax
je 0x140046a59
lea rax, [rbp + 0x1b0]
mov qword [rbp + 0xf8], rax
mov qword [rbp + 0x100], rsi
mov ecx, 0x28
call fcn.14015d780
nop
mov dword [rax + 0x1c], ebx
mov dword [rax + 0x20], esi
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
mov qword [rbp + 0x100], rsi
movups xmm0, xmmword [rbp - 0x70]
movaps xmmword [rbp - 0x70], xmm0
mov r8, rax
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x1b0]
call fcn.140009ba0
add dword [rax + 0x20], 0x14
mov rcx, r14
call fcn.140039ad0
mov qword [rbp + 0x40], rax
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x170]
call fcn.14004a500
mov r12, qword [rax + 8]
sub r12, qword [rax]
sar r12, 5
mov rcx, r14
call fcn.140039ad0
mov rdi, rax
mov rcx, r14
call fcn.140039ad0
mov dword [rsp + 0x70], eax
mov r15, qword [rbp + 0x1b0]
mov rcx, qword [r15 + 8]
mov qword [rbp - 0x70], rcx
mov dword [rbp - 0x68], esi
mov rbx, r15
cmp byte [rcx + 0x19], 0
jne 0x140043b6a
mov r14d, 1
mov qword [rbp - 0x70], rcx
cmp dword [rcx + 0x1c], edi
jge 0x140043b56
mov dword [rbp - 0x68], esi
mov rcx, qword [rcx + 0x10]
jmp 0x140043b60
mov dword [rbp - 0x68], r14d
mov rbx, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x140043b44
mov r14, qword [rbp - 8]
cmp byte [rbx + 0x19], 0
jne 0x140043b75
cmp edi, dword [rbx + 0x1c]
jge 0x140043be8
movabs rax, 0x666666666666666
cmp qword [rbp + 0x1b8], rax
je 0x140046a53
lea rax, [rbp + 0x1b0]
mov qword [rbp + 0x200], rax
mov qword [rbp + 0x208], rsi
mov ecx, 0x28
call fcn.14015d780
nop
mov dword [rax + 0x1c], edi
mov dword [rax + 0x20], esi
mov qword [rax], r15
mov qword [rax + 8], r15
mov qword [rax + 0x10], r15
mov word [rax + 0x18], 0
mov qword [rbp + 0x208], rsi
movups xmm0, xmmword [rbp - 0x70]
movaps xmmword [rbp - 0x70], xmm0
mov r8, rax
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x1b0]
call fcn.140009ba0
mov rbx, rax
lea rdx, [rsp + 0x70]
call fcn.14004a960
movd xmm2, dword [rbx + 0x20]
cvtdq2ps xmm2, xmm2
addss xmm2, dword [rax]
addss xmm2, xmm9
movaps xmm0, xmm12
addss xmm0, xmm10
movss dword [rbp], xmm0
movss dword [rbp + 4], xmm2
mov ecx, esi
cmp r12, 0x10
mov eax, 6
cmova ecx, eax
mov eax, dword [rsp + 0x60]
sub eax, ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x48], xmm0
mov dword [rbp - 0x44], 0x41a00000
movaps xmm1, xmm9
subss xmm1, xmm11
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 0x140044088
test al, al
je 0x140044088
cmp byte [rbp + 0x160], 0
je 0x140043e5b
call fcn.1400ec4d0
mov r9, rax
mov qword [rbp + 0xb0], 0x40c00000
lea r8, [rbp + 0xb0]
lea rdx, [rbp + 0x70]
lea rcx, [rbp - 0x48]
call fcn.1400ec5e0
mov r8, rax
lea rdx, [rbp]
lea rcx, [rbp + 0x60]
call fcn.1400ec540
mov rdx, rax
mov rcx, r9
call fcn.1400ec460
test al, al
je 0x140043e5b
cmp byte [rsp + 0x50], 0
jne 0x140043e5b
call fcn.1400ec4d0
mov r9, rax
mov r10, qword [0x140273d10]
lea rdx, [r10 + 0x238]
lea rcx, [rbp + 0xc8]
call fcn.1400ec540
mov r8, rax
lea rdx, [r10 + 0x230]
lea rcx, [rbp + 0xd0]
call fcn.1400ec540
mov rdx, rax
mov rcx, r9
call fcn.1400ec460
test al, al
je 0x140043e62
cmp qword [r10 + 0x260], 0
jne 0x140043e62
mov dword [rsp + 0x20], 0xff
mov edx, 0x12
mov r9d, edx
mov r8d, edx
lea rcx, [rbp - 0x80]
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 + 0x158]
call fcn.14000b000
lea rdx, [rbp - 0x48]
lea rcx, [rbp + 0xb8]
call fcn.1400ec540
mov rdi, rax
lea rdx, [rbp]
lea rcx, [rbp + 0xd8]
call fcn.1400ec540
mov rbx, rax
mov ecx, dword [rbp + 0x158]
mov dword [rbp + 0x180], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0x180]
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 + 0xa8], xmm0
movss dword [rbp + 0xac], xmm2
movss dword [rbp + 0x10], xmm1
movss dword [rbp + 0x14], xmm3
mov dword [rsp + 0x28], esi
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rbp + 0xa8]
lea rdx, [rbp + 0x10]
mov rcx, r10
call fcn.140073900
call fcn.1400ec4d0
mov edx, 1
call fcn.1400ec4a0
test al, al
je 0x140043e5b
mov rdi, qword [rbp + 8]
mov rdx, qword [rbp + 0x38]
add rdx, qword [rdi]
lea rcx, [0x1401efd20]
call fcn.140015f70
mov r10, qword [0x140273d10]
jmp 0x140043e66
mov r10, qword [0x140273d10]
mov rdi, qword [rbp + 8]
mov rax, qword [rdi]
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx + rax]
mov dword [rsp + 0x20], 0xff
cmp qword [0x1401efd20], rax
je 0x140043f29
mov edx, 0xc8
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x80]
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 - 0x30]
call fcn.14000b000
mov dword [rbp + 0x50], 0x41200000
mov dword [rbp + 0x54], 0x40800000
lea r8, [rbp + 0x50]
lea rdx, [rbp + 0x48]
lea rcx, [rbp]
call fcn.1400ec5b0
mov rbx, rax
lea rdx, [rbp + 0x188]
lea rcx, [rbp - 0x70]
call fcn.140008b60
mov r8d, dword [rbp - 0x30]
xor r9d, r9d
mov dword [rsp + 0x20], esi
mov rdx, rbx
mov rcx, rax
call fcn.140082420
mov ebx, dword [rbp + 0x168]
mov r15d, 1
jmp 0x1400440a7
mov edx, 0x12
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x30]
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 - 0x2c]
call fcn.14000b000
lea rdx, [rbp - 0x48]
lea rcx, [rbp + 0xe0]
call fcn.1400ec540
mov rdi, rax
lea rdx, [rbp]
lea rcx, [rbp + 0xc0]
call fcn.1400ec540
mov rbx, rax
mov ecx, dword [rbp - 0x2c]
mov dword [rbp + 0x180], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp - 0x28]
lea rcx, [rbp + 0x180]
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 + 0x58], xmm0
movss dword [rbp + 0x5c], xmm2
movss dword [rsp + 0x48], xmm1
movss dword [rsp + 0x4c], xmm3
mov dword [rsp + 0x28], esi
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rbp + 0x58]
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, [rbp - 0x50]
call fcn.14000b000
mov dword [rsp + 0x40], 0x41200000
mov dword [rsp + 0x44], 0x40800000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x20]
lea rcx, [rbp]
call fcn.1400ec5b0
mov rbx, rax
lea rdx, [rbp + 0x188]
lea rcx, [rbp - 0x70]
call fcn.140008b60
mov r8d, dword [rbp - 0x50]
jmp 0x140043f06
movzx r13d, r13b
test al, al
mov r15d, 1
cmove r13d, r15d
mov ebx, dword [rbp + 0x168]
movzx ebx, bl
test cl, cl
cmove ebx, r15d
mov dword [rbp + 0x168], ebx
lea rcx, [rbp + 0x1c0]
call fcn.140008e00
nop
lea rcx, [rbp + 0x1e0]
call fcn.140008e00
nop
lea rcx, [rbp + 0x188]
call fcn.140008e00
movabs r11, 0x21d880e9763f68ac
movabs r10, 0x21d880e9763f68f1
movabs rbx, 0x31005d68fcfcaf87
mov rax, qword [rsp + 0x68]
mov r9d, dword [rsp + 0x54]
inc r9d
mov dword [rsp + 0x54], r9d
inc rax
mov qword [rsp + 0x68], rax
mov rax, qword [rbp + 8]
mov r8, qword [rax]
mov rcx, qword [rax + 8]
sub rcx, r8
movabs rax, 0x2e8ba2e8ba2e8ba3
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, r9d
cmp rax, rdx
jae 0x140044146
mov rax, qword [rsp + 0x68]
jmp 0x140043705
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov rdx, r15
mov rcx, qword [rax]
call fcn.1400561d0
mov rdx, rax
mov eax, dword [rax + 0x58]
sub eax, 1
mov dword [rdx + 0x58], eax
jne 0x14004417e
mov rcx, qword [rdx + 0x38]
add rcx, 0x1c
jmp 0x14004418b
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 r12, 0xffffffffffffffff
mov dword [rsp + 0x54], r12d
mov dword [rsp + 0x5c], r12d
mov r8, qword [r14 + 0x10]
mov rdx, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x1400441bf
mov rdx, qword [r14]
movabs r15, 0xcbf29ce484222325
mov rbx, r15
mov rcx, rsi
movabs r9, 0x100000001b3
test r8, r8
je 0x1400441f3
nop
movzx eax, byte [rdx + rcx]
xor rbx, rax
imul rbx, r9
inc rcx
cmp rcx, r8
jb 0x1400441e0
mov rdi, qword [rbp + 0x170]
mov rax, qword [rdi + 8]
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x20], esi
mov rcx, rdi
cmp byte [rax + 0x19], 0
jne 0x140044236
nop
mov qword [rbp - 0x28], rax
cmp qword [rax + 0x20], rbx
jae 0x140044223
mov dword [rbp - 0x20], esi
mov rax, qword [rax + 0x10]
jmp 0x140044230
mov dword [rbp - 0x20], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140044210
cmp byte [rcx + 0x19], 0
jne 0x140044246
cmp rbx, qword [rcx + 0x20]
jae 0x1400442c7
movabs rax, 0x3ffffffffffffff
cmp qword [rbp + 0x178], rax
je 0x140046a65
lea rax, [rbp + 0x170]
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x68], rsi
mov ecx, 0x40
call fcn.14015d780
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x28], rsi
mov qword [rax + 0x30], rsi
mov qword [rax + 0x38], rsi
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rbp - 0x28]
movaps xmmword [rbp - 0x70], xmm0
mov r8, rax
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x170]
call fcn.140009ba0
mov rcx, rax
mov rdi, qword [rbp + 0x170]
movabs r9, 0x100000001b3
mov rax, qword [rcx + 0x30]
sub rax, qword [rcx + 0x28]
sar rax, 5
movss xmm6, dword [0x1401caf40]
cmp rax, 0x10
jbe 0x140044782
mov r8, qword [r14 + 0x10]
mov rdx, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x1400442f6
mov rdx, qword [r14]
mov rbx, r15
mov rcx, rsi
test r8, r8
je 0x140044314
movzx eax, byte [rcx + rdx]
xor rbx, rax
imul rbx, r9
inc rcx
cmp rcx, r8
jb 0x140044301
mov rax, qword [rdi + 8]
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x20], esi
mov rcx, rdi
cmp byte [rax + 0x19], 0
jne 0x140044356
nop dword [rax + rax]
mov qword [rbp - 0x28], rax
cmp qword [rax + 0x20], rbx
jae 0x140044343
mov dword [rbp - 0x20], esi
mov rax, qword [rax + 0x10]
jmp 0x140044350
mov dword [rbp - 0x20], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140044330
cmp byte [rcx + 0x19], 0
jne 0x140044362
cmp rbx, qword [rcx + 0x20]
jae 0x1400443d9
movabs rax, 0x3ffffffffffffff
cmp qword [rbp + 0x178], rax
je 0x140046a6b
lea rax, [rbp + 0x170]
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x68], rsi
mov ecx, 0x40
call fcn.14015d780
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x28], rsi
mov qword [rax + 0x30], rsi
mov qword [rax + 0x38], rsi
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rbp - 0x28]
movaps xmmword [rbp - 0x70], xmm0
mov r8, rax
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x170]
call fcn.140009ba0
mov rcx, rax
mov rdi, qword [rbp + 0x170]
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 0x140044400
cvtsi2ss xmm2, rcx
jmp 0x140044415
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 + 0x54], eax
mov r9, qword [r14 + 0x10]
mov r8, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x140044441
mov r8, qword [r14]
mov rcx, r15
mov rdx, rsi
movabs r10, 0x100000001b3
test r9, r9
je 0x140044474
nop word [rax + rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r10
inc rdx
cmp rdx, r9
jb 0x140044460
mov dword [rbp - 0x50], ecx
mov rdx, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x140044484
mov rdx, qword [r14]
mov rbx, r15
mov rcx, rsi
test r9, r9
je 0x1400444a3
nop
movzx eax, byte [rcx + rdx]
xor rbx, rax
imul rbx, r10
inc rcx
cmp rcx, r9
jb 0x140044490
mov rax, qword [rdi + 8]
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x20], esi
mov rcx, rdi
cmp byte [rax + 0x19], 0
jne 0x1400444e6
nop word [rax + rax]
mov qword [rbp - 0x28], rax
cmp qword [rax + 0x20], rbx
jae 0x1400444d3
mov dword [rbp - 0x20], esi
mov rax, qword [rax + 0x10]
jmp 0x1400444e0
mov dword [rbp - 0x20], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1400444c0
cmp byte [rcx + 0x19], 0
jne 0x1400444f2
cmp rbx, qword [rcx + 0x20]
jae 0x140044562
movabs rax, 0x3ffffffffffffff
cmp qword [rbp + 0x178], rax
je 0x140046a71
lea rax, [rbp + 0x170]
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x68], rsi
mov ecx, 0x40
call fcn.14015d780
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x28], rsi
mov qword [rax + 0x30], rsi
mov qword [rax + 0x38], rsi
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rbp - 0x28]
movaps xmmword [rbp - 0x70], xmm0
mov r8, rax
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x170]
call fcn.140009ba0
mov rcx, rax
mov rbx, qword [rcx + 0x30]
sub rbx, qword [rcx + 0x28]
sar rbx, 5
lea rdx, [rbp - 0x50]
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 0x14004459d
cvtsi2ss xmm1, rcx
jmp 0x1400445b2
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 0x140044648
mov rcx, r14
call fcn.140039ad0
mov dword [rbp - 0x2c], eax
mov rcx, r14
call fcn.140039ad0
mov qword [rsp + 0x78], rax
lea rdx, [rsp + 0x78]
lea rcx, [rbp + 0x170]
call fcn.14004a500
mov rbx, qword [rax + 8]
sub rbx, qword [rax]
sar rbx, 5
lea rdx, [rbp - 0x2c]
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 0x140044628
cvtsi2ss xmm1, rcx
divss xmm0, xmm1
mulss xmm0, xmm8
jmp 0x14004464b
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 0x14004464b
movaps xmm0, xmm6
mov eax, 0x140
sub eax, dword [rsp + 0x54]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm1, xmm6
comiss xmm1, xmm0
jbe 0x140044770
mov rcx, r14
call fcn.140039ad0
mov dword [rbp - 0x30], eax
mov rcx, r14
call fcn.140039ad0
mov qword [rbp + 0x38], rax
lea rdx, [rbp + 0x38]
lea rcx, [rbp + 0x170]
call fcn.14004a500
mov rbx, qword [rax + 8]
sub rbx, qword [rax]
sar rbx, 5
lea rdx, [rbp - 0x30]
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 0x1400446c1
cvtsi2ss xmm1, rcx
jmp 0x1400446d6
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 0x140044773
mov rcx, r14
call fcn.140039ad0
mov dword [rbp + 0x180], eax
mov rcx, r14
call fcn.140039ad0
mov qword [rbp + 0x40], rax
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x170]
call fcn.14004a500
mov rbx, qword [rax + 8]
sub rbx, qword [rax]
sar rbx, 5
lea rdx, [rbp + 0x180]
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 0x140044750
cvtsi2ss xmm0, rcx
divss xmm6, xmm0
mulss xmm6, xmm8
jmp 0x140044773
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 0x140044773
movaps xmm6, xmm1
cvttss2si eax, xmm6
mov dword [rsp + 0x5c], eax
mov rdi, qword [rbp + 0x170]
movabs rax, 0x7fffffffffffffff
lea rdx, [0x1401bef70]
cmp byte [rbp + 0x160], 0
jne 0x140044851
mov rcx, qword [r14 + 0x10]
sub rax, rcx
cmp rax, 1
jb 0x140046a77
mov r9, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x1400447be
mov r9, qword [r14]
mov eax, 1
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0x128]
call fcn.140039850
nop
mov eax, 0x11
mov dword [rsp + 0x58], eax
lea r8, [rbp + 0x128]
cmp qword [rbp + 0x140], 0xf
cmova r8, qword [rbp + 0x128]
mov rcx, r15
mov rdx, rsi
mov r9, qword [rbp + 0x138]
movabs r10, 0x100000001b3
test r9, r9
je 0x140044834
nop dword [rax + rax]
movzx eax, byte [r8 + rdx]
xor rcx, rax
imul rcx, r10
inc rdx
cmp rdx, r9
jb 0x140044820
mov rax, qword [0x140273d10]
cmp qword [rax + 0x260], rcx
jne 0x140044978
mov rdi, qword [rbp + 0x170]
jmp 0x14004485b
movabs r10, 0x100000001b3
mov r8, qword [r14 + 0x10]
mov rdx, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x14004486c
mov rdx, qword [r14]
mov rbx, r15
mov rcx, rsi
test r8, r8
je 0x140044893
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
xor rbx, rax
imul rbx, r10
inc rcx
cmp rcx, r8
jb 0x140044880
mov rax, qword [rdi + 8]
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x20], esi
mov rcx, rdi
cmp byte [rax + 0x19], 0
jne 0x1400448d6
nop word [rax + rax]
mov qword [rbp - 0x28], rax
cmp qword [rax + 0x20], rbx
jae 0x1400448c3
mov dword [rbp - 0x20], esi
mov rax, qword [rax + 0x10]
jmp 0x1400448d0
mov dword [rbp - 0x20], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1400448b0
cmp byte [rcx + 0x19], 0
jne 0x1400448e2
cmp rbx, qword [rcx + 0x20]
jae 0x140044952
movabs rax, 0x3ffffffffffffff
cmp qword [rbp + 0x178], rax
je 0x140046a7d
lea rax, [rbp + 0x170]
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x68], rsi
mov ecx, 0x40
call fcn.14015d780
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x28], rsi
mov qword [rax + 0x30], rsi
mov qword [rax + 0x38], rsi
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rbp - 0x28]
movaps xmmword [rbp - 0x70], xmm0
mov r8, rax
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x170]
call fcn.140009ba0
mov rcx, rax
mov rax, qword [rcx + 0x30]
sub rax, qword [rcx + 0x28]
sar rax, 5
mov edi, dword [rsp + 0x5c]
cmp rax, 0x10
jbe 0x14004497c
cmp dword [rsp + 0x54], 0xffffffff
je 0x14004497c
cmp edi, 0xffffffff
je 0x14004497c
mov bl, 1
jmp 0x14004497e
mov edi, dword [rsp + 0x5c]
xor bl, bl
mov eax, dword [rsp + 0x58]
test al, 1
je 0x140044999
and eax, 0xfffffffe
mov dword [rsp + 0x58], eax
lea rcx, [rbp + 0x128]
call fcn.140008e00
mov rax, qword [0x140273d10]
test bl, bl
je 0x140045008
cmp qword [rax + 0x260], 0
jne 0x140044a48
call fcn.1400ec4d0
mov rax, qword [0x1402718d8]
movss xmm0, dword [rax + 0xe10]
comiss xmm0, xmm10
jbe 0x1400449f5
mov rcx, r14
call fcn.140039ad0
mov dword [rbp + 0x158], eax
lea rdx, [rbp + 0x158]
call fcn.14004a960
movss xmm6, dword [rax]
addss xmm6, xmm11
jmp 0x140044a2e
call fcn.1400ec4d0
mov rax, qword [0x1402718d8]
comiss xmm10, dword [rax + 0xe10]
jbe 0x140044a48
mov rcx, r14
call fcn.140039ad0
mov dword [rbp + 0x158], eax
lea rdx, [rbp + 0x158]
call fcn.14004a960
movss xmm6, dword [rax]
subss xmm6, xmm11
mov rcx, r14
call fcn.140039ad0
mov dword [rsp + 0x70], eax
lea rdx, [rsp + 0x70]
call fcn.14004a960
movss dword [rax], xmm6
mov rdx, qword [0x140272c18]
test rdx, rdx
jne 0x140044a70
lea ecx, [rdx + 8]
call fcn.14015d780
mov rdx, rax
mov qword [rbp + 0x48], rax
mov qword [rax], rsi
mov dword [rax + 4], esi
mov qword [0x140272c18], rax
movd xmm4, dword [rsp + 0x54]
cvtdq2ps xmm4, xmm4
mov ecx, dword [rsp + 0x60]
add ecx, 0xfffffffb
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
lea eax, [rdi + 1]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm1, xmm9
movaps xmm2, xmm12
addss xmm2, xmm0
movss xmm3, dword [rdx]
comiss xmm3, xmm2
jbe 0x140044acb
movss xmm0, dword [rdx + 4]
comiss xmm0, xmm1
jbe 0x140044acb
addss xmm2, dword [0x1401caf88]
comiss xmm2, xmm3
jbe 0x140044acb
addss xmm1, xmm4
comiss xmm1, xmm0
jbe 0x140044acb
mov cl, 1
jmp 0x140044acd
xor cl, cl
mov rax, qword [0x140273d10]
cmp qword [rax + 0x260], 0
jne 0x140044b3a
test cl, cl
je 0x140044de7
call fcn.1400ec4d0
mov edx, 1
call fcn.1400ec3d0
test al, al
je 0x140044de0
lea r8, [0x1401bef70]
mov rdx, r14
lea rcx, [rbp + 0x188]
call fcn.14003b8b0
mov rcx, rax
call fcn.140039ad0
mov rcx, qword [0x140273d10]
mov qword [rcx + 0x260], rax
lea rcx, [rbp + 0x188]
call fcn.140008e00
jmp 0x140044de0
lea r8, [0x1401bef70]
mov rdx, r14
lea rcx, [rbp + 0x188]
call fcn.14003b8b0
mov rcx, rax
call fcn.140039ad0
mov rdi, rax
mov rcx, qword [0x140273d10]
mov rbx, qword [rcx + 0x260]
lea rcx, [rbp + 0x188]
call fcn.140008e00
cmp rbx, rdi
jne 0x140044de0
call fcn.1400ec4d0
mov edx, 1
call fcn.1400ec3d0
test al, al
je 0x140044dc8
mov rcx, r14
call fcn.140039ad0
mov qword [rsp + 0x40], rax
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x170]
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 0x140044bd9
cvtsi2ss xmm1, rcx
jmp 0x140044bee
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 0x140044c6d
mov rcx, r14
call fcn.140039ad0
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x48]
lea rcx, [rbp + 0x170]
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 0x140044c52
cvtsi2ss xmm0, rcx
divss xmm6, xmm0
jmp 0x140044c70
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm6, xmm0
jmp 0x140044c70
movaps xmm6, xmm2
mov edi, 4
mov rax, qword gs:[0x58]
mov rbx, qword [rax]
mov eax, dword [rdi + rbx]
cmp dword [0x140276bf4], eax
jle 0x140044cb8
lea rcx, [0x140276bf4]
call fcn.14015dba8
cmp dword [0x140276bf4], 0xffffffff
jne 0x140044cb8
mov qword [0x140276be8], 0
lea rcx, [0x140276bf4]
call fcn.14015db3c
mov eax, dword [rdi + rbx]
cmp dword [0x140276ba8], eax
jle 0x140044cef
lea rcx, [0x140276ba8]
call fcn.14015dba8
cmp dword [0x140276ba8], 0xffffffff
jne 0x140044cef
mov qword [0x140276bd0], 0
lea rcx, [0x140276ba8]
call fcn.14015db3c
call fcn.1400ec4d0
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.1400ec540
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x48]
lea rcx, [0x140276be8]
call fcn.1400ec5e0
movss xmm3, dword [rax + 4]
movss xmm2, dword [rax]
movss dword [0x140276bd0], xmm2
movss dword [0x140276bd4], xmm3
mov rcx, r14
call fcn.140039ad0
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x48]
lea rcx, [rbp + 0x170]
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 [0x140276bd4]
subss xmm8, xmm6
cvttss2si r9d, xmm8
mov dword [rsp + 0x28], eax
call fcn.14003f5d0
movaps xmm6, xmm0
mov rcx, r14
call fcn.140039ad0
mov dword [rbp - 0x80], eax
lea rdx, [rbp - 0x80]
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 [0x140276be8], xmm1
movss xmm2, dword [rsp + 0x44]
movss dword [0x140276bec], xmm2
jmp 0x140044de0
mov dword [0x140272bc8], 0
mov rax, qword [0x140273d10]
mov qword [rax + 0x260], rsi
mov rdx, qword [0x140272c18]
test rdx, rdx
jne 0x140044e08
lea ecx, [rdx + 8]
call fcn.14015d780
mov rdx, rax
mov qword [rbp + 0x48], rax
mov qword [rax], rsi
mov dword [rax + 4], esi
mov qword [0x140272c18], rax
movss xmm0, dword [rdx + 4]
movss dword [0x140272bc8], xmm0
mov rax, qword [0x140273d10]
mov byte [rax + 0x2ec], 1
mov dword [rbp + 0x150], esi
mov r8, qword [r14 + 0x10]
mov rdx, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x140044e3a
mov rdx, qword [r14]
mov rbx, r15
mov rcx, rsi
test r8, r8
je 0x140044e67
movabs r14, 0x100000001b3
nop
movzx eax, byte [rcx + rdx]
xor rbx, rax
imul rbx, r14
inc rcx
cmp rcx, r8
jb 0x140044e50
mov r14, qword [rbp - 8]
mov rdi, qword [rbp + 0x170]
mov rax, qword [rdi + 8]
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x20], esi
mov rcx, rdi
cmp byte [rax + 0x19], 0
jne 0x140044ea8
mov qword [rbp - 0x28], rax
cmp qword [rax + 0x20], rbx
jae 0x140044e95
mov dword [rbp - 0x20], esi
mov rax, qword [rax + 0x10]
jmp 0x140044ea2
mov dword [rbp - 0x20], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140044e82
cmp byte [rcx + 0x19], 0
jne 0x140044eb4
cmp rbx, qword [rcx + 0x20]
jae 0x140044f24
movabs rax, 0x3ffffffffffffff
cmp qword [rbp + 0x178], rax
je 0x140046a83
lea rax, [rbp + 0x170]
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x68], rsi
mov ecx, 0x40
call fcn.14015d780
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x28], rsi
mov qword [rax + 0x30], rsi
mov qword [rax + 0x38], rsi
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rbp - 0x28]
movaps xmmword [rbp - 0x70], xmm0
mov r8, rax
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x170]
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 + 0x158], ebx
mov r9, qword [r14 + 0x10]
mov r8, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x140044f54
mov r8, qword [r14]
mov rcx, r15
mov rdx, rsi
movabs rdi, 0x100000001b3
test r9, r9
je 0x140044f84
nop dword [rax]
movzx eax, byte [r8 + rdx]
xor rcx, rax
imul rcx, rdi
inc rdx
cmp rdx, r9
jb 0x140044f70
mov dword [rbp - 0x80], ecx
lea rdx, [rbp - 0x80]
call fcn.14004a960
cvttss2si edx, dword [rax]
mov dword [rsp + 0x70], edx
lea rcx, [rbp + 0x158]
lea rax, [rsp + 0x70]
cmp edx, ebx
cmovge rcx, rax
lea rax, [rbp + 0x150]
test edx, edx
cmovle rax, rcx
movd xmm6, dword [rax]
cvtdq2ps xmm6, xmm6
mov r9, qword [r14 + 0x10]
mov r8, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x140044fcf
mov r8, qword [r14]
mov rcx, r15
mov rdx, rsi
test r9, r9
je 0x140044ff4
nop word [rax + rax]
movzx eax, byte [r8 + rdx]
xor rcx, rax
imul rcx, rdi
inc rdx
cmp rdx, r9
jb 0x140044fe0
mov dword [rsp + 0x74], ecx
lea rdx, [rsp + 0x74]
call fcn.14004a960
movss dword [rax], xmm6
jmp 0x14004500f
mov byte [rax + 0x2ec], 0
mov r8, qword [r14 + 0x10]
mov rdx, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x140045020
mov rdx, qword [r14]
mov rbx, r15
mov rcx, rsi
test r8, r8
je 0x140045057
movabs r14, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
xor rbx, rax
imul rbx, r14
inc rcx
cmp rcx, r8
jb 0x140045040
mov r14, qword [rbp - 8]
mov rdi, qword [rbp + 0x170]
mov rax, qword [rdi + 8]
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x20], esi
mov rcx, rdi
cmp byte [rax + 0x19], 0
jne 0x140045098
mov qword [rbp - 0x28], rax
cmp qword [rax + 0x20], rbx
jae 0x140045085
mov dword [rbp - 0x20], esi
mov rax, qword [rax + 0x10]
jmp 0x140045092
mov dword [rbp - 0x20], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140045072
cmp byte [rcx + 0x19], 0
jne 0x1400450a4
cmp rbx, qword [rcx + 0x20]
jae 0x14004511b
movabs rax, 0x3ffffffffffffff
cmp qword [rbp + 0x178], rax
je 0x140046a89
lea rax, [rbp + 0x170]
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x68], rsi
mov ecx, 0x40
call fcn.14015d780
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x28], rsi
mov qword [rax + 0x30], rsi
mov qword [rax + 0x38], rsi
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rbp - 0x28]
movaps xmmword [rbp - 0x70], xmm0
mov r8, rax
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x170]
call fcn.140009ba0
mov rcx, rax
mov rdi, qword [rbp + 0x170]
mov rax, qword [rcx + 0x30]
sub rax, qword [rcx + 0x28]
sar rax, 5
cmp rax, 0x10
jbe 0x140045424
cmp dword [rsp + 0x54], 0xffffffff
je 0x140045424
cmp dword [rsp + 0x5c], 0xffffffff
je 0x140045424
mov dword [rsp + 0x20], 0xff
mov edx, 0x12
mov r9d, edx
mov r8d, edx
lea rcx, [rbp + 0x30]
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 + 0x150]
call fcn.14000b000
mov edi, dword [rsp + 0x60]
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 + 0xb8]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov rbx, rax
mov ecx, dword [rbp + 0x150]
mov dword [rbp + 0x150], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp - 0x28]
lea rcx, [rbp + 0x150]
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], esi
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 + 0x54]
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 + 0x5c]
inc ecx
movd xmm8, ecx
cvtdq2ps xmm8, xmm8
movss dword [rsp + 0x44], xmm8
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0xb8]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
lea r8, [rsp + 0x48]
mov rdx, rax
mov rcx, r9
call fcn.1400ec460
test al, al
jne 0x140045308
lea r8, [0x1401bef70]
mov rdx, r14
lea rcx, [rbp + 0x188]
call fcn.14003b8b0
nop
mov edi, dword [rsp + 0x58]
or edi, 2
mov dword [rsp + 0x58], edi
mov rcx, rax
call fcn.140039ad0
mov r10, qword [0x140273d10]
cmp qword [r10 + 0x260], rax
je 0x140045313
mov edx, 0x41
lea rcx, [rbp + 0x30]
jmp 0x14004531f
mov r10, qword [0x140273d10]
mov edi, dword [rsp + 0x58]
mov edx, 0x50
lea rcx, [rbp + 0x80]
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 + 0x150]
call fcn.14000b000
mov r9d, dword [rbp + 0x150]
movss dword [rsp + 0x40], xmm7
movss dword [rsp + 0x44], xmm8
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0xd0]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov rbx, rax
mov dword [rbp + 0x150], r9d
call fcn.140056380
mov r10, rax
lea rdx, [rbp - 0x28]
lea rcx, [rbp + 0x150]
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], esi
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 0x14004541d
lea rcx, [rbp + 0x188]
call fcn.140008e00
mov rdi, qword [rbp + 0x170]
movss xmm7, dword [0x1401cafa0]
movss xmm8, dword [0x1401caf5c]
test r13b, r13b
je 0x14004611c
mov r8, qword [r14 + 0x10]
mov rdx, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x14004544f
mov rdx, qword [r14]
mov rbx, r15
mov rcx, rsi
test r8, r8
je 0x140045487
movabs r14, 0x100000001b3
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
xor rbx, rax
imul rbx, r14
inc rcx
cmp rcx, r8
jb 0x140045470
mov r14, qword [rbp - 8]
mov rax, qword [rdi + 8]
mov qword [rbp + 0x88], rax
mov dword [rbp + 0x90], esi
mov rcx, rdi
cmp byte [rax + 0x19], 0
jne 0x1400454d0
mov qword [rbp + 0x88], rax
cmp qword [rax + 0x20], rbx
jae 0x1400454ba
mov dword [rbp + 0x90], esi
mov rax, qword [rax + 0x10]
jmp 0x1400454ca
mov dword [rbp + 0x90], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1400454a1
cmp byte [rcx + 0x19], 0
jne 0x1400454dc
cmp rbx, qword [rcx + 0x20]
jae 0x14004554f
movabs rax, 0x3ffffffffffffff
cmp qword [rbp + 0x178], rax
je 0x140046a8f
lea rax, [rbp + 0x170]
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x68], rsi
mov ecx, 0x40
call fcn.14015d780
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x28], rsi
mov qword [rax + 0x30], rsi
mov qword [rax + 0x38], rsi
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movups xmm0, xmmword [rbp + 0x88]
movaps xmmword [rbp - 0x70], xmm0
mov r8, rax
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x170]
call fcn.140009ba0
mov rcx, rax
mov rax, qword [rcx + 0x30]
sub rax, qword [rcx + 0x28]
sar rax, 5
cmp rax, 0x10
jbe 0x140045a4c
mov rcx, r14
call fcn.140039ad0
mov qword [rbp + 0x58], rax
lea rdx, [rbp + 0x58]
lea rcx, [rbp + 0x170]
call fcn.14004a500
mov rcx, qword [rax + 8]
sub rcx, qword [rax]
sar rcx, 5
mov edi, dword [rsp + 0x54]
mov ebx, dword [rsp + 0x5c]
cmp rcx, 0x10
jbe 0x140045a54
cmp edi, 0xffffffff
je 0x140045a54
cmp ebx, 0xffffffff
je 0x140045a54
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x158]
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 + 0x150]
call fcn.14000b000
mov r13d, dword [rsp + 0x60]
movd xmm0, r13d
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
mov dword [rsp + 0x44], 0x439f0000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x60]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov dword [rsp + 0x40], 0x41880000
mov dword [rsp + 0x44], 0x41200000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x70]
mov rcx, rax
call fcn.1400ec5e0
mov rbx, rax
mov ecx, dword [rbp + 0x150]
mov dword [rbp + 0x150], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0x150]
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], esi
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 + 0x158]
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 + 0x150]
call fcn.14000b000
movd xmm0, r13d
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
mov dword [rsp + 0x44], 0x439f0000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x60]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov dword [rsp + 0x40], 0x41880000
mov dword [rsp + 0x44], 0x41100000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x70]
mov rcx, rax
call fcn.1400ec5e0
mov rbx, rax
mov ecx, dword [rbp + 0x150]
mov dword [rbp + 0x150], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0x150]
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], esi
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 + 0x158]
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 + 0x150]
call fcn.14000b000
movd xmm0, r13d
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
mov dword [rsp + 0x44], 0x439f0000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x60]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov dword [rsp + 0x40], 0x41800000
mov dword [rsp + 0x44], 0x41000000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x70]
mov rcx, rax
call fcn.1400ec5e0
mov rbx, rax
mov ecx, dword [rbp + 0x150]
mov dword [rbp + 0x150], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0x150]
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], esi
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, [rsp + 0x70]
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 + 0x150]
call fcn.14000b000
movd xmm0, r13d
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
mov dword [rsp + 0x44], 0x439f0000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x60]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov dword [rsp + 0x40], 0x41700000
mov dword [rsp + 0x44], 0x40e00000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x70]
mov rcx, rax
call fcn.1400ec5e0
mov rbx, rax
mov ecx, dword [rbp + 0x150]
mov dword [rbp + 0x150], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0x150]
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], esi
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 + 0x5c]
jmp 0x140045a59
mov ebx, dword [rsp + 0x5c]
mov edi, dword [rsp + 0x54]
mov r13d, dword [rsp + 0x60]
cmp byte [rbp + 0x168], 0
je 0x140045f71
mov r9, qword [r14 + 0x10]
mov r8, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x140045a77
mov r8, qword [r14]
mov rcx, r15
mov rdx, rsi
test r9, r9
je 0x140045aa8
movabs rdi, 0x100000001b3
nop dword [rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, rdi
inc rdx
cmp rdx, r9
jb 0x140045a90
mov edi, dword [rsp + 0x54]
mov dword [rbp + 0x150], ecx
lea rdx, [rbp + 0x150]
call fcn.14004a960
movss xmm0, dword [0x1401cb200]
comiss xmm0, dword [rax]
jb 0x140045f71
mov rcx, r14
call fcn.140039ad0
mov qword [rbp + 0x50], rax
lea rdx, [rbp + 0x50]
lea rcx, [rbp + 0x170]
call fcn.14004a500
mov rcx, qword [rax + 8]
sub rcx, qword [rax]
sar rcx, 5
cmp rcx, 0x10
jbe 0x140045f71
cmp edi, 0xffffffff
je 0x140045f71
cmp ebx, 0xffffffff
je 0x140045f71
mov dword [rsp + 0x20], 0xff
mov edx, 0xcc
mov r9d, edx
mov r8d, edx
lea rcx, [rsp + 0x58]
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 + 0x158]
call fcn.14000b000
lea ecx, [r13 - 0x14]
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
movss dword [rsp + 0x40], xmm6
mov dword [rsp + 0x44], 0x40e00000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x68]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov qword [rsp + 0x40], 0x40a00000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x10]
mov rcx, rax
call fcn.1400ec5b0
mov rbx, rax
mov ecx, dword [rbp + 0x158]
mov dword [rbp + 0x158], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x158]
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], esi
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, [rsp + 0x58]
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 + 0x158]
call fcn.14000b000
movss dword [rsp + 0x40], xmm6
mov dword [rsp + 0x44], 0x40e00000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x68]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov dword [rsp + 0x40], 0x40800000
mov dword [rsp + 0x44], 0x3f800000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x10]
mov rcx, rax
call fcn.1400ec5b0
mov rbx, rax
mov ecx, dword [rbp + 0x158]
mov dword [rbp + 0x158], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x158]
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], esi
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, [rsp + 0x58]
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 + 0x158]
call fcn.14000b000
movss dword [rsp + 0x40], xmm6
mov dword [rsp + 0x44], 0x40e00000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x68]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov dword [rsp + 0x40], 0x40400000
mov dword [rsp + 0x44], 0x40000000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x10]
mov rcx, rax
call fcn.1400ec5b0
mov rbx, rax
mov ecx, dword [rbp + 0x158]
mov dword [rbp + 0x158], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x158]
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], esi
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, [rsp + 0x58]
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 + 0x158]
call fcn.14000b000
movss dword [rsp + 0x40], xmm6
mov dword [rsp + 0x44], 0x40e00000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x68]
lea rcx, [rbp - 0x78]
call fcn.1400ec5b0
mov dword [rsp + 0x40], 0x40400000
mov dword [rsp + 0x44], 0x40400000
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x10]
mov rcx, rax
call fcn.1400ec5b0
mov rbx, rax
mov ecx, dword [rbp + 0x158]
mov dword [rbp + 0x158], ecx
call fcn.140056380
mov r10, rax
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x158]
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], esi
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, xmm12
subss xmm6, xmm10
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov edi, 1
mov edx, edi
mov rcx, qword [rax]
call fcn.1400561d0
mov r10, rax
movzx ecx, bl
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
divss xmm1, xmm8
mov dword [rbp - 0x40], 0x3d909091
mov dword [rbp - 0x3c], 0x3d909091
mov dword [rbp - 0x38], 0x3d909091
movss dword [rbp - 0x34], xmm1
lea rcx, [rbp - 0x40]
call fcn.140053cc0
movaps xmm1, xmm7
addss xmm1, dword [0x1401cb018]
movd xmm0, r13d
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], esi
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
mov rax, qword [0x140273d10]
cmp qword [rax + 0x260], 0
jne 0x14004612e
cmp byte [rax + 0x2eb], 0
je 0x14004607e
mov byte [rax + 0x2eb], 0
cmp byte [rsp + 0x50], 0
je 0x140046676
call fcn.1400ec4d0
mov edx, edi
call fcn.1400ec3d0
movabs rbx, 0x3100350b8e9dcaf4
test al, al
je 0x140046680
mov qword [rbp - 0x40], rbx
movabs rax, 0x21d880e9763f68ac
mov qword [rbp - 0x38], rax
movabs rcx, 0x31005d68fcfcaf87
mov qword [rbp + 0x200], rcx
mov qword [rbp + 0x208], rax
movdqa xmm0, xmmword [rbp - 0x40]
xorps xmm0, xmmword [rbp + 0x200]
movdqa xmmword [rbp - 0x40], xmm0
lea r8, [rbp - 0x40]
mov rdx, r14
lea rcx, [rbp + 0x188]
call fcn.14003b8b0
mov rcx, rax
call fcn.140039ad0
mov rcx, qword [0x140273d10]
mov qword [rcx + 0x260], rax
lea rcx, [rbp + 0x188]
call fcn.140008e00
jmp 0x140046680
mov edi, dword [rsp + 0x54]
mov r13d, dword [rsp + 0x60]
mov ebx, dword [rsp + 0x5c]
jmp 0x140045a59
mov qword [rbp - 0x40], rcx
movabs rax, 0x21d880e9763f68ac
mov qword [rbp - 0x38], rax
movabs rcx, 0x31005d68fcfcaf87
mov qword [rbp + 0x200], rcx
mov qword [rbp + 0x208], rax
movdqa xmm0, xmmword [rbp - 0x40]
xorps xmm0, xmmword [rbp + 0x200]
movdqa xmmword [rbp - 0x40], xmm0
lea r8, [rbp - 0x40]
mov rdx, r14
lea rcx, [rbp + 0x188]
call fcn.14003b8b0
mov rcx, rax
call fcn.140039ad0
mov rdi, rax
mov rcx, qword [0x140273d10]
mov rbx, qword [rcx + 0x260]
lea rcx, [rbp + 0x188]
call fcn.140008e00
cmp rbx, rdi
jne 0x140046671
mov rax, qword [0x140273d10]
cmp byte [rax + 0x2eb], 0
jne 0x1400461c1
mov byte [rax + 0x2eb], 1
call fcn.1400ec4d0
mov edx, 1
call fcn.1400ec4a0
test al, al
je 0x1400461e9
cmp byte [rsp + 0x50], 0
jne 0x1400461e9
mov rax, qword [0x140273d10]
mov qword [rax + 0x260], rsi
mov edi, esi
mov ecx, 0xa2
call fcn.14007bd70
mov r13d, eax
nop dword [rax + rax]
cmp qword [0x140272c18], 0
jne 0x140046225
mov ecx, 8
call fcn.14015d780
mov qword [rbp + 0x20], rax
mov qword [rax], rsi
mov dword [rax + 4], esi
mov qword [0x140272c18], rax
lea eax, [rdi - 1]
cmp eax, 0xfe
ja 0x1400463e4
mov ecx, edi
call fcn.14007bd70
xor r8d, r8d
xor edx, edx
mov ecx, eax
call fcn.14005ee80
test al, al
je 0x1400463e4
cmp edi, 8
je 0x14004633a
cmp edi, 0x1b
je 0x140046327
cmp edi, 0xd
je 0x140046327
lea eax, [rdi - 0x41]
cmp eax, 0x19
ja 0x1400462db
call fcn.1400ec4d0
mov edx, 0x10
call fcn.1400ec3d0
test al, al
jne 0x140046297
mov ecx, 0x14
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
lea ebx, [rdi + 0x20]
je 0x140046299
mov ebx, edi
mov rcx, r14
call fcn.140039ad0
mov dword [rsp + 0x74], eax
lea rdx, [rsp + 0x74]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rcx, rax
movzx edx, bl
call fcn.14004aaa0
mov rcx, r14
call fcn.140039ad0
mov dword [rbp + 0x150], eax
lea rdx, [rbp + 0x150]
jmp 0x1400463dd
lea eax, [rdi - 0x30]
cmp eax, 9
jbe 0x1400462ec
cmp edi, 0x20
jne 0x1400463e4
mov rcx, r14
call fcn.140039ad0
mov dword [rbp - 0x80], eax
lea rdx, [rbp - 0x80]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rcx, rax
movzx edx, dil
call fcn.14004aaa0
mov rcx, r14
call fcn.140039ad0
mov dword [rbp - 0x50], eax
lea rdx, [rbp - 0x50]
jmp 0x1400463dd
mov rax, qword [0x140273d10]
mov qword [rax + 0x260], rsi
jmp 0x1400463e4
mov rcx, r14
call fcn.140039ad0
mov dword [rbp - 0x2c], eax
lea rdx, [rbp - 0x2c]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rbx, rax
mov rcx, r14
call fcn.140039ad0
mov dword [rbp - 0x30], eax
lea rdx, [rbp - 0x30]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov r9, qword [rax + 0x10]
dec r9
xor r8d, r8d
lea rdx, [rbp + 0x188]
mov rcx, rbx
call fcn.140034390
mov rbx, rax
mov rcx, r14
call fcn.140039ad0
mov dword [rbp + 0x180], eax
lea rdx, [rbp + 0x180]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rcx, rax
mov rdx, rbx
call fcn.140008a90
nop
lea rcx, [rbp + 0x188]
call fcn.140008e00
mov rcx, r14
call fcn.140039ad0
mov dword [rbp + 0x158], eax
lea rdx, [rbp + 0x158]
call fcn.14004a960
mov dword [rax], esi
cmp qword [0x140272c18], 0
jne 0x140046409
mov ecx, 8
call fcn.14015d780
mov qword [rbp + 0x20], rax
mov qword [rax], rsi
mov dword [rax + 4], esi
mov qword [0x140272c18], rax
mov ecx, r13d
call fcn.14005ee00
test al, al
je 0x1400464da
call fcn.1400ec4d0
mov edx, 8
call fcn.1400ec3d0
test al, al
je 0x1400464da
mov rcx, r14
call fcn.140039ad0
mov dword [rsp + 0x70], eax
lea rdx, [rsp + 0x70]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rbx, rax
mov rcx, r14
call fcn.140039ad0
mov dword [rsp + 0x58], eax
lea rdx, [rsp + 0x58]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov r9, qword [rax + 0x10]
dec r9
xor r8d, r8d
lea rdx, [rbp + 0x188]
mov rcx, rbx
call fcn.140034390
mov rbx, rax
mov rcx, r14
call fcn.140039ad0
mov dword [rbp + 0x168], eax
lea rdx, [rbp + 0x168]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rcx, rax
mov rdx, rbx
call fcn.140008a90
nop
lea rcx, [rbp + 0x188]
call fcn.140008e00
mov rcx, r14
call fcn.140039ad0
mov dword [rsp + 0x54], eax
lea rdx, [rsp + 0x54]
call fcn.14004a960
mov dword [rax], esi
inc edi
cmp edi, 0xff
jl 0x140046200
cmp qword [0x140272c18], 0
jne 0x14004650d
mov ecx, 8
call fcn.14015d780
mov qword [rbp + 0x20], rax
mov qword [rax], rsi
mov dword [rax + 4], esi
mov qword [0x140272c18], rax
mov ecx, 8
call fcn.14007bd70
mov ecx, eax
call fcn.14005ee00
test al, al
jne 0x14004654c
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov rbx, rax
mov rcx, r14
call fcn.140039ad0
mov qword [rsp + 0x78], rax
lea rdx, [rsp + 0x78]
lea rcx, [0x140271cc0]
call fcn.14004a700
mov qword [rax], rbx
mov r9, qword [r14 + 0x10]
mov r8, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x14004655d
mov r8, qword [r14]
mov rcx, r15
mov rdx, rsi
test r9, r9
je 0x140046598
movabs r14, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r14
inc rdx
cmp rdx, r9
jb 0x140046580
mov r14, qword [rbp - 8]
mov qword [rsp + 0x78], rcx
lea rdx, [rsp + 0x78]
lea rcx, [0x140271cc0]
call fcn.14004a700
mov rbx, qword [rax]
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
sub rax, rbx
cmp rax, 0x1f4
jbe 0x14004666c
mov rcx, r14
call fcn.140039ad0
mov dword [rsp + 0x74], eax
lea rdx, [rsp + 0x74]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rbx, rax
mov rcx, r14
call fcn.140039ad0
mov dword [rbp + 0x150], eax
lea rdx, [rbp + 0x150]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov r9, qword [rax + 0x10]
dec r9
xor r8d, r8d
lea rdx, [rbp + 0x188]
mov rcx, rbx
call fcn.140034390
mov rbx, rax
mov rcx, r14
call fcn.140039ad0
mov dword [rbp - 0x80], eax
lea rdx, [rbp - 0x80]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov rcx, rax
mov rdx, rbx
call fcn.140008a90
nop
lea rcx, [rbp + 0x188]
call fcn.140008e00
mov rcx, r14
call fcn.140039ad0
mov dword [rbp - 0x50], eax
lea rdx, [rbp - 0x50]
call fcn.14004a960
mov dword [rax], esi
mov r13d, dword [rsp + 0x60]
mov edi, 1
movabs rbx, 0x3100350b8e9dcaf4
movd xmm0, r13d
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
mov dword [rsp + 0x44], 0x41900000
movaps xmm1, xmm9
subss xmm1, xmm11
movss dword [rsp + 0x48], xmm12
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 + 0x58], 0xc8c8
mov byte [rsp + 0x5a], 0xc8
mov byte [rsp + 0x5b], al
subss xmm9, dword [0x1401cb004]
subss xmm12, dword [0x1401cb1f0]
movss dword [rsp + 0x40], xmm12
movss dword [rsp + 0x44], xmm9
mov qword [rbp + 0x20], rbx
movabs rax, 0x21d880e9763f68ac
mov qword [rbp + 0x28], rax
movabs rcx, 0x31005d68fcfcaf87
mov qword [rbp + 0x200], rcx
mov qword [rbp + 0x208], rax
movdqa xmm0, xmmword [rbp + 0x20]
xorps xmm0, xmmword [rbp + 0x200]
movdqa xmmword [rbp + 0x20], xmm0
mov rdx, qword [r14 + 0x10]
lea rax, [rbp + 0x20]
mov rcx, r12
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x140046750
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, rcx
jb 0x140046a95
mov r9, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x14004677c
mov r9, qword [r14]
mov qword [rsp + 0x30], rcx
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea rcx, [rbp + 0x108]
call fcn.140039850
nop
lea r8, [rbp + 0x108]
cmp qword [rbp + 0x120], 0xf
cmova r8, qword [rbp + 0x108]
mov rcx, r15
mov rdx, rsi
mov r9, qword [rbp + 0x118]
movabs r13, 0x100000001b3
test r9, r9
je 0x1400467e4
nop
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r13
inc rdx
cmp rdx, r9
jb 0x1400467d0
mov edx, 0x5f
mov rax, qword [0x140273d10]
cmp qword [rax + 0x260], rcx
mov ebx, 0x20
cmove ebx, edx
mov r9, qword [r14 + 0x10]
mov r8, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x140046810
mov r8, qword [r14]
mov rcx, r15
mov rdx, rsi
test r9, r9
je 0x140046834
nop dword [rax + rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r13
inc rdx
cmp rdx, r9
jb 0x140046820
mov dword [rsp + 0x74], ecx
lea rdx, [rsp + 0x74]
lea rcx, [0x140271cd0]
call fcn.14004a800
mov byte [rbp + 0x160], bl
mov rcx, qword [rax + 0x10]
movabs rdx, 0x7fffffffffffffff
cmp rcx, rdx
je 0x140046a4d
cmp qword [rax + 0x18], 0xf
jbe 0x140046870
mov rax, qword [rax]
mov qword [rsp + 0x30], rdi
lea rdx, [rbp + 0x160]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
mov r9, rax
lea rcx, [rbp - 0x28]
call fcn.140039850
nop
lea rdx, [rbp - 0x28]
cmp qword [rbp - 0x10], 0xf
cmova rdx, qword [rbp - 0x28]
xorps xmm0, xmm0
movups xmmword [rbp + 0x188], xmm0
mov qword [rbp + 0x198], rsi
mov qword [rbp + 0x1a0], rsi
nop dword [rax]
inc r12
cmp byte [rdx + r12], 0
jne 0x1400468c0
mov r8, r12
lea rcx, [rbp + 0x188]
call fcn.140009150
mov dword [rsp + 0x20], esi
xor r9d, r9d
mov r8d, dword [rsp + 0x58]
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x188]
call fcn.140082420
nop
lea rcx, [rbp - 0x28]
call fcn.140008e00
nop
lea rcx, [rbp + 0x108]
call fcn.140008e00
mov rax, qword [0x1402718d8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Foreground
mov rdx, rdi
mov rcx, qword [rax]
call fcn.1400561d0
mov rdx, rax
mov eax, dword [rax + 0x58]
sub eax, 1
mov dword [rdx + 0x58], eax
jne 0x140046945
mov rcx, qword [rdx + 0x38]
add rcx, 0x1c
jmp 0x140046952
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 + 0x7c]
addss xmm1, dword [0x1401cb128]
movss xmm0, dword [rbp + 0x78]
addss xmm0, xmm10
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm1
lea rcx, [rsp + 0x40]
call fcn.1400399f0
mov rdx, qword [r14 + 0x10]
cmp qword [r14 + 0x18], 0xf
jbe 0x14004699f
mov r14, qword [r14]
test rdx, rdx
je 0x1400469c4
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [r14 + rsi]
xor r15, rax
imul r15, r13
inc rsi
cmp rsi, rdx
jb 0x1400469b0
mov rax, qword [0x140273d10]
cmp qword [rax + 0x260], r15
sete bl
lea rcx, [rbp + 0x1b0]
call fcn.140008880
nop
lea rcx, [rbp + 0x170]
call fcn.14004a690
nop
mov rcx, qword [rbp + 8]
call fcn.140015b40
movzx eax, bl
mov rcx, qword [rbp + 0x220]
xor rcx, rsp
call fcn.14015d760
lea r11, [rsp + 0x3b0]
mov rbx, qword [r11 + 0x50]
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 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.1400059f0
nop
call fcn.1400059f0
int3
call fcn.1400059f0
int3
call fcn.1400059f0
int3
call fcn.1400059a0
nop
call fcn.1400059f0
nop
call fcn.1400059f0
int3
call fcn.1400059f0
int3
call fcn.1400059f0
int3
call fcn.1400059a0
int3