Function at 0x14005ba20
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xce8]
sub rsp, 0xdc0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x1403a7040]
xor rax, rsp
mov qword [rbp + 0xc10], rax
xor r14d, r14d
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Foreground
lea edx, [r14 + 1]
mov rcx, qword [rax]
call fcn.140005da0
mov rdi, rax
movss xmm7, dword [0x1403a9878]
movaps xmm1, xmm7
movss xmm13, dword [0x14039d404]
mulss xmm1, xmm13
movss xmm6, dword [0x1403a987c]
movaps xmm0, xmm6
mulss xmm0, xmm13
movss dword [rbp + 0x1c0], xmm0
movss dword [rbp + 0x1c4], xmm1
lea r12, str._DIST_
cmp byte [0x1403a981b], r14b
je 0x14005c280
mov rbx, qword [0x1403a9a88]
mov rsi, qword [0x1403a9a90]
cmp rbx, rsi
je 0x14005c280
movabs r15, 0x400000000002533
nop dword [rax + rax]
movsd xmm0, qword [rbx + 0x10]
movsd qword [rbp + 0x70], xmm0
cmp qword [rbx], r15
je 0x14005c273
mov qword [rbp + 0x58], 0
mov qword [rbp - 0x80], 0
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x78], 0
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x58], 0
mov qword [rbp + 0x50], 0
movss xmm8, dword [rbp + 0x70]
movss dword [rbp + 0x10], xmm8
movss xmm9, dword [rbp + 0x74]
movaps xmm0, xmm9
addss xmm0, xmm13
movss dword [rbp + 0x14], xmm0
movss xmm10, dword [rbx + 0x18]
movss dword [rbp + 0x18], xmm10
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x50]
lea rdx, [rbp + 0x10]
call fcn.14004bea0
test al, al
je 0x14005c273
movaps xmm11, xmm8
subss xmm11, xmm13
movaps xmm12, xmm10
subss xmm12, xmm13
movss dword [rbp + 0x20], xmm11
movss dword [rbp + 0x24], xmm9
movss dword [rbp + 0x28], xmm12
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x58]
lea rdx, [rbp + 0x20]
call fcn.14004bea0
test al, al
je 0x14005c273
movss dword [rbp + 0x30], xmm11
movss dword [rbp + 0x34], xmm9
movss dword [rbp + 0x38], xmm12
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x58]
lea rdx, [rbp + 0x30]
call fcn.14004bea0
test al, al
je 0x14005c273
movaps xmm15, xmm10
addss xmm15, xmm13
movss dword [rbp - 0x60], xmm11
movss dword [rbp - 0x5c], xmm9
movss dword [rbp - 0x58], xmm15
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp - 0x80]
lea rdx, [rbp - 0x60]
call fcn.14004bea0
test al, al
je 0x14005c273
movaps xmm14, xmm8
addss xmm14, xmm13
movss dword [rbp], xmm14
movss dword [rbp + 4], xmm9
movss dword [rbp + 8], xmm12
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rsp + 0x50]
lea rdx, [rbp]
call fcn.14004bea0
test al, al
je 0x14005c273
movss dword [rbp - 0x20], xmm14
movss dword [rbp - 0x1c], xmm9
movss dword [rbp - 0x18], xmm15
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rsp + 0x78]
lea rdx, [rbp - 0x20]
call fcn.14004bea0
test al, al
je 0x14005c273
movaps xmm13, xmm9
addss xmm13, dword [0x14039d474]
movss dword [rbp - 0x10], xmm11
movss dword [rbp - 0xc], xmm13
movss dword [rbp - 8], xmm12
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rsp + 0x70]
lea rdx, [rbp - 0x10]
call fcn.14004bea0
test al, al
je 0x14005c26a
movss dword [rbp - 0x30], xmm11
movss dword [rbp - 0x2c], xmm13
movss dword [rbp - 0x28], xmm15
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rsp + 0x68]
lea rdx, [rbp - 0x30]
call fcn.14004bea0
test al, al
je 0x14005c26a
movss dword [rbp - 0x40], xmm14
movss dword [rbp - 0x3c], xmm13
movss dword [rbp - 0x38], xmm12
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rsp + 0x60]
lea rdx, [rbp - 0x40]
call fcn.14004bea0
test al, al
je 0x14005c26a
movss dword [rbp - 0x50], xmm14
movss dword [rbp - 0x4c], xmm13
movss dword [rbp - 0x48], xmm15
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x50]
call fcn.14004bea0
test al, al
je 0x14005c26a
lea rdx, [rbp + 0x4c0]
call fcn.14004be10
movss xmm7, dword [rax + 8]
lea rdx, [rbp + 0x4a0]
call fcn.14004be10
movss xmm6, dword [rax + 4]
lea rdx, [rbp + 0x4d0]
call fcn.14004be10
subss xmm10, xmm7
subss xmm9, xmm6
subss xmm8, dword [rax]
mulss xmm8, xmm8
mulss xmm9, xmm9
addss xmm8, xmm9
mulss xmm10, xmm10
addss xmm8, xmm10
xorps xmm0, xmm0
ucomiss xmm0, xmm8
ja 0x14005be40
xorps xmm9, xmm9
sqrtss xmm9, xmm8
jmp 0x14005be4d
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm9, xmm0
movss xmm10, dword [0x14039d474]
movss dword [rsp + 0x20], xmm10
movss xmm14, dword [0x14039d3d0]
movaps xmm3, xmm14
xorps xmm2, xmm2
movaps xmm1, xmm10
lea rcx, [rbp + 0x7d4]
call fcn.1400013f0
mov rcx, rax
call fcn.140003a70
movss xmm7, dword [rbp + 0x54]
movaps xmm0, xmm7
subss xmm0, dword [0x14039d5ac]
movss xmm6, dword [rbp + 0x50]
subss xmm6, dword [0x14039d580]
movss dword [rbp - 0x68], xmm6
movss dword [rbp - 0x64], xmm0
movss xmm11, dword [0x14039d5c8]
movaps xmm3, xmm11
lea r8, str.HP_PACK
mov edx, eax
lea rcx, [rbp - 0x68]
call fcn.14004d1b0
cvttss2si edx, xmm9
lea rcx, [rbp + 0xae0]
call fcn.1400472b0
nop
mov r8, rax
mov rdx, r12
lea rcx, [rbp + 0xb00]
call fcn.140073e90
nop
lea r8, [0x14039bb10]
mov rdx, rax
lea rcx, [rbp + 0xb80]
call fcn.140047370
nop
mov rcx, rax
call fcn.140046a20
mov r8, rax
movss dword [rsp + 0x20], xmm10
movaps xmm3, xmm14
xorps xmm2, xmm2
movaps xmm1, xmm10
lea rcx, [rbp + 0xbf0]
call fcn.1400013f0
mov rcx, rax
call fcn.140003a70
addss xmm7, dword [0x14039d5ac]
movss dword [rbp - 0x78], xmm6
movss dword [rbp - 0x74], xmm7
movaps xmm3, xmm11
mov edx, eax
lea rcx, [rbp - 0x78]
call fcn.14004d1b0
nop
lea rcx, [rbp + 0xb80]
call fcn.140046a30
nop
lea rcx, [rbp + 0xb00]
call fcn.140046a30
nop
lea rcx, [rbp + 0xae0]
call fcn.140046a30
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x40]
call fcn.14004bdf0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm13, qword [rbp - 0x80]
movq rdx, xmm13
movsd xmm10, qword [rbp + 0x58]
movq rcx, xmm10
call fcn.14004dd50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp - 0x70]
call fcn.14004bdf0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm12, qword [rsp + 0x50]
movq rdx, xmm12
movq rcx, xmm10
call fcn.14004dd50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x1b8]
call fcn.14004bdf0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm11, qword [rsp + 0x78]
movq rdx, xmm11
movq rcx, xmm13
call fcn.14004dd50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x220]
call fcn.14004bdf0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm11
movq rcx, xmm12
call fcn.14004dd50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x21c]
call fcn.14004bdf0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm9, qword [rsp + 0x68]
movq rdx, xmm9
movsd xmm6, qword [rsp + 0x70]
movq rcx, xmm6
call fcn.14004dd50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x218]
call fcn.14004bdf0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm8, qword [rsp + 0x60]
movq rdx, xmm8
movq rcx, xmm6
call fcn.14004dd50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x1d0]
call fcn.14004bdf0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movsd xmm7, qword [rsp + 0x58]
movq rdx, xmm7
movq rcx, xmm9
call fcn.14004dd50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x214]
call fcn.14004bdf0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm7
movq rcx, xmm8
call fcn.14004dd50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x210]
call fcn.14004bdf0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm10
call fcn.14004dd50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x1d8]
call fcn.14004bdf0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm9
movq rcx, xmm13
call fcn.14004dd50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x1d4]
call fcn.14004bdf0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm8
movq rcx, xmm12
call fcn.14004dd50
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x7ac]
call fcn.14004bdf0
lea r9d, [rdx - 0x64]
mov r8d, dword [rax]
movq rdx, xmm7
movq rcx, xmm11
call fcn.14004dd50
movss xmm7, dword [0x1403a9878]
movss xmm6, dword [0x1403a987c]
movss xmm13, dword [0x14039d404]
add rbx, 0x1c
cmp rbx, rsi
jne 0x14005bb30
movzx r8d, byte [0x1403a97f5]
cmp byte [0x1403a9847], 0
jne 0x14005c2d9
cmp byte [0x1403a981d], 0
jne 0x14005c2d9
test r8b, r8b
jne 0x14005c2d9
cmp byte [0x1403a97f4], r8b
jne 0x14005c2d9
cmp byte [0x1403a9818], r8b
jne 0x14005c2d9
cmp byte [0x1403a9849], r8b
jne 0x14005c2d9
cmp byte [0x1403a982b], r8b
jne 0x14005c2d9
cmp byte [0x1403a70f3], r8b
jne 0x14005c2d9
cmp byte [0x1403a714a], r8b
je 0x140060be1
mov rsi, qword [0x1403a9ab0]
mov qword [rbp + 0x2a0], rsi
mov r13, qword [0x1403a9aa8]
mov rcx, rsi
sub rcx, r13
movabs rax, 0x6c80d901b2036407
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x140060bcc
mov ebx, r14d
mov dword [rbp - 0x70], ebx
cmp r13, rsi
je 0x140060bcc
lea r15, str._NAME_
movss xmm8, dword [0x14039d660]
movss xmm14, dword [0x14039d64c]
movsd xmm10, qword [0x14039d518]
nop word [rax + rax]
mov rdx, r13
lea rcx, [rbp + 0x8b0]
call fcn.140059e60
nop
cmp byte [0x1403a982b], 0
je 0x14005cacb
test ebx, ebx
jne 0x14005c538
movss xmm1, dword [0x1403a9878]
subss xmm1, xmm8
movss xmm0, dword [0x1403a987c]
subss xmm0, xmm14
movss dword [rbp + 0x268], xmm0
movss dword [rbp + 0x26c], xmm1
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movaps xmm2, xmm14
lea rdx, [rbp + 0x268]
mov rcx, rdi
call fcn.140023000
mov r8d, dword [rdi + 0x78]
dec r8d
mov dword [rdi + 0x78], r8d
mov r9d, 0x78000000
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.140022a50
mov dword [rdi + 0x78], r14d
cmp byte [0x1403a9843], bl
je 0x14005c3f3
movss xmm0, dword [0x1403a7100]
jmp 0x14005c40a
mov rcx, qword [0x1403a9aa0]
mov rdx, qword [rcx + 0x21]
add rdx, 0x3838358
call fcn.1400732c0
mulss xmm0, xmm13
mulss xmm0, dword [0x14039d39c]
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
movaps xmm6, xmm0
mulss xmm6, xmm14
movaps xmm1, xmm6
mulss xmm1, xmm6
movss xmm0, dword [0x14039d6a0]
subss xmm0, xmm1
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x14005c448
xorps xmm7, xmm7
sqrtss xmm7, xmm0
jmp 0x14005c450
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm7, xmm0
movss xmm4, dword [0x1403a9878]
subss xmm4, xmm8
movaps xmm2, xmm4
subss xmm2, xmm6
movss xmm3, dword [0x1403a987c]
subss xmm3, xmm14
movaps xmm1, xmm3
subss xmm1, xmm7
mov r8d, 0xff6699ff
mov r9d, 2
unpcklps xmm1, xmm2
movq rdx, xmm1
movaps xmm1, xmm3
unpcklps xmm1, xmm4
movq rcx, xmm1
call fcn.14004dd50
movss xmm3, dword [0x1403a9878]
subss xmm3, xmm8
movaps xmm1, xmm3
subss xmm1, xmm6
movss xmm2, dword [0x1403a987c]
subss xmm2, xmm14
movaps xmm0, xmm2
addss xmm0, xmm7
mov r8d, 0xff6699ff
mov r9d, 2
unpcklps xmm0, xmm1
movq rdx, xmm0
movaps xmm1, xmm2
unpcklps xmm1, xmm3
movq rcx, xmm1
call fcn.14004dd50
movss xmm3, dword [0x1403a9878]
subss xmm3, xmm8
movaps xmm1, xmm3
subss xmm1, xmm14
movss xmm2, dword [0x1403a987c]
subss xmm2, xmm14
mov r8d, 0xffff78
mov r9d, 1
movaps xmm0, xmm2
unpcklps xmm0, xmm1
movq rdx, xmm0
movaps xmm1, xmm2
unpcklps xmm1, xmm3
movq rcx, xmm1
call fcn.14004dd50
mov dword [rbp - 0x70], 1
mov rax, qword [0x1403a8f50]
cmp qword [rbp + 0x8b0], rax
jne 0x14005c60b
movss xmm1, dword [0x1403a9878]
subss xmm1, xmm8
movss xmm0, dword [0x1403a987c]
subss xmm0, xmm14
movss dword [rbp + 0x270], xmm0
movss dword [rbp + 0x274], xmm1
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movss xmm2, dword [0x14039d578]
lea rdx, [rbp + 0x270]
mov rcx, rdi
call fcn.140023000
mov r8d, dword [rdi + 0x78]
dec r8d
mov dword [rdi + 0x78], r8d
mov r9d, 0xff33ffff
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.140022a50
mov dword [rdi + 0x78], r14d
mov rdx, qword [rbp + 0x952]
cmp rdx, 0xf
jbe 0x14005c5fd
inc rdx
mov rcx, qword [rbp + 0x93a]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005c5f8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b52
call fcn.140076090
movss xmm13, dword [0x14039d404]
jmp 0x140060b31
xorps xmm12, xmm12
ucomiss xmm12, dword [rbp + 0x9ba]
jp 0x14005c637
jne 0x14005c637
ucomiss xmm12, dword [rbp + 0x9be]
jp 0x14005c637
jne 0x14005c637
ucomiss xmm12, dword [rbp + 0x9c2]
jp 0x14005c637
je 0x14005cacf
movss xmm0, dword [rbp + 0x95a]
comiss xmm0, xmm12
jbe 0x14005cacf
movss xmm0, dword [0x1403a904e]
call fcn.14004bc80
xor ecx, ecx
call fcn.14004b9a0
movaps xmm12, xmm3
movaps xmm15, xmm2
movaps xmm8, xmm1
movaps xmmword [rbp + 0xbf0], xmm1
movaps xmm9, xmm0
lea rdx, [rbp + 0x814]
call fcn.14004be10
movss xmm7, dword [rbp + 0x996]
subss xmm7, dword [rax]
lea rdx, [rbp + 0x808]
call fcn.14004be10
movss xmm6, dword [rbp + 0x99a]
subss xmm6, dword [rax + 4]
lea rdx, [rbp + 0x7fc]
call fcn.14004be10
movss xmm4, dword [rbp + 0x99e]
subss xmm4, dword [rax + 8]
cvtps2pd xmm0, xmm7
mulsd xmm0, xmm10
cvtpd2ps xmm3, xmm0
cvtps2pd xmm1, xmm6
mulsd xmm1, xmm10
cvtpd2ps xmm2, xmm1
cvtps2pd xmm0, xmm4
mulsd xmm0, xmm10
cvtpd2ps xmm5, xmm0
movaps xmm1, xmm3
unpcklps xmm1, xmm2
xorps xmm3, xmm3
movsd xmm3, xmm1
movss dword [rbp + 0x48], xmm5
movlhps xmm3, xmm5
movaps xmm1, xmm3
shufps xmm1, xmm3, 0xaa
mulps xmm1, xmm15
movaps xmm0, xmm3
shufps xmm0, xmm3, 0x55
mulps xmm0, xmm8
movaps xmm2, xmm12
addps xmm2, xmm1
addps xmm2, xmm0
shufps xmm3, xmm3, 0
movaps xmm6, xmm9
mulps xmm6, xmm3
addps xmm6, xmm2
movaps xmm7, xmm6
shufps xmm7, xmm6, 0xaa
movaps xmm1, xmm7
mulss xmm1, xmm7
movsd qword [rbp + 0x40], xmm6
movaps xmm0, xmm6
mulss xmm0, xmm6
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x14005c754
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x14005c75c
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm0, xmm14
jbe 0x14005c774
divss xmm6, xmm0
mulss xmm6, xmm14
divss xmm7, xmm0
mulss xmm7, xmm14
movss xmm11, dword [0x1403a9878]
subss xmm11, dword [0x14039d660]
subss xmm11, xmm7
movss xmm10, dword [0x1403a987c]
subss xmm10, xmm14
subss xmm10, xmm6
movss dword [rbp - 0x68], xmm10
movss dword [rbp - 0x64], xmm11
mov qword [rbp + 0x1a8], 0
mov dword [rbp + 0x1b0], 0
mov qword [rbp + 0x4b0], 0
mov dword [rbp + 0x4b8], 0
mov qword [rbp + 0x468], 0
mov dword [rbp + 0x470], 0
mov qword [rbp + 0x488], 0
mov dword [rbp + 0x490], 0
mov qword [rbp + 0x478], 0
mov dword [rbp + 0x480], 0
lea rax, [rbp + 0x478]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x488]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x468]
lea r8, [rbp + 0x4b0]
lea rdx, [rbp + 0x1a8]
lea rcx, [rbp + 0x8b0]
call fcn.14004f910
movss xmm6, dword [rbp + 0x1a8]
movaps xmm8, xmm6
subss xmm8, dword [rbp + 0x996]
lea rdx, [rbp + 0x8a0]
call fcn.14004be10
mulss xmm8, dword [0x14039d578]
addss xmm8, xmm6
subss xmm8, dword [rax]
lea rdx, [rbp + 0x820]
call fcn.14004be10
movss xmm7, dword [rbp + 0x1ac]
subss xmm7, dword [rax + 4]
movss xmm0, dword [rbp + 0x1b0]
movaps xmm6, xmm0
subss xmm6, dword [rbp + 0x99e]
mulss xmm6, dword [0x14039d578]
addss xmm6, xmm0
lea rdx, [rbp + 0x82c]
call fcn.14004be10
subss xmm6, dword [rax + 8]
cvtps2pd xmm0, xmm8
movsd xmm4, qword [0x14039d518]
mulsd xmm0, xmm4
cvtpd2ps xmm3, xmm0
cvtps2pd xmm1, xmm7
mulsd xmm1, xmm4
cvtpd2ps xmm2, xmm1
cvtps2pd xmm0, xmm6
mulsd xmm0, xmm4
cvtpd2ps xmm4, xmm0
movaps xmm1, xmm3
unpcklps xmm1, xmm2
xorps xmm3, xmm3
movsd xmm3, xmm1
movss dword [rbp + 0x48], xmm4
movlhps xmm3, xmm4
movaps xmm1, xmm3
shufps xmm1, xmm3, 0xaa
mulps xmm1, xmm15
movaps xmm0, xmm3
shufps xmm0, xmm3, 0x55
mulps xmm0, xmmword [rbp + 0xbf0]
addps xmm12, xmm1
addps xmm12, xmm0
shufps xmm3, xmm3, 0
mulps xmm9, xmm3
addps xmm9, xmm12
movaps xmm6, xmm9
shufps xmm6, xmm9, 0xaa
movsd qword [rbp + 0x40], xmm9
movaps xmm1, xmm9
mulss xmm1, xmm9
movaps xmm0, xmm6
mulss xmm0, xmm6
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x14005c969
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x14005c971
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss xmm15, dword [0x14039d648]
comiss xmm0, xmm15
jbe 0x14005c993
divss xmm9, xmm0
mulss xmm9, xmm15
divss xmm6, xmm0
mulss xmm6, xmm15
movss xmm7, dword [0x1403a9878]
movss xmm8, dword [0x14039d660]
subss xmm7, xmm8
subss xmm7, xmm6
movss xmm6, dword [0x1403a987c]
subss xmm6, xmm14
subss xmm6, xmm9
mov ebx, 0xff9900cc
cmp byte [rbp + 0x981], 0
mov eax, 0xff3300ff
cmovne ebx, eax
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movss xmm2, dword [0x14039d550]
lea rdx, [rbp - 0x68]
mov rcx, rdi
cmp byte [rbp + 0x982], r9b
jne 0x14005ca24
call fcn.140023000
mov r8d, dword [rdi + 0x78]
dec r8d
mov dword [rdi + 0x78], r8d
mov r9d, 0xffffff66
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.140022a50
mov dword [rdi + 0x78], r14d
jmp 0x14005cacb
call fcn.140023000
mov r8d, dword [rdi + 0x78]
dec r8d
mov dword [rdi + 0x78], r8d
mov r9d, ebx
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.140022a50
mov dword [rdi + 0x78], r14d
mov r8d, 0xffff
mov r9d, 2
movaps xmm0, xmm10
unpcklps xmm0, xmm11
movq rdx, xmm0
movaps xmm1, xmm6
unpcklps xmm1, xmm7
movq rcx, xmm1
call fcn.14004dd50
cmp byte [0x1403a9821], 0
je 0x14005cacb
movss xmm2, dword [0x1403a9878]
movss xmm1, dword [0x1403a987c]
mov r9d, 1
movaps xmm0, xmm10
subss xmm2, xmm8
subss xmm1, xmm14
unpcklps xmm0, xmm11
movq rdx, xmm0
unpcklps xmm1, xmm2
movq rcx, xmm1
cmp byte [rbp + 0x981], 0
mov r8d, 0xffdaa096
jne 0x14005cac6
mov r8d, 0x6666cc96
call fcn.14004dd50
xorps xmm12, xmm12
cmp byte [0x1403a9847], 0
je 0x14005de1f
cmp byte [rbp + 0x980], 0
je 0x14005de1f
cmp byte [rbp + 0x982], 0
je 0x14005de1f
movss xmm0, dword [0x1403a8ffa]
comiss xmm0, xmm12
jbe 0x14005de1f
movss xmm9, dword [rbp + 0x996]
movss xmm8, dword [rbp + 0x99a]
movss xmm10, dword [rbp + 0x99e]
lea rdx, [rbp + 0x838]
call fcn.14004be10
movss xmm7, dword [rax + 8]
lea rdx, [rbp + 0x7e4]
call fcn.14004be10
movss xmm6, dword [rax + 4]
lea rdx, [rbp + 0x7f0]
call fcn.14004be10
movaps xmm1, xmm10
subss xmm1, xmm7
movaps xmm0, xmm8
subss xmm0, xmm6
movaps xmm2, xmm9
subss xmm2, dword [rax]
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm0
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x14005cb90
xorps xmm15, xmm15
sqrtss xmm15, xmm2
jmp 0x14005cb9c
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm15, xmm0
mov qword [rbp + 0x150], 0
mov qword [rbp + 0x180], 0
movss xmm2, dword [0x1403a9878]
movaps xmm1, xmm8
subss xmm1, dword [0x14039d4b0]
movaps xmm0, xmm9
unpcklps xmm0, xmm1
movsd qword [rbp + 0x660], xmm0
movss dword [rbp + 0x668], xmm10
movss xmm0, dword [0x1403a987c]
unpcklps xmm0, xmm2
movq r9, xmm0
lea r8, [rbp + 0x150]
lea rdx, [rbp + 0x660]
call fcn.14004bea0
test al, al
jne 0x14005cc54
mov rdx, qword [rbp + 0x952]
cmp rdx, 0xf
jbe 0x14005cc46
inc rdx
mov rcx, qword [rbp + 0x93a]
cmp rdx, 0x1000
mov rax, rcx
jb 0x14005cc41
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b52
call fcn.140076090
movss xmm13, dword [0x14039d404]
jmp 0x140060b1f
movss xmm1, dword [0x1403a9878]
addss xmm8, dword [0x14039d474]
movaps xmm0, xmm9
unpcklps xmm0, xmm8
movsd qword [rbp + 0x670], xmm0
movss dword [rbp + 0x678], xmm10
movss xmm0, dword [0x1403a987c]
unpcklps xmm0, xmm1
movq r9, xmm0
lea r8, [rbp + 0x180]
lea rdx, [rbp + 0x670]
call fcn.14004bea0
test al, al
je 0x14005cc05
movss xmm10, dword [rbp + 0x154]
movaps xmm1, xmm10
movss xmm11, dword [rbp + 0x184]
subss xmm1, xmm11
andps xmm1, xmmword [0x14039d930]
cvtps2pd xmm0, xmm1
mulsd xmm0, qword [0x14039d4f0]
cvtpd2ps xmm8, xmm0
mulss xmm1, xmm13
mulss xmm1, xmm13
movss xmm0, dword [0x14039d5c8]
maxss xmm0, xmm1
movss xmm6, dword [0x14039d5d8]
minss xmm6, xmm0
movss xmm7, dword [rbp + 0x150]
cmp byte [0x1403a70f2], 0
je 0x14005cfd0
mov r15, qword [rbp + 0x94a]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r15
cmp rax, 4
jb 0x140060dec
lea r12, [rbp + 0x93a]
cmp qword [rbp + 0x952], 0xf
cmova r12, qword [rbp + 0x93a]
xorps xmm0, xmm0
movups xmmword [rbp + 0xa00], xmm0
mov qword [rbp + 0xa10], r14
mov qword [rbp + 0xa18], r14
lea r14, [r15 + 4]
mov ebx, 0xf
lea rsi, [rbp + 0xa00]
cmp r14, rbx
jbe 0x14005cdf4
mov rbx, r14
or rbx, 0xf
cmp rbx, rcx
jbe 0x14005cd96
mov rbx, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x14005cdbd
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x14005cddc
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140060df2
mov rcx, rax
call fcn.1400764c4
test rax, rax
je 0x140060b60
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x14005cded
test rcx, rcx
je 0x14005cdeb
call fcn.1400764c4
mov rsi, rax
jmp 0x14005cded
xor esi, esi
mov qword [rbp + 0xa00], rsi
mov qword [rbp + 0xa10], r14
mov qword [rbp + 0xa18], rbx
mov dword [rsi], 0x3f44495b
lea rcx, [rsi + 4]
mov r8, r15
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsi + r14], 0
mov r8d, 1
lea rdx, [0x14039bb10]
lea rcx, [rbp + 0xa00]
call fcn.140046c80
xorps xmm0, xmm0
movups xmmword [rbp + 0x9e0], xmm0
xor r14d, r14d
mov qword [rbp + 0x9f0], r14
mov qword [rbp + 0x9f8], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x9e0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x9f0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], r14b
lea r8, [rbp + 0x9e0]
cmp qword [rbp + 0x9f8], 0xf
cmova r8, qword [rbp + 0x9e0]
mov rax, qword [0x1403a97b0]
mov dword [rbp + 0x510], r14d
mov dword [rbp + 0x514], 0x3f666666
mov dword [rbp + 0x518], 0x3f800000
movss xmm0, dword [rax + 0x3778]
movss dword [rbp + 0x51c], xmm0
lea rcx, [rbp + 0x510]
call fcn.140003560
movaps xmm2, xmm11
subss xmm2, xmm6
movaps xmm1, xmm8
movss xmm13, dword [0x14039d590]
divss xmm1, xmm13
movaps xmm0, xmm7
subss xmm0, xmm1
movss dword [rbp + 0x278], xmm0
movss dword [rbp + 0x27c], xmm2
movaps xmm3, xmm6
mov edx, eax
lea rcx, [rbp + 0x278]
call fcn.14004d1b0
nop
mov rdx, qword [rbp + 0x9f8]
cmp rdx, 0xf
jbe 0x14005cf4d
inc rdx
mov rcx, qword [rbp + 0x9e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005cf48
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b59
call fcn.140076090
mov qword [rbp + 0x9f0], r14
mov qword [rbp + 0x9f8], 0xf
mov byte [rbp + 0x9e0], 0
mov rdx, qword [rbp + 0xa18]
cmp rdx, 0xf
jbe 0x14005cfa7
inc rdx
mov rcx, qword [rbp + 0xa00]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005cfa2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b60
call fcn.140076090
mov qword [rbp + 0xa10], r14
mov qword [rbp + 0xa18], 0xf
mov byte [rbp + 0xa00], 0
lea r12, str._DIST_
lea r15, str._NAME_
jmp 0x14005cfd9
movss xmm13, dword [0x14039d590]
movss xmm9, dword [rbp + 0x180]
cmp byte [0x1403a70f0], 0
je 0x14005d033
cvttss2si eax, dword [rbp + 0x95e]
cvttss2si ecx, dword [rbp + 0x95a]
movss xmm0, dword [rbp + 0x986]
mulss xmm0, dword [0x14039d494]
cvttss2si r8d, xmm0
movaps xmm1, xmm11
subss xmm1, dword [0x14039d5e8]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
mov r9d, 0x7d
movaps xmm0, xmm9
call fcn.14004c380
cmp byte [0x1403a97f6], 0
je 0x14005d3ea
cvttss2si r8d, dword [rbp + 0x95a]
lea r9, [rbp + 0xc05]
test r8d, r8d
jns 0x14005d0a0
neg r8d
nop dword [rax + rax]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x14005d060
dec r9
mov byte [r9], 0x2d
jmp 0x14005d0ca
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x14005d0a0
lea r8, [rbp + 0xc05]
mov rdx, r9
lea rcx, [rbp + 0xa40]
call fcn.1400473e0
nop
mov r8, qword [rbp + 0xa50]
mov rcx, qword [rbp + 0xa58]
mov rax, rcx
sub rax, r8
cmp rax, 4
jb 0x14005d19a
lea rax, [r8 + 4]
mov qword [rbp + 0xa50], rax
lea rbx, [rbp + 0xa40]
cmp rcx, 0xf
cmova rbx, qword [rbp + 0xa40]
lea rax, [0x14039c32c]
cmp rax, rbx
jbe 0x14005d14b
lea rax, [rbx + r8]
lea rcx, str._HP_
cmp rcx, rax
ja 0x14005d14b
cmp rbx, rcx
ja 0x14005d143
mov rsi, r14
jmp 0x14005d150
mov rsi, rbx
sub rsi, rcx
jmp 0x14005d150
mov esi, 4
lea rcx, [rbx + 4]
inc r8
mov rdx, rbx
call sub.VCRUNTIME140.dll_memmove
mov r8, rsi
lea rdx, str._HP_
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rbx + rsi]
mov r8d, 4
sub r8, rsi
lea rdx, str._HP_
add rdx, 4
add rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
lea rax, [rbp + 0xa40]
jmp 0x14005d1c0
mov qword [rsp + 0x28], 4
lea rax, str._HP_
mov qword [rsp + 0x20], rax
mov edx, 4
lea rcx, [rbp + 0xa40]
call fcn.140075b00
xorps xmm0, xmm0
movups xmmword [rbp + 0xb40], xmm0
mov qword [rbp + 0xb50], r14
mov qword [rbp + 0xb58], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xb40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xb50], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r8d, 1
lea rdx, [0x14039bb10]
lea rcx, [rbp + 0xb40]
call fcn.140046c80
xorps xmm0, xmm0
movups xmmword [rbp + 0xa20], xmm0
mov qword [rbp + 0xa30], r14
mov qword [rbp + 0xa38], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xa20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xa30], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rbp + 0xa20]
cmp qword [rbp + 0xa38], 0xf
cmova r8, qword [rbp + 0xa20]
mov rax, qword [0x1403a97b0]
mov dword [rbp + 0x500], 0x3f666666
mov dword [rbp + 0x504], 0x3f666666
mov dword [rbp + 0x508], 0x3f800000
movss xmm0, dword [rax + 0x3778]
movss dword [rbp + 0x50c], xmm0
lea rcx, [rbp + 0x500]
call fcn.140003560
movaps xmm1, xmm8
divss xmm1, xmm13
movaps xmm0, xmm7
subss xmm0, xmm1
movss dword [rbp + 0x280], xmm0
movss dword [rbp + 0x284], xmm10
movaps xmm3, xmm6
mov edx, eax
lea rcx, [rbp + 0x280]
call fcn.14004d1b0
nop
mov rdx, qword [rbp + 0xa38]
cmp rdx, 0xf
jbe 0x14005d31d
inc rdx
mov rcx, qword [rbp + 0xa20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005d318
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b67
call fcn.140076090
mov qword [rbp + 0xa30], r14
mov qword [rbp + 0xa38], 0xf
mov byte [rbp + 0xa20], 0
mov rdx, qword [rbp + 0xb58]
cmp rdx, 0xf
jbe 0x14005d377
inc rdx
mov rcx, qword [rbp + 0xb40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005d372
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b6e
call fcn.140076090
mov qword [rbp + 0xb50], r14
mov qword [rbp + 0xb58], 0xf
mov byte [rbp + 0xb40], 0
mov rdx, qword [rbp + 0xa58]
cmp rdx, 0xf
jbe 0x14005d3d1
inc rdx
mov rcx, qword [rbp + 0xa40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005d3cc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b75
call fcn.140076090
mov qword [rbp + 0xa50], r14
mov qword [rbp + 0xa58], 0xf
mov byte [rbp + 0xa40], 0
cmp byte [0x1403a70f1], 0
je 0x14005d79e
cvttss2si r8d, dword [rbp + 0x986]
lea r9, [rbp + 0xc05]
test r8d, r8d
jns 0x14005d450
neg r8d
nop
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x14005d410
dec r9
mov byte [r9], 0x2d
jmp 0x14005d47a
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x14005d450
lea r8, [rbp + 0xc05]
mov rdx, r9
lea rcx, [rbp + 0xb20]
call fcn.1400473e0
nop
mov r8, qword [rbp + 0xb30]
mov rcx, qword [rbp + 0xb38]
mov rax, rcx
sub rax, r8
cmp rax, 5
jb 0x14005d54a
lea rax, [r8 + 5]
mov qword [rbp + 0xb30], rax
lea rbx, [rbp + 0xb20]
cmp rcx, 0xf
cmova rbx, qword [rbp + 0xb20]
lea rax, [0x14039c335]
cmp rax, rbx
jbe 0x14005d4fb
lea rax, [rbx + r8]
lea rcx, str._ULT_
cmp rcx, rax
ja 0x14005d4fb
cmp rbx, rcx
ja 0x14005d4f3
mov rsi, r14
jmp 0x14005d500
mov rsi, rbx
sub rsi, rcx
jmp 0x14005d500
mov esi, 5
lea rcx, [rbx + 5]
inc r8
mov rdx, rbx
call sub.VCRUNTIME140.dll_memmove
mov r8, rsi
lea rdx, str._ULT_
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rbx + rsi]
mov r8d, 5
sub r8, rsi
lea rdx, str._ULT_
add rdx, 5
add rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
lea rax, [rbp + 0xb20]
jmp 0x14005d570
mov qword [rsp + 0x28], 5
lea rax, str._ULT_
mov qword [rsp + 0x20], rax
mov edx, 5
lea rcx, [rbp + 0xb20]
call fcn.140075b00
xorps xmm0, xmm0
movups xmmword [rbp + 0xb60], xmm0
mov qword [rbp + 0xb70], r14
mov qword [rbp + 0xb78], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xb60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xb70], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r8d, 1
lea rdx, [0x14039bb10]
lea rcx, [rbp + 0xb60]
call fcn.140046c80
xorps xmm0, xmm0
movups xmmword [rbp + 0xa60], xmm0
mov qword [rbp + 0xa70], r14
mov qword [rbp + 0xa78], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xa60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xa70], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rbp + 0xa60]
cmp qword [rbp + 0xa78], 0xf
cmova r8, qword [rbp + 0xa60]
mov rax, qword [0x1403a97b0]
mov dword [rbp + 0x4f0], 0x3f666666
mov dword [rbp + 0x4f4], 0x3f666666
mov dword [rbp + 0x4f8], 0x3f800000
movss xmm0, dword [rax + 0x3778]
movss dword [rbp + 0x4fc], xmm0
lea rcx, [rbp + 0x4f0]
call fcn.140003560
movaps xmm1, xmm6
addss xmm1, xmm10
movaps xmm0, xmm8
divss xmm0, xmm13
subss xmm7, xmm0
movss dword [rbp + 0x288], xmm7
movss dword [rbp + 0x28c], xmm1
movaps xmm3, xmm6
mov edx, eax
lea rcx, [rbp + 0x288]
call fcn.14004d1b0
nop
mov rdx, qword [rbp + 0xa78]
cmp rdx, 0xf
jbe 0x14005d6d1
inc rdx
mov rcx, qword [rbp + 0xa60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005d6cc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b7c
call fcn.140076090
mov qword [rbp + 0xa70], r14
mov qword [rbp + 0xa78], 0xf
mov byte [rbp + 0xa60], 0
mov rdx, qword [rbp + 0xb78]
cmp rdx, 0xf
jbe 0x14005d72b
inc rdx
mov rcx, qword [rbp + 0xb60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005d726
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b83
call fcn.140076090
mov qword [rbp + 0xb70], r14
mov qword [rbp + 0xb78], 0xf
mov byte [rbp + 0xb60], 0
mov rdx, qword [rbp + 0xb38]
cmp rdx, 0xf
jbe 0x14005d785
inc rdx
mov rcx, qword [rbp + 0xb20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005d780
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b8a
call fcn.140076090
mov qword [rbp + 0xb30], r14
mov qword [rbp + 0xb38], 0xf
mov byte [rbp + 0xb20], 0
cmp byte [0x1403a9829], 0
je 0x14005db32
cvttss2si r8d, xmm15
lea r9, [rbp + 0xc05]
test r8d, r8d
jns 0x14005d800
neg r8d
nop
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x14005d7c0
dec r9
mov byte [r9], 0x2d
jmp 0x14005d82a
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x14005d800
lea r8, [rbp + 0xc05]
mov rdx, r9
lea rcx, [rbp + 0xaa0]
call fcn.1400473e0
nop
mov r8, qword [rbp + 0xab0]
mov rcx, qword [rbp + 0xab8]
mov rax, rcx
sub rax, r8
cmp rax, 6
jb 0x14005d8e8
lea rax, [r8 + 6]
mov qword [rbp + 0xab0], rax
lea rbx, [rbp + 0xaa0]
cmp rcx, 0xf
cmova rbx, qword [rbp + 0xaa0]
lea rax, [0x14039c326]
cmp rax, rbx
jbe 0x14005d8a4
lea rax, [rbx + r8]
cmp r12, rax
ja 0x14005d8a4
cmp rbx, r12
ja 0x14005d89c
mov rsi, r14
jmp 0x14005d8a9
mov rsi, rbx
sub rsi, r12
jmp 0x14005d8a9
mov esi, 6
lea rcx, [rbx + 6]
inc r8
mov rdx, rbx
call sub.VCRUNTIME140.dll_memmove
mov r8, rsi
mov rdx, r12
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rbx + rsi]
mov r8d, 6
sub r8, rsi
lea rdx, [rsi + 6]
add rdx, r12
call sub.VCRUNTIME140.dll_memcpy
lea rax, [rbp + 0xaa0]
jmp 0x14005d907
mov qword [rsp + 0x28], 6
mov qword [rsp + 0x20], r12
mov edx, 6
lea rcx, [rbp + 0xaa0]
call fcn.140075b00
xorps xmm0, xmm0
movups xmmword [rbp + 0xae0], xmm0
mov qword [rbp + 0xaf0], r14
mov qword [rbp + 0xaf8], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xae0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xaf0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r8d, 1
lea rdx, [0x14039bb10]
lea rcx, [rbp + 0xae0]
call fcn.140046c80
xorps xmm0, xmm0
movups xmmword [rbp + 0xa80], xmm0
mov qword [rbp + 0xa90], r14
mov qword [rbp + 0xa98], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xa80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xa90], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rbp + 0xa80]
cmp qword [rbp + 0xa98], 0xf
cmova r8, qword [rbp + 0xa80]
mov rax, qword [0x1403a97b0]
mov dword [rbp + 0x520], 0x3f666666
mov dword [rbp + 0x524], 0x3f666666
mov dword [rbp + 0x528], 0x3f800000
movss xmm0, dword [rax + 0x3778]
movss dword [rbp + 0x52c], xmm0
lea rcx, [rbp + 0x520]
call fcn.140003560
movaps xmm1, xmm8
divss xmm1, xmm13
movaps xmm0, xmm9
subss xmm0, xmm1
movss dword [rbp + 0x290], xmm0
movss dword [rbp + 0x294], xmm11
movaps xmm3, xmm6
mov edx, eax
lea rcx, [rbp + 0x290]
call fcn.14004d1b0
nop
mov rdx, qword [rbp + 0xa98]
cmp rdx, 0xf
jbe 0x14005da65
inc rdx
mov rcx, qword [rbp + 0xa80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005da60
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b91
call fcn.140076090
mov qword [rbp + 0xa90], r14
mov qword [rbp + 0xa98], 0xf
mov byte [rbp + 0xa80], 0
mov rdx, qword [rbp + 0xaf8]
cmp rdx, 0xf
jbe 0x14005dabf
inc rdx
mov rcx, qword [rbp + 0xae0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005daba
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b98
call fcn.140076090
mov qword [rbp + 0xaf0], r14
mov qword [rbp + 0xaf8], 0xf
mov byte [rbp + 0xae0], 0
mov rdx, qword [rbp + 0xab8]
cmp rdx, 0xf
jbe 0x14005db19
inc rdx
mov rcx, qword [rbp + 0xaa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005db14
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060b9f
call fcn.140076090
mov qword [rbp + 0xab0], r14
mov qword [rbp + 0xab8], 0xf
mov byte [rbp + 0xaa0], 0
cmp byte [0x1403a9845], 0
je 0x14005de18
mov r8, qword [rbp + 0x8b8]
mov rdx, qword [rbp + 0x920]
lea rcx, [rbp + 0xb80]
call fcn.140050ee0
mov rbx, rax
mov r8, qword [rax + 0x10]
mov rcx, qword [rax + 0x18]
mov rax, rcx
sub rax, r8
cmp rax, 6
jb 0x14005dbe7
lea rax, [r8 + 6]
mov qword [rbx + 0x10], rax
mov rsi, rbx
cmp rcx, 0xf
jbe 0x14005db84
mov rsi, qword [rbx]
lea rax, [0x14039c33e]
cmp rax, rsi
jbe 0x14005dba6
lea rax, [rsi + r8]
cmp r15, rax
ja 0x14005dba6
cmp rsi, r15
jbe 0x14005dbac
mov r14, rsi
sub r14, r15
jmp 0x14005dbac
mov r14d, 6
lea rcx, [rsi + 6]
inc r8
mov rdx, rsi
call sub.VCRUNTIME140.dll_memmove
mov r8, r14
mov rdx, r15
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsi + r14]
mov r8d, 6
sub r8, r14
lea rdx, [r14 + 6]
add rdx, r15
call sub.VCRUNTIME140.dll_memcpy
xor r14d, r14d
jmp 0x14005dc05
mov qword [rsp + 0x28], 6
mov qword [rsp + 0x20], r15
mov edx, 6
mov rcx, rbx
call fcn.140075b00
mov rbx, rax
xorps xmm0, xmm0
movups xmmword [rbp + 0xb00], xmm0
mov qword [rbp + 0xb10], r14
mov qword [rbp + 0xb18], r14
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0xb00], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0xb10], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov r8d, 1
lea rdx, [0x14039bb10]
lea rcx, [rbp + 0xb00]
call fcn.140046c80
xorps xmm0, xmm0
movups xmmword [rbp + 0xac0], xmm0
mov qword [rbp + 0xad0], r14
mov qword [rbp + 0xad8], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xac0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xad0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rbp + 0xac0]
cmp qword [rbp + 0xad8], 0xf
cmova r8, qword [rbp + 0xac0]
movaps xmm0, xmmword [0x14039d890]
mov rax, qword [0x1403a97b0]
movups xmmword [rbp + 0x40], xmm0
movss xmm0, dword [rax + 0x3778]
movss dword [rbp + 0x4c], xmm0
lea rcx, [rbp + 0x40]
call fcn.140003560
movaps xmm0, xmm6
addss xmm0, xmm11
divss xmm8, xmm13
subss xmm9, xmm8
movss dword [rbp + 0x298], xmm9
movss dword [rbp + 0x29c], xmm0
movaps xmm3, xmm6
mov edx, eax
lea rcx, [rbp + 0x298]
call fcn.14004d1b0
nop
mov rdx, qword [rbp + 0xad8]
cmp rdx, 0xf
jbe 0x14005dd4b
inc rdx
mov rcx, qword [rbp + 0xac0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005dd46
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060ba6
call fcn.140076090
mov qword [rbp + 0xad0], r14
mov qword [rbp + 0xad8], 0xf
mov byte [rbp + 0xac0], 0
mov rdx, qword [rbp + 0xb18]
cmp rdx, 0xf
jbe 0x14005dda5
inc rdx
mov rcx, qword [rbp + 0xb00]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005dda0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060bad
call fcn.140076090
mov qword [rbp + 0xb10], r14
mov qword [rbp + 0xb18], 0xf
mov byte [rbp + 0xb00], 0
mov rdx, qword [rbp + 0xb98]
cmp rdx, 0xf
jbe 0x14005ddff
inc rdx
mov rcx, qword [rbp + 0xb80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005ddfa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060bb4
call fcn.140076090
mov qword [rbp + 0xb90], r14
mov qword [rbp + 0xb98], 0xf
mov byte [rbp + 0xb80], 0
mov rsi, qword [rbp + 0x2a0]
cmp byte [0x1403a981d], 0
je 0x14005f5ca
cmp byte [rbp + 0x980], 0
je 0x14005f5ca
cmp byte [rbp + 0x982], 0
je 0x14005f5ca
movss xmm0, dword [0x1403a8ffa]
comiss xmm0, xmm12
jbe 0x14005f5ca
cmp qword [rbp + 0x920], 0x16dd
je 0x14005f5ca
lea rdx, [rbp + 0xba0]
lea rcx, [rbp + 0x8b0]
call fcn.140050090
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x850], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x860], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x870], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rbp + 0x880], xmm1
movsd xmm0, qword [rax + 0x40]
movsd qword [rbp + 0x890], xmm0
lea r8, [rbp + 0x850]
lea rdx, [rbp + 0x80]
lea rcx, [rbp + 0x8b0]
call fcn.140050640
mov ebx, 0xffff0000
cmp byte [rbp + 0x981], 0
mov eax, 0xff00ff00
cmovne ebx, eax
cmp byte [rbp + 0x80], 0
jne 0x14005f5ca
movsd xmm0, qword [rbp + 0x996]
movsd qword [rbp + 0x680], xmm0
mov eax, dword [rbp + 0x99e]
mov dword [rbp + 0x688], eax
movss xmm0, dword [0x1403a9878]
movss xmm1, dword [0x1403a987c]
unpcklps xmm1, xmm0
movq r9, xmm1
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x680]
call fcn.14004bea0
test al, al
je 0x14005f5ca
mov rcx, qword [rbp + 0x920]
movabs rax, 0xfd1ffffffffffcc9
add rax, rcx
cmp rax, 0x23
ja 0x14005df69
movabs rdx, 0x800000021
bt rdx, rax
jb 0x14005ee2a
movabs rax, 0x2e000000000016c
cmp rcx, rax
je 0x14005ee2a
movss xmm14, dword [0x14039d508]
movaps xmm3, xmm14
mov r8d, 0xff000000
lea rdx, [rbp + 0xa9]
lea rcx, [rbp + 0xa1]
call fcn.14004d540
movaps xmm3, xmm14
mov r8d, 0xff000000
lea rdx, [rbp + 0xb1]
lea rcx, [rbp + 0xa9]
call fcn.14004d540
movaps xmm3, xmm14
mov r8d, 0xff000000
lea rdx, [rbp + 0xb9]
lea rcx, [rbp + 0xb1]
call fcn.14004d540
movaps xmm3, xmm14
mov r8d, 0xff000000
lea rdx, [rbp + 0xc1]
lea rcx, [rbp + 0xa9]
call fcn.14004d540
movaps xmm3, xmm14
mov r8d, 0xff000000
lea rdx, [rbp + 0xd1]
lea rcx, [rbp + 0xa9]
call fcn.14004d540
movaps xmm3, xmm14
mov r8d, 0xff000000
lea rdx, [rbp + 0xe1]
lea rcx, [rbp + 0xc1]
call fcn.14004d540
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov rcx, qword [0x1403a97b0]
mov qword [rbp + 0x530], 0
mov dword [rbp + 0x538], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x53c], xmm0
lea rcx, [rbp + 0x530]
call fcn.140003560
movss xmm7, dword [rbp + 0xf1]
movss dword [rbp + 0x2a8], xmm7
movss xmm6, dword [rbp + 0xf5]
movss dword [rbp + 0x2ac], xmm6
movss xmm0, dword [rbp + 0xd1]
movss dword [rbp + 0x2b0], xmm0
movss xmm0, dword [rbp + 0xd5]
movss dword [rbp + 0x2b4], xmm0
movss dword [rsp + 0x20], xmm14
mov r9d, eax
lea r8, [rbp + 0x2a8]
lea rdx, [rbp + 0x2b0]
mov rcx, r10
call fcn.140024200
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov rcx, qword [0x1403a97b0]
mov qword [rbp + 0x540], 0
mov dword [rbp + 0x548], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x54c], xmm0
lea rcx, [rbp + 0x540]
call fcn.140003560
movss xmm0, dword [rbp + 0xe9]
movss dword [rbp + 0x2b8], xmm0
movss xmm0, dword [rbp + 0xed]
movss dword [rbp + 0x2bc], xmm0
movss xmm0, dword [rbp + 0xe1]
movss dword [rbp + 0x2c0], xmm0
movss xmm0, dword [rbp + 0xe5]
movss dword [rbp + 0x2c4], xmm0
movss dword [rsp + 0x20], xmm14
mov r9d, eax
lea r8, [rbp + 0x2b8]
lea rdx, [rbp + 0x2c0]
mov rcx, r10
call fcn.140024200
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov rcx, qword [0x1403a97b0]
mov qword [rbp + 0x4e0], 0
mov dword [rbp + 0x4e8], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x4ec], xmm0
lea rcx, [rbp + 0x4e0]
call fcn.140003560
movss xmm0, dword [rbp + 0xf9]
movss dword [rbp + 0x2c8], xmm0
movss xmm0, dword [rbp + 0xfd]
movss dword [rbp + 0x2cc], xmm0
movss dword [rbp + 0x2d0], xmm7
movss dword [rbp + 0x2d4], xmm6
movss dword [rsp + 0x20], xmm14
mov r9d, eax
lea r8, [rbp + 0x2c8]
lea rdx, [rbp + 0x2d0]
mov rcx, r10
call fcn.140024200
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov rcx, qword [0x1403a97b0]
mov qword [rbp + 0x550], 0
mov dword [rbp + 0x558], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x55c], xmm0
lea rcx, [rbp + 0x550]
call fcn.140003560
movss xmm13, dword [rbp + 0x101]
movss dword [rbp + 0x2d8], xmm13
movss xmm12, dword [rbp + 0x105]
movss dword [rbp + 0x2dc], xmm12
movss xmm7, dword [rbp + 0xb9]
movss dword [rbp + 0x2e0], xmm7
movss xmm6, dword [rbp + 0xbd]
movss dword [rbp + 0x2e4], xmm6
movss dword [rsp + 0x20], xmm14
mov r9d, eax
lea r8, [rbp + 0x2d8]
lea rdx, [rbp + 0x2e0]
mov rcx, r10
call fcn.140024200
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov rcx, qword [0x1403a97b0]
mov qword [rbp + 0x560], 0
mov dword [rbp + 0x568], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x56c], xmm0
lea rcx, [rbp + 0x560]
call fcn.140003560
movss xmm11, dword [rbp + 0x111]
movss dword [rbp + 0x2e8], xmm11
movss xmm10, dword [rbp + 0x115]
movss dword [rbp + 0x2ec], xmm10
movss dword [rbp + 0x2f0], xmm7
movss dword [rbp + 0x2f4], xmm6
movss dword [rsp + 0x20], xmm14
mov r9d, eax
lea r8, [rbp + 0x2e8]
lea rdx, [rbp + 0x2f0]
mov rcx, r10
call fcn.140024200
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov rcx, qword [0x1403a97b0]
mov qword [rbp + 0x570], 0
mov dword [rbp + 0x578], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x57c], xmm0
lea rcx, [rbp + 0x570]
call fcn.140003560
movss xmm9, dword [rbp + 0x109]
movss dword [rbp + 0x2f8], xmm9
movss xmm8, dword [rbp + 0x10d]
movss dword [rbp + 0x2fc], xmm8
movss dword [rbp + 0x300], xmm13
movss dword [rbp + 0x304], xmm12
movss dword [rsp + 0x20], xmm14
mov r9d, eax
lea r8, [rbp + 0x2f8]
lea rdx, [rbp + 0x300]
mov rcx, r10
call fcn.140024200
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov rcx, qword [0x1403a97b0]
mov qword [rbp + 0x580], 0
mov dword [rbp + 0x588], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x58c], xmm0
lea rcx, [rbp + 0x580]
call fcn.140003560
movss xmm7, dword [rbp + 0x119]
movss dword [rbp + 0x308], xmm7
movss xmm6, dword [rbp + 0x11d]
movss dword [rbp + 0x30c], xmm6
movss dword [rbp + 0x310], xmm11
movss dword [rbp + 0x314], xmm10
movss xmm0, dword [0x14039d578]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x308]
lea rdx, [rbp + 0x310]
mov rcx, r10
call fcn.140024200
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov rcx, qword [0x1403a97b0]
mov qword [rbp + 0x590], 0
mov dword [rbp + 0x598], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x59c], xmm0
lea rcx, [rbp + 0x590]
call fcn.140003560
movss xmm15, dword [rbp + 0x121]
movss dword [rbp + 0x318], xmm15
movss xmm14, dword [rbp + 0x125]
movss dword [rbp + 0x31c], xmm14
movss dword [rbp + 0x320], xmm7
movss dword [rbp + 0x324], xmm6
movss xmm6, dword [0x14039d508]
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x318]
lea rdx, [rbp + 0x320]
mov rcx, r10
call fcn.140024200
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov rcx, qword [0x1403a97b0]
mov qword [rbp + 0x5a0], 0
mov dword [rbp + 0x5a8], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x5ac], xmm0
lea rcx, [rbp + 0x5a0]
call fcn.140003560
movss xmm13, dword [rbp + 0x129]
movss dword [rbp + 0x328], xmm13
movss xmm12, dword [rbp + 0x12d]
movss dword [rbp + 0x32c], xmm12
movss dword [rbp + 0x330], xmm9
movss dword [rbp + 0x334], xmm8
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x328]
lea rdx, [rbp + 0x330]
mov rcx, r10
call fcn.140024200
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov rcx, qword [0x1403a97b0]
mov qword [rbp + 0x5b0], 0
mov dword [rbp + 0x5b8], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x5bc], xmm0
lea rcx, [rbp + 0x5b0]
call fcn.140003560
movss xmm11, dword [rbp + 0x131]
movss dword [rbp + 0x408], xmm11
movss xmm10, dword [rbp + 0x135]
movss dword [rbp + 0x40c], xmm10
movss dword [rbp + 0x338], xmm15
movss dword [rbp + 0x33c], xmm14
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x408]
lea rdx, [rbp + 0x338]
mov rcx, r10
call fcn.140024200
movaps xmm3, xmm6
mov r8d, 0xff000000
lea rdx, [rbp + 0x139]
lea rcx, [rbp + 0x129]
call fcn.14004d540
movaps xmm3, xmm6
mov r8d, ebx
lea rdx, [rbp + 0xa9]
lea rcx, [rbp + 0xa1]
call fcn.14004d540
mov rcx, qword [0x1403a97b0]
mov rcx, qword [rcx + 0x4030]
mov rcx, qword [rcx]
call fcn.140005ee0
mov r10, rax
mov r8d, ebx
shr r8d, 0x18
mov ecx, ebx
shr ecx, 0x10
movzx r9d, cl
mov ecx, ebx
shr ecx, 8
movzx edx, cl
mov ecx, r8d
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
movss xmm3, dword [0x14039d65c]
divss xmm0, xmm3
xorps xmm2, xmm2
cvtsi2ss xmm2, rdx
divss xmm2, xmm3
xorps xmm1, xmm1
cvtsi2ss xmm1, r9
divss xmm1, xmm3
movss dword [rsp + 0x20], xmm0
xorps xmm3, xmm3
lea rcx, [rbp + 0x7d4]
call fcn.1400013f0
lea rcx, [rbp + 0x7d4]
call fcn.140003a70
movss xmm7, dword [rbp + 0xb1]
movss dword [rbp + 0x340], xmm7
movss xmm6, dword [rbp + 0xb5]
movss dword [rbp + 0x344], xmm6
movss xmm9, dword [rbp + 0xa9]
movss dword [rbp + 0x348], xmm9
movss xmm8, dword [rbp + 0xad]
movss dword [rbp + 0x34c], xmm8
movss xmm0, dword [0x14039d508]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x340]
lea rdx, [rbp + 0x348]
mov rcx, r10
call fcn.140024200
movss xmm3, dword [0x14039d508]
mov r8d, ebx
lea rdx, [rbp + 0xb9]
lea rcx, [rbp + 0xb1]
call fcn.14004d540
movss xmm3, dword [0x14039d508]
mov r8d, ebx
lea rdx, [rbp + 0xc1]
lea rcx, [rbp + 0xa9]
call fcn.14004d540
movss xmm3, dword [0x14039d508]
mov r8d, ebx
lea rdx, [rbp + 0xd1]
lea rcx, [rbp + 0xa9]
call fcn.14004d540
movss xmm3, dword [0x14039d508]
mov r8d, ebx
lea rdx, [rbp + 0xe1]
lea rcx, [rbp + 0xc1]
call fcn.14004d540
movss xmm3, dword [0x14039d508]
mov r8d, ebx
lea rdx, [rbp + 0xf1]
lea rcx, [rbp + 0xd1]
call fcn.14004d540
movss xmm3, dword [0x14039d508]
mov r8d, ebx
lea rdx, [rbp + 0xe9]
lea rcx, [rbp + 0xe1]
call fcn.14004d540
movss xmm3, dword [0x14039d508]
mov r8d, ebx
lea rdx, [rbp + 0xf9]
lea rcx, [rbp + 0xf1]
call fcn.14004d540
movss xmm3, dword [0x14039d508]
mov r8d, ebx
lea rdx, [rbp + 0x101]
lea rcx, [rbp + 0xb9]
call fcn.14004d540
movss xmm3, dword [0x14039d508]
mov r8d, ebx
lea rdx, [rbp + 0x111]
lea rcx, [rbp + 0xb9]
call fcn.14004d540
movss xmm3, dword [0x14039d508]
mov r8d, ebx
lea rdx, [rbp + 0x109]
lea rcx, [rbp + 0x101]
call fcn.14004d540
movss xmm3, dword [0x14039d508]
mov r8d, ebx
lea rdx, [rbp + 0x119]
lea rcx, [rbp + 0x111]
call fcn.14004d540
movss xmm3, dword [0x14039d508]
mov r8d, ebx
lea rdx, [rbp + 0x121]
lea rcx, [rbp + 0x119]
call fcn.14004d540
movss xmm3, dword [0x14039d508]
mov r8d, ebx
lea rdx, [rbp + 0x129]
lea rcx, [rbp + 0x109]
call fcn.14004d540
movss xmm3, dword [0x14039d508]
mov r8d, ebx
lea rdx, [rbp + 0x131]
lea rcx, [rbp + 0x121]
call fcn.14004d540
movss xmm3, dword [0x14039d508]
mov r8d, ebx
lea rdx, [rbp + 0x139]
lea rcx, [rbp + 0x129]
call fcn.14004d540
movss xmm0, dword [rbp + 0xa1]
movss dword [rbp + 0x350], xmm0
movss xmm1, dword [rbp + 0xa5]
movss dword [rbp + 0x354], xmm1
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movss xmm2, dword [0x14039d508]
lea rdx, [rbp + 0x350]
mov rcx, rdi
call fcn.140024b80
movss dword [rbp + 0x358], xmm7
movss dword [rbp + 0x35c], xmm6
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movss xmm6, dword [0x14039d508]
movaps xmm2, xmm6
lea rdx, [rbp + 0x358]
mov rcx, rdi
call fcn.140024b80
movss xmm0, dword [rbp + 0xb9]
movss dword [rbp + 0x360], xmm0
movss xmm0, dword [rbp + 0xbd]
movss dword [rbp + 0x364], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x360]
mov rcx, rdi
call fcn.140024b80
movss dword [rbp + 0x368], xmm9
movss dword [rbp + 0x36c], xmm8
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x368]
mov rcx, rdi
call fcn.140024b80
movss xmm0, dword [rbp + 0xc1]
movss dword [rbp + 0x370], xmm0
movss xmm1, dword [rbp + 0xc5]
movss dword [rbp + 0x374], xmm1
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x370]
mov rcx, rdi
call fcn.140024b80
movss xmm0, dword [rbp + 0xd1]
movss dword [rbp + 0x378], xmm0
movss xmm0, dword [rbp + 0xd5]
movss dword [rbp + 0x37c], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x378]
mov rcx, rdi
call fcn.140024b80
movss xmm0, dword [rbp + 0xe1]
movss dword [rbp + 0x380], xmm0
movss xmm0, dword [rbp + 0xe5]
movss dword [rbp + 0x384], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x380]
mov rcx, rdi
call fcn.140024b80
movss xmm0, dword [rbp + 0xe9]
movss dword [rbp + 0x388], xmm0
movss xmm0, dword [rbp + 0xed]
movss dword [rbp + 0x38c], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x388]
mov rcx, rdi
call fcn.140024b80
movss xmm0, dword [rbp + 0xf1]
movss dword [rbp + 0x390], xmm0
movss xmm0, dword [rbp + 0xf5]
movss dword [rbp + 0x394], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x390]
mov rcx, rdi
call fcn.140024b80
movss xmm0, dword [rbp + 0xf9]
movss dword [rbp + 0x398], xmm0
movss xmm0, dword [rbp + 0xfd]
movss dword [rbp + 0x39c], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x398]
mov rcx, rdi
call fcn.140024b80
movss xmm0, dword [rbp + 0x101]
movss dword [rbp + 0x3a0], xmm0
movss xmm0, dword [rbp + 0x105]
movss dword [rbp + 0x3a4], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x3a0]
mov rcx, rdi
call fcn.140024b80
movss xmm0, dword [rbp + 0x109]
movss dword [rbp + 0x3a8], xmm0
movss xmm0, dword [rbp + 0x10d]
movss dword [rbp + 0x3ac], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x3a8]
mov rcx, rdi
call fcn.140024b80
movss xmm0, dword [rbp + 0x111]
movss dword [rbp + 0x3b0], xmm0
movss xmm0, dword [rbp + 0x115]
movss dword [rbp + 0x3b4], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x3b0]
mov rcx, rdi
call fcn.140024b80
movss xmm0, dword [rbp + 0x119]
movss dword [rbp + 0x3b8], xmm0
movss xmm0, dword [rbp + 0x11d]
movss dword [rbp + 0x3bc], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x3b8]
mov rcx, rdi
call fcn.140024b80
movss dword [rbp + 0x3c0], xmm15
movss dword [rbp + 0x3c4], xmm14
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x3c0]
mov rcx, rdi
call fcn.140024b80
movss dword [rbp + 0x3c8], xmm11
movss dword [rbp + 0x3cc], xmm10
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x3c8]
mov rcx, rdi
call fcn.140024b80
movss dword [rbp + 0x3d0], xmm13
movss dword [rbp + 0x3d4], xmm12
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x3d0]
mov rcx, rdi
call fcn.140024b80
movss xmm0, dword [rbp + 0x139]
movss dword [rbp + 0x3d8], xmm0
movss xmm1, dword [rbp + 0x13d]
movss dword [rbp + 0x3dc], xmm1
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x3d8]
mov rcx, rdi
call fcn.140024b80
jmp 0x14005f5c1
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov rcx, qword [0x1403a97b0]
mov qword [rbp + 0x5c0], 0
mov dword [rbp + 0x5c8], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x5cc], xmm0
lea rcx, [rbp + 0x5c0]
call fcn.140003560
movss xmm7, dword [rbp + 0xa9]
movss dword [rbp + 0x3e0], xmm7
movss xmm6, dword [rbp + 0xad]
movss dword [rbp + 0x3e4], xmm6
movss xmm0, dword [rbp + 0xa1]
movss dword [rbp + 0x3e8], xmm0
movss xmm15, dword [rbp + 0xa5]
movss dword [rbp + 0x3ec], xmm15
movss xmm8, dword [0x14039d508]
movss dword [rsp + 0x20], xmm8
mov r9d, eax
lea r8, [rbp + 0x3e0]
lea rdx, [rbp + 0x3e8]
mov rcx, r10
call fcn.140024200
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov rcx, qword [0x1403a97b0]
mov qword [rbp + 0x5d0], 0
mov dword [rbp + 0x5d8], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x5dc], xmm0
lea rcx, [rbp + 0x5d0]
call fcn.140003560
movss xmm13, dword [rbp + 0xb1]
movss dword [rbp + 0x3f0], xmm13
movss xmm11, dword [rbp + 0xb5]
movss dword [rbp + 0x3f4], xmm11
movss dword [rbp + 0x3f8], xmm7
movss dword [rbp + 0x3fc], xmm6
movss dword [rsp + 0x20], xmm8
mov r9d, eax
lea r8, [rbp + 0x3f0]
lea rdx, [rbp + 0x3f8]
mov rcx, r10
call fcn.140024200
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov rcx, qword [0x1403a97b0]
mov qword [rbp + 0x5e0], 0
mov dword [rbp + 0x5e8], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x5ec], xmm0
lea rcx, [rbp + 0x5e0]
call fcn.140003560
movss xmm14, dword [rbp + 0xc1]
movss dword [rbp + 0x400], xmm14
movss xmm12, dword [rbp + 0xc5]
movss dword [rbp + 0x404], xmm12
movss dword [rbp + 0x260], xmm13
movss dword [rbp + 0x264], xmm11
movss dword [rsp + 0x20], xmm8
mov r9d, eax
lea r8, [rbp + 0x400]
lea rdx, [rbp + 0x260]
mov rcx, r10
call fcn.140024200
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov rcx, qword [0x1403a97b0]
mov qword [rbp + 0x5f0], 0
mov dword [rbp + 0x5f8], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x5fc], xmm0
lea rcx, [rbp + 0x5f0]
call fcn.140003560
movss xmm10, dword [rbp + 0xd1]
movss dword [rbp + 0x410], xmm10
movss xmm9, dword [rbp + 0xd5]
movss dword [rbp + 0x414], xmm9
movss dword [rbp + 0x418], xmm13
movss dword [rbp + 0x41c], xmm11
movss dword [rsp + 0x20], xmm8
mov r9d, eax
lea r8, [rbp + 0x410]
lea rdx, [rbp + 0x418]
mov rcx, r10
call fcn.140024200
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov r8d, ebx
shr r8d, 0x18
mov ecx, ebx
shr ecx, 0x10
movzx r9d, cl
shr ebx, 8
movzx edx, bl
mov ecx, r8d
xorps xmm8, xmm8
cvtsi2ss xmm8, rcx
movss xmm0, dword [0x14039d65c]
divss xmm8, xmm0
xorps xmm7, xmm7
cvtsi2ss xmm7, rdx
divss xmm7, xmm0
xorps xmm6, xmm6
cvtsi2ss xmm6, r9
divss xmm6, xmm0
mov rax, qword [0x1403a97b0]
movss dword [rbp + 0x600], xmm6
movss dword [rbp + 0x604], xmm7
mov dword [rbp + 0x608], 0
movaps xmm0, xmm8
mulss xmm0, dword [rax + 0x3778]
movss dword [rbp + 0x60c], xmm0
lea rcx, [rbp + 0x600]
call fcn.140003560
movss xmm0, dword [rbp + 0xa9]
movss dword [rbp + 0x420], xmm0
movss xmm0, dword [rbp + 0xad]
movss dword [rbp + 0x424], xmm0
movss xmm0, dword [rbp + 0xa1]
movss dword [rbp + 0x428], xmm0
movss dword [rbp + 0x42c], xmm15
movss xmm0, dword [0x14039d508]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x420]
lea rdx, [rbp + 0x428]
mov rcx, r10
call fcn.140024200
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov rcx, qword [0x1403a97b0]
movss dword [rbp + 0x610], xmm6
movss dword [rbp + 0x614], xmm7
mov dword [rbp + 0x618], 0
movaps xmm0, xmm8
mulss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x61c], xmm0
lea rcx, [rbp + 0x610]
call fcn.140003560
movss dword [rbp + 0x430], xmm13
movss dword [rbp + 0x434], xmm11
movss xmm0, dword [rbp + 0xa9]
movss dword [rbp + 0x438], xmm0
movss xmm0, dword [rbp + 0xad]
movss dword [rbp + 0x43c], xmm0
movss xmm0, dword [0x14039d508]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x430]
lea rdx, [rbp + 0x438]
mov rcx, r10
call fcn.140024200
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov rcx, qword [0x1403a97b0]
movss dword [rbp + 0x620], xmm6
movss dword [rbp + 0x624], xmm7
mov dword [rbp + 0x628], 0
movaps xmm0, xmm8
mulss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x62c], xmm0
lea rcx, [rbp + 0x620]
call fcn.140003560
movss dword [rbp + 0x440], xmm14
movss dword [rbp + 0x444], xmm12
movss dword [rbp + 0x448], xmm13
movss dword [rbp + 0x44c], xmm11
movss xmm0, dword [0x14039d508]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x440]
lea rdx, [rbp + 0x448]
mov rcx, r10
call fcn.140024200
mov rax, qword [0x1403a97b0]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005da0
mov r10, rax
mov rcx, qword [0x1403a97b0]
movss dword [rbp + 0x630], xmm6
movss dword [rbp + 0x634], xmm7
mov dword [rbp + 0x638], 0
mulss xmm8, dword [rcx + 0x3778]
movss dword [rbp + 0x63c], xmm8
lea rcx, [rbp + 0x630]
call fcn.140003560
movss dword [rbp + 0x450], xmm10
movss dword [rbp + 0x454], xmm9
movss dword [rbp + 0x458], xmm13
movss dword [rbp + 0x45c], xmm11
movss xmm6, dword [0x14039d508]
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x450]
lea rdx, [rbp + 0x458]
mov rcx, r10
call fcn.140024200
movss xmm0, dword [rbp + 0xa1]
movss dword [rbp + 0x460], xmm0
movss dword [rbp + 0x464], xmm15
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movaps xmm2, xmm6
lea rdx, [rbp + 0x460]
mov rcx, rdi
call fcn.140023000
mov r8d, dword [rdi + 0x78]
dec r8d
mov dword [rdi + 0x78], r8d
mov r9d, 0xffff9966
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.140022a50
mov dword [rdi + 0x78], r14d
movss dword [rbp + 0x224], xmm13
movss dword [rbp + 0x228], xmm11
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movaps xmm2, xmm6
lea rdx, [rbp + 0x224]
mov rcx, rdi
call fcn.140023000
dec dword [rdi + 0x78]
mov r9d, 0xffff9966
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.140022a50
mov dword [rdi + 0x78], r14d
movss xmm0, dword [rbp + 0xa9]
movss dword [rbp + 0x22c], xmm0
movss xmm0, dword [rbp + 0xad]
movss dword [rbp + 0x230], xmm0
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movaps xmm2, xmm6
lea rdx, [rbp + 0x22c]
mov rcx, rdi
call fcn.140023000
dec dword [rdi + 0x78]
mov r9d, 0xffff9966
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.140022a50
mov dword [rdi + 0x78], r14d
movss dword [rbp + 0x234], xmm14
movss dword [rbp + 0x238], xmm12
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movaps xmm2, xmm6
lea rdx, [rbp + 0x234]
mov rcx, rdi
call fcn.140023000
dec dword [rdi + 0x78]
mov r9d, 0xffff9966
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.140022a50
mov dword [rdi + 0x78], r14d
movss dword [rbp + 0x23c], xmm10
movss dword [rbp + 0x240], xmm9
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movaps xmm2, xmm6
lea rdx, [rbp + 0x23c]
mov rcx, rdi
call fcn.140023000
dec dword [rdi + 0x78]
mov r9d, 0xffff9966
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.140022a50
mov dword [rdi + 0x78], r14d
movss xmm14, dword [0x14039d64c]
cmp byte [0x1403a9849], 0
je 0x14005f726
cmp byte [rbp + 0x980], 0
je 0x14005f726
xorps xmm12, xmm12
cmp byte [rbp + 0x982], 0
je 0x14005f72a
movss xmm0, dword [0x1403a8ffa]
comiss xmm0, xmm12
jbe 0x14005f72a
cmp qword [rbp + 0x920], 0x16dd
je 0x14005f72a
mov qword [rbp + 0x158], 0
movss xmm9, dword [0x1403a987c]
movss xmm10, dword [0x1403a9878]
movss xmm7, dword [rbp + 0x996]
movss xmm6, dword [rbp + 0x99a]
movss xmm8, dword [rbp + 0x99e]
movaps xmm0, xmm7
unpcklps xmm0, xmm6
movsd qword [rbp + 0x690], xmm0
movss dword [rbp + 0x698], xmm8
movaps xmm0, xmm9
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rbp + 0x158]
lea rdx, [rbp + 0x690]
call fcn.14004bea0
movss xmm13, dword [0x14039d404]
test al, al
je 0x14005f74c
mov r9d, 2
mov rdx, qword [rbp + 0x158]
cmp byte [rbp + 0x981], 0
je 0x14005f6fc
mulss xmm10, xmm13
mulss xmm9, xmm13
mov r8d, 0xffdaa096
unpcklps xmm9, xmm10
movq rcx, xmm9
call fcn.14004dd50
movss xmm8, dword [rbp + 0x99e]
movss dword [rbp + 0x99e], xmm8
movss xmm6, dword [rbp + 0x99a]
movss xmm7, dword [rbp + 0x996]
movaps xmm0, xmm7
unpcklps xmm0, xmm6
movsd qword [rbp + 0x996], xmm0
jmp 0x14005f74c
movss xmm1, dword [0x1403a9878]
mulss xmm1, xmm13
movss xmm0, dword [0x1403a987c]
mulss xmm0, xmm13
mov r8d, 0x6666cc96
unpcklps xmm0, xmm1
movq rcx, xmm0
jmp 0x14005f6c5
xorps xmm12, xmm12
movss xmm8, dword [rbp + 0x99e]
movss xmm6, dword [rbp + 0x99a]
movss xmm7, dword [rbp + 0x996]
movss xmm13, dword [0x14039d404]
cmp byte [0x1403a9818], 0
je 0x14005faa8
cmp byte [rbp + 0x980], 0
je 0x14005faa8
cmp byte [rbp + 0x982], 0
je 0x14005faa8
movss xmm0, dword [0x1403a8ffa]
comiss xmm0, xmm12
jbe 0x14005faa8
cmp qword [rbp + 0x920], 0x16dd
je 0x14005faa8
mov qword [rbp + 0x160], 0
mov dword [rbp + 0x24c], 0
movss xmm2, dword [0x1403a9878]
movaps xmm1, xmm6
addss xmm1, dword [0x14039d3bc]
movaps xmm0, xmm7
unpcklps xmm0, xmm1
movsd qword [rbp + 0x6a0], xmm0
movss dword [rbp + 0x6a8], xmm8
movss xmm0, dword [0x1403a987c]
unpcklps xmm0, xmm2
movq r9, xmm0
lea r8, [rbp + 0x160]
lea rdx, [rbp + 0x6a0]
call fcn.14004bea0
test al, al
jne 0x14005f846
mov rdx, qword [rbp + 0x952]
cmp rdx, 0xf
jbe 0x140060b1f
inc rdx
mov rcx, qword [rbp + 0x93a]
cmp rdx, 0x1000
mov rax, rcx
jb 0x14005f83c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060bbb
call fcn.140076090
jmp 0x140060b1f
movss xmm1, dword [0x1403a9878]
subss xmm6, dword [0x14039d4d8]
movaps xmm0, xmm7
unpcklps xmm0, xmm6
movsd qword [rbp + 0x6b0], xmm0
movss dword [rbp + 0x6b8], xmm8
movss xmm0, dword [0x1403a987c]
unpcklps xmm0, xmm1
movq r9, xmm0
lea r8, [rbp + 0x248]
lea rdx, [rbp + 0x6b0]
call fcn.14004bea0
test al, al
je 0x14005f7fc
movss xmm10, dword [rbp + 0x164]
movaps xmm7, xmm10
subss xmm7, dword [rbp + 0x24c]
andps xmm7, xmmword [0x14039d930]
cvtps2pd xmm0, xmm7
mulsd xmm0, qword [0x14039d4f0]
cvtpd2ps xmm6, xmm0
mov rax, qword [0x1403a97b0]
movss xmm0, dword [0x1403a8ef8]
movss dword [rbp + 0x640], xmm0
movss xmm1, dword [0x1403a8efc]
movss dword [rbp + 0x644], xmm1
movss xmm0, dword [0x1403a8f00]
movss dword [rbp + 0x648], xmm0
movss xmm1, dword [0x1403a8f04]
mulss xmm1, dword [rax + 0x3778]
movss dword [rbp + 0x64c], xmm1
lea rcx, [rbp + 0x640]
call fcn.140003560
mov dword [rbp + 0x40], eax
movaps xmm9, xmm7
addss xmm9, dword [0x14039d5bc]
movaps xmm8, xmm6
addss xmm8, dword [0x14039d508]
divss xmm7, dword [0x14039d580]
subss xmm10, xmm7
subss xmm10, dword [0x14039d474]
mulss xmm6, xmm13
movss xmm7, dword [rbp + 0x160]
subss xmm7, xmm6
subss xmm7, dword [0x14039d474]
cvttss2si r9d, xmm9
cvttss2si r8d, xmm8
cvttss2si edx, xmm10
cvttss2si ecx, xmm7
lea rax, [rbp + 0x40]
mov qword [rsp + 0x20], rax
call fcn.14004d660
movaps xmm0, xmmword [0x14039d7e0]
movups xmmword [rbp + 0xbf0], xmm0
lea rcx, [rbp + 0xbf0]
call fcn.140003560
mov ebx, eax
mov rcx, qword [0x1403a97b0]
mov rcx, qword [rcx + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rcx]
call fcn.140005da0
mov r11, rax
mov r8d, ebx
shr r8d, 0x18
mov ecx, ebx
shr ecx, 0x10
movzx r10d, cl
mov ecx, ebx
shr ecx, 8
movzx r9d, cl
movzx edx, bl
mov ecx, r8d
xorps xmm3, xmm3
cvtsi2ss xmm3, rcx
movss xmm15, dword [0x14039d65c]
divss xmm3, xmm15
xorps xmm2, xmm2
cvtsi2ss xmm2, rdx
divss xmm2, xmm15
xorps xmm1, xmm1
cvtsi2ss xmm1, r9
divss xmm1, xmm15
xorps xmm0, xmm0
cvtsi2ss xmm0, r10
divss xmm0, xmm15
mov rax, qword [0x1403a97b0]
movss dword [rbp + 0x60], xmm0
movss dword [rbp + 0x64], xmm1
movss dword [rbp + 0x68], xmm2
mulss xmm3, dword [rax + 0x3778]
movss dword [rbp + 0x6c], xmm3
lea rcx, [rbp + 0x60]
call fcn.140003560
movaps xmm0, xmm7
addss xmm0, xmm8
movss dword [rbp + 0x250], xmm0
movaps xmm1, xmm10
addss xmm1, xmm9
movss dword [rbp + 0x254], xmm1
movss dword [rbp + 0x258], xmm7
movss dword [rbp + 0x25c], xmm10
mov dword [rsp + 0x28], r14d
movss dword [rsp + 0x20], xmm12
mov r9d, eax
lea r8, [rbp + 0x250]
lea rdx, [rbp + 0x258]
mov rcx, r11
call fcn.140024470
cmp byte [0x1403a97f4], 0
je 0x1400603e2
cmp byte [rbp + 0x980], 0
je 0x1400603e2
cmp byte [rbp + 0x982], 0
je 0x1400603e2
movss xmm0, dword [0x1403a8ffa]
comiss xmm0, xmm12
jbe 0x1400603e2
cmp qword [rbp + 0x920], 0x16dd
je 0x1400603e2
mov qword [rbp + 0x200], 0
mov dword [rbp + 0x208], 0
mov qword [rbp + 0x1f0], 0
mov dword [rbp + 0x1f8], 0
mov qword [rbp + 0x1e0], 0
mov dword [rbp + 0x1e8], 0
mov qword [rbp - 0x50], 0
mov dword [rbp - 0x48], 0
mov qword [rbp - 0x40], 0
mov dword [rbp - 0x38], 0
mov qword [rbp - 0x30], 0
mov dword [rbp - 0x28], 0
mov qword [rbp - 0x10], 0
mov dword [rbp - 8], 0
mov qword [rbp - 0x20], 0
mov dword [rbp - 0x18], 0
mov qword [rbp + 0x170], 0
mov qword [rbp + 0x168], 0
mov qword [rbp + 0x1a0], 0
mov qword [rbp + 0x178], 0
mov qword [rbp + 0x188], 0
mov qword [rbp + 0x190], 0
mov qword [rbp + 0x198], 0
mov qword [rbp - 0x78], 0
lea rax, [rbp - 0x20]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x10]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x1e0]
lea r8, [rbp + 0x1f0]
lea rdx, [rbp + 0x200]
lea rcx, [rbp + 0x8b0]
call fcn.14004ea30
movss xmm6, dword [0x1403a987c]
movss xmm7, dword [0x1403a9878]
movsd xmm0, qword [rbp + 0x200]
movsd qword [rbp + 0x6c0], xmm0
mov eax, dword [rbp + 0x208]
mov dword [rbp + 0x6c8], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x170]
lea rdx, [rbp + 0x6c0]
call fcn.14004bea0
test al, al
jne 0x14005fcb8
mov rdx, qword [rbp + 0x952]
cmp rdx, 0xf
jbe 0x140060b1f
inc rdx
mov rcx, qword [rbp + 0x93a]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005f83c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14005f83c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
movsd xmm0, qword [rbp + 0x1f0]
movsd qword [rbp + 0x6d0], xmm0
mov eax, dword [rbp + 0x1f8]
mov dword [rbp + 0x6d8], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x168]
lea rdx, [rbp + 0x6d0]
call fcn.14004bea0
test al, al
je 0x14005fc6d
movsd xmm0, qword [rbp + 0x1e0]
movsd qword [rbp + 0x6e0], xmm0
mov eax, dword [rbp + 0x1e8]
mov dword [rbp + 0x6e8], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x1a0]
lea rdx, [rbp + 0x6e0]
call fcn.14004bea0
test al, al
je 0x14005fc6d
movsd xmm0, qword [rbp - 0x50]
movsd qword [rbp + 0x6f0], xmm0
mov eax, dword [rbp - 0x48]
mov dword [rbp + 0x6f8], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x178]
lea rdx, [rbp + 0x6f0]
call fcn.14004bea0
test al, al
je 0x14005fc6d
movsd xmm0, qword [rbp - 0x40]
movsd qword [rbp + 0x700], xmm0
mov eax, dword [rbp - 0x38]
mov dword [rbp + 0x708], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x188]
lea rdx, [rbp + 0x700]
call fcn.14004bea0
test al, al
je 0x14005fc6d
movsd xmm0, qword [rbp - 0x30]
movsd qword [rbp + 0x710], xmm0
mov eax, dword [rbp - 0x28]
mov dword [rbp + 0x718], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x190]
lea rdx, [rbp + 0x710]
call fcn.14004bea0
test al, al
je 0x140060b13
movsd xmm0, qword [rbp - 0x10]
movsd qword [rbp + 0x770], xmm0
mov eax, dword [rbp - 8]
mov dword [rbp + 0x778], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x198]
lea rdx, [rbp + 0x770]
call fcn.14004bea0
test al, al
je 0x140060b13
movsd xmm0, qword [rbp - 0x20]
movsd qword [rbp + 0x720], xmm0
mov eax, dword [rbp - 0x18]
mov dword [rbp + 0x728], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp - 0x78]
lea rdx, [rbp + 0x720]
call fcn.14004bea0
test al, al
je 0x140060b13
mov dword [rsp + 0x20], 0x96
cmp byte [rbp + 0x981], 0
je 0x140060112
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x1d4]
call fcn.14004bdf0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm9, qword [rbp + 0x168]
movq rdx, xmm9
movsd xmm6, qword [rbp + 0x170]
movq rcx, xmm6
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x1d8]
call fcn.14004bdf0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm10, qword [rbp + 0x178]
movq rdx, xmm10
movq rcx, xmm9
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x210]
call fcn.14004bdf0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm8, qword [rbp + 0x1a0]
movq rdx, xmm8
movq rcx, xmm10
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x214]
call fcn.14004bdf0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm8
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x1d0]
call fcn.14004bdf0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm11, qword [rbp + 0x188]
movq rdx, xmm11
movq rcx, xmm6
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x218]
call fcn.14004bdf0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm7, qword [rbp + 0x190]
movq rdx, xmm7
movq rcx, xmm9
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x21c]
call fcn.14004bdf0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm9, qword [rbp + 0x198]
movq rdx, xmm9
movq rcx, xmm8
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x220]
call fcn.14004bdf0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movsd xmm6, qword [rbp - 0x78]
movq rdx, xmm6
movq rcx, xmm10
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x1b8]
call fcn.14004bdf0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movq rdx, xmm7
movq rcx, xmm11
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x780]
call fcn.14004bdf0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm7
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x784]
call fcn.14004bdf0
lea r9d, [rdx + 1]
mov r8d, dword [rax]
movq rdx, xmm9
movq rcx, xmm6
call fcn.14004dd50
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x788]
jmp 0x1400603bd
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x78c]
call fcn.14004bdf0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm9, qword [rbp + 0x168]
movq rdx, xmm9
movsd xmm6, qword [rbp + 0x170]
movq rcx, xmm6
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x790]
call fcn.14004bdf0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm10, qword [rbp + 0x178]
movq rdx, xmm10
movq rcx, xmm9
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x794]
call fcn.14004bdf0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm8, qword [rbp + 0x1a0]
movq rdx, xmm8
movq rcx, xmm10
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x798]
call fcn.14004bdf0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm8
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x7d0]
call fcn.14004bdf0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm11, qword [rbp + 0x188]
movq rdx, xmm11
movq rcx, xmm6
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x7cc]
call fcn.14004bdf0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm7, qword [rbp + 0x190]
movq rdx, xmm7
movq rcx, xmm9
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x654]
call fcn.14004bdf0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm9, qword [rbp + 0x198]
movq rdx, xmm9
movq rcx, xmm8
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x650]
call fcn.14004bdf0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movsd xmm6, qword [rbp - 0x78]
movq rdx, xmm6
movq rcx, xmm10
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x7c8]
call fcn.14004bdf0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movq rdx, xmm7
movq rcx, xmm11
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x7c4]
call fcn.14004bdf0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm7
call fcn.14004dd50
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x7c0]
call fcn.14004bdf0
lea r9d, [r8 - 0x32]
mov r8d, dword [rax]
movq rdx, xmm9
movq rcx, xmm6
call fcn.14004dd50
mov edx, 0xff
lea r9d, [rdx - 0x66]
lea r8d, [r9 - 0x66]
lea rcx, [rbp + 0x7bc]
mov dword [rsp + 0x20], 0x96
call fcn.14004bdf0
mov r9d, 1
mov r8d, dword [rax]
movq rdx, xmm11
movq rcx, xmm9
call fcn.14004dd50
cmp byte [0x1403a70f3], 0
je 0x140060875
cmp byte [rbp + 0x980], 0
je 0x140060875
cmp byte [rbp + 0x982], 0
je 0x140060875
movss xmm0, dword [0x1403a8ffa]
comiss xmm0, xmm12
jbe 0x140060875
cmp qword [rbp + 0x920], 0x16dd
je 0x140060875
movsd xmm6, qword [rbp + 0x996]
mov ebx, dword [rbp + 0x99e]
mov qword [rbp], 0
mov dword [rbp + 8], 0
mov qword [rbp - 0x60], 0
mov dword [rbp - 0x58], 0
mov qword [rbp + 0x30], 0
mov dword [rbp + 0x38], 0
mov qword [rbp + 0x20], 0
mov dword [rbp + 0x28], 0
mov qword [rbp + 0x10], 0
mov dword [rbp + 0x18], 0
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x78], 0
mov qword [rsp + 0x50], 0
lea rax, [rbp + 0x10]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x30]
lea r8, [rbp - 0x60]
lea rdx, [rbp]
lea rcx, [rbp + 0x8b0]
call fcn.14004f910
movss xmm7, dword [0x1403a987c]
movss xmm8, dword [0x1403a9878]
movsd qword [rbp + 0x730], xmm6
mov dword [rbp + 0x738], ebx
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x730]
call fcn.14004bea0
test al, al
je 0x14005f7fc
movsd xmm0, qword [rbp]
movsd qword [rbp + 0x740], xmm0
mov eax, dword [rbp + 8]
mov dword [rbp + 0x748], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rsp + 0x58]
lea rdx, [rbp + 0x740]
call fcn.14004bea0
test al, al
je 0x14005f7fc
movsd xmm0, qword [rbp - 0x60]
movsd qword [rbp + 0x750], xmm0
mov eax, dword [rbp - 0x58]
mov dword [rbp + 0x758], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rsp + 0x70]
lea rdx, [rbp + 0x750]
call fcn.14004bea0
test al, al
je 0x14005f7fc
movsd xmm0, qword [rbp + 0x30]
movsd qword [rbp + 0x760], xmm0
mov eax, dword [rbp + 0x38]
mov dword [rbp + 0x768], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rsp + 0x68]
lea rdx, [rbp + 0x760]
call fcn.14004bea0
test al, al
je 0x14005f7fc
movsd xmm0, qword [rbp + 0x20]
movsd qword [rbp + 0x4d0], xmm0
mov eax, dword [rbp + 0x28]
mov dword [rbp + 0x4d8], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rsp + 0x78]
lea rdx, [rbp + 0x4d0]
call fcn.14004bea0
test al, al
je 0x14005f7fc
movsd xmm0, qword [rbp + 0x10]
movsd qword [rbp + 0x4a0], xmm0
mov eax, dword [rbp + 0x18]
mov dword [rbp + 0x4a8], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rsp + 0x50]
lea rdx, [rbp + 0x4a0]
call fcn.14004bea0
test al, al
je 0x140060b13
mov dword [rsp + 0x20], 0xff
cmp byte [rbp + 0x981], 0
je 0x14006075e
xor r9d, r9d
xor r8d, r8d
mov edx, 0xff
lea rcx, [rbp + 0x7b8]
call fcn.14004bdf0
lea r9d, [r8 + 3]
mov r8d, dword [rax]
movsd xmm6, qword [rsp + 0x58]
movq rdx, xmm6
mov rcx, qword [rsp + 0x60]
call fcn.14004dd50
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, 0x66
lea r8d, [r9 - 0x33]
lea rcx, [rbp + 0x7b4]
call fcn.14004bdf0
lea r9d, [r8 - 0x30]
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x70]
movq rcx, xmm6
call fcn.14004dd50
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, 0x66
lea r8d, [r9 - 0x33]
lea rcx, [rbp + 0x7b0]
call fcn.14004bdf0
lea r9d, [r8 - 0x30]
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x68]
movq rcx, xmm6
call fcn.14004dd50
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, 0x66
lea r8d, [r9 - 0x33]
lea rcx, [rbp + 0x658]
call fcn.14004bdf0
lea r9d, [r8 - 0x30]
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x78]
movq rcx, xmm6
call fcn.14004dd50
mov edx, 0xff
mov r9d, 0x66
lea r8d, [r9 - 0x33]
lea rcx, [rbp + 0x7a8]
jmp 0x140060850
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x7a4]
call fcn.14004bdf0
lea r9d, [rdx - 0x63]
mov r8d, dword [rax]
movsd xmm6, qword [rsp + 0x58]
movq rdx, xmm6
mov rcx, qword [rsp + 0x60]
call fcn.14004dd50
mov dword [rsp + 0x20], 0xff
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x7a0]
call fcn.14004bdf0
lea r9d, [rdx - 0x63]
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x70]
movq rcx, xmm6
call fcn.14004dd50
mov dword [rsp + 0x20], 0xff
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x79c]
call fcn.14004bdf0
lea r9d, [rdx - 0x63]
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x68]
movq rcx, xmm6
call fcn.14004dd50
mov dword [rsp + 0x20], 0xff
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x58]
call fcn.14004bdf0
lea r9d, [rdx - 0x63]
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x78]
movq rcx, xmm6
call fcn.14004dd50
mov edx, 0x66
mov r9d, 0xff
lea r8d, [rdx + 0x33]
lea rcx, [rbp + 0x50]
mov dword [rsp + 0x20], 0xff
call fcn.14004bdf0
mov r9d, 3
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x50]
movq rcx, xmm6
call fcn.14004dd50
cmp byte [0x1403a714a], 0
je 0x14005f7fc
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x1400608c6
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x1400608c6
mov ecx, 6
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x1400608c6
mov ecx, 5
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x14005f7fc
mov qword [rbp - 0x80], 0
movss xmm1, dword [0x1403a9878]
movsd xmm0, qword [rbp + 0x9d2]
movsd qword [rbp + 0x4c0], xmm0
mov eax, dword [rbp + 0x9da]
mov dword [rbp + 0x4c8], eax
movss xmm0, dword [0x1403a987c]
unpcklps xmm0, xmm1
movq r9, xmm0
lea r8, [rbp - 0x80]
lea rdx, [rbp + 0x4c0]
call fcn.14004bea0
test al, al
je 0x14005f7fc
mov eax, dword [0x1403a97f8]
test eax, eax
jne 0x140060a23
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x66666667
imul r8d
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
shl ecx, 2
sub r8d, ecx
mov dword [0x1403a97f0], r8d
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x66666667
imul r8d
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
add ecx, ecx
sub r8d, ecx
mov dword [0x1403a97d0], r8d
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x88888889
imul r8d
add edx, r8d
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x1e
sub r8d, ecx
movd xmm0, r8d
cvtdq2ps xmm0, xmm0
movss dword [0x1403a97e0], xmm0
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x66666667
imul r8d
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
add ecx, ecx
sub r8d, ecx
mov dword [0x1403a9838], r8d
cmp r8d, 5
jl 0x1400609e7
neg dword [0x1403a97f0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x66666667
imul r8d
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
add ecx, ecx
sub r8d, ecx
mov dword [0x1403a9838], r8d
mov eax, dword [0x1403a97f8]
cmp r8d, 5
jl 0x140060a23
neg dword [0x1403a97d0]
inc eax
mov dword [0x1403a97f8], eax
cmp eax, 0xe
jne 0x140060a37
mov dword [0x1403a97f8], r14d
cmp byte [rbp + 0x980], 0
je 0x14005f7fc
cmp byte [rbp + 0x981], 0
je 0x14005f7fc
cmp qword [0x1403a8f50], 0
je 0x14005f7fc
cmp byte [rbp + 0x982], 0
je 0x14005f7fc
movd xmm1, dword [0x1403a97d0]
cvtdq2ps xmm1, xmm1
addss xmm1, dword [rbp - 0x7c]
movd xmm0, dword [0x1403a97f0]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [rbp - 0x80]
movss dword [rbp + 0x1c8], xmm0
movss dword [rbp + 0x1cc], xmm1
movss xmm2, dword [0x1403a97e0]
comiss xmm12, xmm2
jae 0x14005f7fc
subss xmm2, xmm13
mov dword [rsp + 0x28], 0x1ff
movss xmm0, dword [0x14039d594]
movss dword [rsp + 0x20], xmm0
xorps xmm3, xmm3
lea rdx, [rbp + 0x1c8]
mov rcx, rdi
call fcn.140023510
movss xmm0, dword [0x14039d53c]
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 1
mov r9d, 0xffffffff
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.140021b30
mov dword [rdi + 0x78], r14d
jmp 0x14005f7fc
lea rcx, [rbp + 0x8b0]
call fcn.140050d40
movsd xmm10, qword [0x14039d518]
movss xmm8, dword [0x14039d660]
add r13, 0x12e
cmp r13, rsi
je 0x140060bc2
movss xmm13, dword [0x14039d404]
mov ebx, dword [rbp - 0x70]
jmp 0x14005c350
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
movzx r8d, byte [0x1403a97f5]
jmp 0x140060bd5
movss xmm13, dword [0x14039d404]
test r8b, r8b
je 0x140060bea
call fcn.14005a0f0
jmp 0x140060bea
movss xmm13, dword [0x14039d404]
cmp byte [0x1403a9844], 0
je 0x140060d84
movss xmm0, dword [0x1403a8f08]
movss dword [rbp + 0x60], xmm0
movss xmm1, dword [0x1403a8f0c]
movss dword [rbp + 0x64], xmm1
movss xmm0, dword [0x1403a8f10]
movss dword [rbp + 0x68], xmm0
movss xmm1, dword [0x1403a8f14]
mov r8, qword [0x1403a97b0]
mulss xmm1, dword [r8 + 0x3778]
movss dword [rbp + 0x6c], xmm1
lea rcx, [rbp + 0x60]
call fcn.140003560
mov ebx, eax
xorps xmm6, xmm6
movss xmm8, dword [0x14039d594]
test eax, 0xff000000
je 0x140060cc5
movss xmm2, dword [0x1403a7124]
comiss xmm6, xmm2
jae 0x140060cc5
subss xmm2, xmm13
mov dword [rsp + 0x28], 0x1ff
movss dword [rsp + 0x20], xmm8
xorps xmm3, xmm3
lea rdx, [rbp + 0x1c0]
mov rcx, rdi
call fcn.140023510
movss xmm7, dword [0x14039d474]
movss dword [rsp + 0x28], xmm7
mov dword [rsp + 0x20], 1
mov r9d, ebx
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.140021b30
mov dword [rdi + 0x78], r14d
mov r8, qword [0x1403a97b0]
jmp 0x140060ccd
movss xmm7, dword [0x14039d474]
cmp byte [0x1403a9823], 0
je 0x140060d84
movss xmm0, dword [0x1403a8ed8]
movss dword [rbp + 0x60], xmm0
movss xmm1, dword [0x1403a8edc]
movss dword [rbp + 0x64], xmm1
movss xmm0, dword [0x1403a8ee0]
movss dword [rbp + 0x68], xmm0
movss xmm1, dword [0x1403a8ee4]
mulss xmm1, dword [r8 + 0x3778]
movss dword [rbp + 0x6c], xmm1
lea rcx, [rbp + 0x60]
call fcn.140003560
mov ebx, eax
test eax, 0xff000000
je 0x140060d84
movss xmm2, dword [0x1403a718c]
comiss xmm6, xmm2
jae 0x140060d84
subss xmm2, xmm13
mov dword [rsp + 0x28], 0x1ff
movss dword [rsp + 0x20], xmm8
xorps xmm3, xmm3
lea rdx, [rbp + 0x1c0]
mov rcx, rdi
call fcn.140023510
movss dword [rsp + 0x28], xmm7
mov dword [rsp + 0x20], 1
mov r9d, ebx
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.140021b30
mov dword [rdi + 0x78], r14d
mov rcx, qword [rbp + 0xc10]
xor rcx, rsp
call fcn.140075fa0
lea r11, [rsp + 0xdc0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140046a00
nop
call fcn.14002f2a0
int3