Function at 0x14005b200
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xfc0]
mov eax, 0x10c0
call fcn.140076f70
sub rsp, rax
movaps xmmword [rsp + 0x10b0], xmm6
movaps xmmword [rsp + 0x10a0], xmm7
movaps xmmword [rsp + 0x1090], xmm8
movaps xmmword [rsp + 0x1080], xmm9
movaps xmmword [rsp + 0x1070], xmm10
movaps xmmword [rsp + 0x1060], xmm11
movaps xmmword [rsp + 0x1050], xmm12
movaps xmmword [rsp + 0x1040], xmm13
movaps xmmword [rsp + 0x1030], xmm14
movaps xmmword [rsp + 0x1020], xmm15
mov rax, qword [0x1403a7040]
xor rax, rsp
mov qword [rbp + 0xf18], rax
xor r14d, r14d
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.140005b90
mov rdi, rax
movss xmm10, dword [0x1403b0b68]
movaps xmm1, xmm10
movss xmm14, dword [0x14039c9e4]
mulss xmm1, xmm14
movss xmm7, dword [0x1403b0b6c]
movaps xmm0, xmm7
mulss xmm0, xmm14
movss dword [rbp + 0x1d8], xmm0
movss dword [rbp + 0x1dc], xmm1
lea r12, str._DIST
cmp byte [0x1403b0b02], r14b
je 0x14005bb03
mov rbx, qword [0x1403b0d18]
mov rsi, qword [0x1403b0d20]
cmp rbx, rsi
je 0x14005bb03
movabs r15, 0x400000000002533
nop
movsd xmm0, qword [rbx + 0x10]
movsd qword [rbp + 0x7c0], xmm0
cmp qword [rbx], r15
je 0x14005baf6
mov qword [rbp - 0x68], 0
mov qword [rbp - 0x70], 0
mov qword [rbp - 0x78], 0
mov qword [rbp - 0x80], 0
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x78], 0
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x50], 0
movss xmm8, dword [rbp + 0x7c0]
movss xmm9, dword [rbp + 0x7c4]
movaps xmm1, xmm9
addss xmm1, xmm14
movss xmm12, dword [rbx + 0x18]
movaps xmm0, xmm8
unpcklps xmm0, xmm1
movsd qword [rbp + 0x150], xmm0
movss dword [rbp + 0x158], xmm12
movaps xmm0, xmm7
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rsp + 0x50]
lea rdx, [rbp + 0x150]
call fcn.14004aa70
test al, al
je 0x14005baf6
movaps xmm13, xmm8
subss xmm13, xmm14
movaps xmm6, xmm12
subss xmm6, xmm14
movaps xmm0, xmm13
unpcklps xmm0, xmm9
movsd qword [rbp + 0x160], xmm0
movss dword [rbp + 0x168], xmm6
movaps xmm0, xmm7
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rbp - 0x68]
lea rdx, [rbp + 0x160]
call fcn.14004aa70
test al, al
je 0x14005baf6
movaps xmm0, xmm13
unpcklps xmm0, xmm9
movsd qword [rbp + 0x170], xmm0
movss dword [rbp + 0x178], xmm6
movaps xmm0, xmm7
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rbp - 0x68]
lea rdx, [rbp + 0x170]
call fcn.14004aa70
test al, al
je 0x14005baf6
movaps xmm11, xmm12
addss xmm11, xmm14
movaps xmm0, xmm13
unpcklps xmm0, xmm9
movsd qword [rbp + 0x140], xmm0
movss dword [rbp + 0x148], xmm11
movaps xmm0, xmm7
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rbp - 0x70]
lea rdx, [rbp + 0x140]
call fcn.14004aa70
test al, al
je 0x14005baf6
movaps xmm15, xmm8
addss xmm15, xmm14
movaps xmm0, xmm15
unpcklps xmm0, xmm9
movsd qword [rbp - 0x40], xmm0
movss dword [rbp - 0x38], xmm6
movaps xmm0, xmm7
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rbp - 0x78]
lea rdx, [rbp - 0x40]
call fcn.14004aa70
test al, al
je 0x14005baf6
movaps xmm0, xmm15
unpcklps xmm0, xmm9
movsd qword [rbp - 0x30], xmm0
movss dword [rbp - 0x28], xmm11
movaps xmm0, xmm7
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rbp - 0x80]
lea rdx, [rbp - 0x30]
call fcn.14004aa70
test al, al
je 0x14005baf6
movaps xmm14, xmm9
addss xmm14, dword [0x14039ca54]
movaps xmm0, xmm13
unpcklps xmm0, xmm14
movsd qword [rbp - 0x20], xmm0
movss dword [rbp - 0x18], xmm6
movaps xmm0, xmm7
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rsp + 0x60]
lea rdx, [rbp - 0x20]
call fcn.14004aa70
test al, al
je 0x14005baed
movaps xmm0, xmm13
unpcklps xmm0, xmm14
movsd qword [rbp - 0x10], xmm0
movss dword [rbp - 8], xmm11
movaps xmm0, xmm7
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rsp + 0x78]
lea rdx, [rbp - 0x10]
call fcn.14004aa70
test al, al
je 0x14005baed
movaps xmm0, xmm15
unpcklps xmm0, xmm14
movsd qword [rbp], xmm0
movss dword [rbp + 8], xmm6
movaps xmm0, xmm7
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rsp + 0x70]
lea rdx, [rbp]
call fcn.14004aa70
test al, al
je 0x14005baed
movaps xmm0, xmm15
unpcklps xmm0, xmm14
movsd qword [rbp - 0x50], xmm0
movss dword [rbp - 0x48], xmm11
movaps xmm0, xmm7
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rsp + 0x68]
lea rdx, [rbp - 0x50]
call fcn.14004aa70
test al, al
je 0x14005baed
lea rdx, [rbp + 0x9e0]
call fcn.14004a9e0
movss xmm7, dword [rax + 8]
lea rdx, [rbp + 0x9ec]
call fcn.14004a9e0
movss xmm6, dword [rax + 4]
lea rdx, [rbp + 0x9f8]
call fcn.14004a9e0
subss xmm12, xmm7
subss xmm9, xmm6
subss xmm8, dword [rax]
mulss xmm8, xmm8
mulss xmm9, xmm9
addss xmm8, xmm9
mulss xmm12, xmm12
addss xmm8, xmm12
xorps xmm0, xmm0
ucomiss xmm0, xmm8
ja 0x14005b67a
xorps xmm9, xmm9
sqrtss xmm9, xmm8
jmp 0x14005b687
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm9, xmm0
movss xmm11, dword [0x14039ca54]
movss dword [rsp + 0x20], xmm11
movss xmm15, dword [0x14039c9b0]
movaps xmm3, xmm15
xorps xmm2, xmm2
movaps xmm1, xmm11
lea rcx, [rbp + 0xb20]
call fcn.140001250
mov rcx, rax
call fcn.1400038b0
movss xmm7, dword [rsp + 0x54]
movaps xmm0, xmm7
subss xmm0, dword [0x14039cb8c]
movss xmm6, dword [rsp + 0x50]
subss xmm6, dword [0x14039cb60]
movss dword [rbp + 0x328], xmm6
movss dword [rbp + 0x32c], xmm0
movss xmm12, dword [0x14039cba8]
movaps xmm3, xmm12
lea r8, str.HP_PACK
mov edx, eax
lea rcx, [rbp + 0x328]
call fcn.14004bf10
cvttss2si edx, xmm9
lea rcx, [rbp + 0xe60]
call fcn.14004a4b0
nop
mov r8, rax
mov rdx, r12
lea rcx, [rbp + 0xe40]
call fcn.140073bc0
nop
lea r8, [0x14039ab20]
mov rdx, rax
lea rcx, [rbp + 0xe20]
call fcn.140073cf0
nop
mov rcx, rax
call fcn.140072800
mov r8, rax
movss dword [rsp + 0x20], xmm11
movaps xmm3, xmm15
xorps xmm2, xmm2
movaps xmm1, xmm11
lea rcx, [rbp + 0xac0]
call fcn.140001250
mov rcx, rax
call fcn.1400038b0
addss xmm7, dword [0x14039cb8c]
movss dword [rbp + 0x330], xmm6
movss dword [rbp + 0x334], xmm7
movaps xmm3, xmm12
mov edx, eax
lea rcx, [rbp + 0x330]
call fcn.14004bf10
nop
lea rcx, [rbp + 0xe20]
call fcn.140072810
nop
lea rcx, [rbp + 0xe40]
call fcn.140072810
nop
lea rcx, [rbp + 0xe60]
call fcn.140072810
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
mov r8d, 0x99
lea rcx, [rbp + 0x63c]
call fcn.14004a9c0
mov r9d, 2
mov r8d, dword [rax]
movsd xmm13, qword [rbp - 0x70]
movq rdx, xmm13
movsd xmm10, qword [rbp - 0x68]
movq rcx, xmm10
call fcn.14004caa0
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
mov r8d, 0x99
lea rcx, [rbp + 0x640]
call fcn.14004a9c0
mov r9d, 2
mov r8d, dword [rax]
movsd xmm12, qword [rbp - 0x78]
movq rdx, xmm12
movq rcx, xmm10
call fcn.14004caa0
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
mov r8d, 0x99
lea rcx, [rbp + 0x644]
call fcn.14004a9c0
mov r9d, 2
mov r8d, dword [rax]
movsd xmm11, qword [rbp - 0x80]
movq rdx, xmm11
movq rcx, xmm13
call fcn.14004caa0
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
mov r8d, 0x99
lea rcx, [rbp + 0x648]
call fcn.14004a9c0
mov r9d, 2
mov r8d, dword [rax]
movq rdx, xmm11
movq rcx, xmm12
call fcn.14004caa0
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
mov r8d, 0x99
lea rcx, [rbp + 0x64c]
call fcn.14004a9c0
mov r9d, 2
mov r8d, dword [rax]
movsd xmm9, qword [rsp + 0x78]
movq rdx, xmm9
movsd xmm6, qword [rsp + 0x60]
movq rcx, xmm6
call fcn.14004caa0
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
mov r8d, 0x99
lea rcx, [rbp + 0x650]
call fcn.14004a9c0
mov r9d, 2
mov r8d, dword [rax]
movsd xmm8, qword [rsp + 0x70]
movq rdx, xmm8
movq rcx, xmm6
call fcn.14004caa0
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
mov r8d, 0x99
lea rcx, [rbp + 0x654]
call fcn.14004a9c0
mov r9d, 2
mov r8d, dword [rax]
movsd xmm7, qword [rsp + 0x68]
movq rdx, xmm7
movq rcx, xmm9
call fcn.14004caa0
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
mov r8d, 0x99
lea rcx, [rbp + 0x658]
call fcn.14004a9c0
mov r9d, 2
mov r8d, dword [rax]
movq rdx, xmm7
movq rcx, xmm8
call fcn.14004caa0
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
mov r8d, 0x99
lea rcx, [rbp + 0x660]
call fcn.14004a9c0
mov r9d, 2
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm10
call fcn.14004caa0
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
mov r8d, 0x99
lea rcx, [rbp + 0x664]
call fcn.14004a9c0
mov r9d, 2
mov r8d, dword [rax]
movq rdx, xmm9
movq rcx, xmm13
call fcn.14004caa0
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
mov r8d, 0x99
lea rcx, [rbp + 0x638]
call fcn.14004a9c0
mov r9d, 2
mov r8d, dword [rax]
movq rdx, xmm8
movq rcx, xmm12
call fcn.14004caa0
mov dword [rsp + 0x20], 0x64
mov edx, 0x66
mov r9d, 0xff
mov r8d, 0x99
lea rcx, [rbp + 0x668]
call fcn.14004a9c0
mov r9d, 2
mov r8d, dword [rax]
movq rdx, xmm7
movq rcx, xmm11
call fcn.14004caa0
movss xmm10, dword [0x1403b0b68]
movss xmm7, dword [0x1403b0b6c]
movss xmm14, dword [0x14039c9e4]
add rbx, 0x1c
cmp rbx, rsi
jne 0x14005b330
movzx r8d, byte [0x1403b0adc]
cmp byte [0x1403b0b2e], 0
jne 0x14005bb5c
cmp byte [0x1403b0b04], 0
jne 0x14005bb5c
test r8b, r8b
jne 0x14005bb5c
cmp byte [0x1403b0acf], r8b
jne 0x14005bb5c
cmp byte [0x1403b0af7], r8b
jne 0x14005bb5c
cmp byte [0x1403b0b38], r8b
jne 0x14005bb5c
cmp byte [0x1403b0b16], r8b
jne 0x14005bb5c
cmp byte [0x1403a70e3], r8b
jne 0x14005bb5c
cmp byte [0x1403a713a], r8b
je 0x1400603ea
mov rsi, qword [0x1403b0d40]
mov qword [rbp + 0x368], rsi
mov r13, qword [0x1403b0d38]
mov rcx, rsi
sub rcx, r13
movabs rax, 0x6c80d901b2036407
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x1400603d5
mov ebx, r14d
mov dword [rbp - 0x68], ebx
cmp r13, rsi
je 0x1400603d5
lea r15, str._NAME
movss xmm8, dword [0x14039cc40]
movsd xmm10, qword [0x14039caf8]
movss xmm15, dword [0x14039cb70]
movss xmm13, dword [0x14039cc2c]
mov rdx, r13
lea rcx, [rbp + 0xb30]
call fcn.140059670
nop
cmp byte [0x1403b0b16], 0
je 0x14005c34e
test ebx, ebx
jne 0x14005bdba
movss xmm1, dword [0x1403b0b68]
subss xmm1, xmm8
movss xmm0, dword [0x1403b0b6c]
subss xmm0, xmm13
movss dword [rbp + 0x338], xmm0
movss dword [rbp + 0x33c], xmm1
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movaps xmm2, xmm13
lea rdx, [rbp + 0x338]
mov rcx, rdi
call fcn.1400229b0
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.140022400
mov dword [rdi + 0x78], r14d
cmp byte [0x1403b0b2a], bl
je 0x14005bc75
movss xmm0, dword [0x1403a70f0]
jmp 0x14005bc8c
mov rcx, qword [0x1403b0d30]
mov rdx, qword [rcx + 0x21]
add rdx, 0x3550bb8
call fcn.140072e90
mulss xmm0, xmm14
mulss xmm0, dword [0x14039c97c]
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
movaps xmm6, xmm0
mulss xmm6, xmm13
movaps xmm1, xmm6
mulss xmm1, xmm6
movss xmm0, dword [0x14039cc84]
subss xmm0, xmm1
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x14005bcca
xorps xmm7, xmm7
sqrtss xmm7, xmm0
jmp 0x14005bcd2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm7, xmm0
movss xmm4, dword [0x1403b0b68]
subss xmm4, xmm8
movaps xmm2, xmm4
subss xmm2, xmm6
movss xmm3, dword [0x1403b0b6c]
subss xmm3, xmm13
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.14004caa0
movss xmm3, dword [0x1403b0b68]
subss xmm3, xmm8
movaps xmm1, xmm3
subss xmm1, xmm6
movss xmm2, dword [0x1403b0b6c]
subss xmm2, xmm13
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.14004caa0
movss xmm3, dword [0x1403b0b68]
subss xmm3, xmm8
movaps xmm1, xmm3
subss xmm1, xmm13
movss xmm2, dword [0x1403b0b6c]
subss xmm2, xmm13
mov r8d, 0xffff78
mov r9d, 1
movaps xmm0, xmm2
unpcklps xmm0, xmm1
movq rdx, xmm0
movaps xmm0, xmm2
unpcklps xmm0, xmm3
movq rcx, xmm0
call fcn.14004caa0
mov dword [rbp - 0x68], 1
mov rax, qword [0x1403b0230]
cmp qword [rbp + 0xb30], rax
jne 0x14005be8d
movss xmm1, dword [0x1403b0b68]
subss xmm1, xmm8
movss xmm0, dword [0x1403b0b6c]
subss xmm0, xmm13
movss dword [rbp + 0x340], xmm0
movss dword [rbp + 0x344], xmm1
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movss xmm2, dword [0x14039cb58]
lea rdx, [rbp + 0x340]
mov rcx, rdi
call fcn.1400229b0
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.140022400
mov dword [rdi + 0x78], r14d
mov rdx, qword [rbp + 0xbd2]
cmp rdx, 0xf
jbe 0x14005be7f
inc rdx
mov rcx, qword [rbp + 0xbba]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005be7a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400603c4
call fcn.140075c30
movss xmm13, dword [0x14039c9e4]
jmp 0x140060348
xorps xmm12, xmm12
ucomiss xmm12, dword [rbp + 0xc3a]
jp 0x14005beb9
jne 0x14005beb9
ucomiss xmm12, dword [rbp + 0xc3e]
jp 0x14005beb9
jne 0x14005beb9
ucomiss xmm12, dword [rbp + 0xc42]
jp 0x14005beb9
je 0x14005c352
movss xmm0, dword [rbp + 0xbda]
comiss xmm0, xmm12
jbe 0x14005c352
movss xmm0, dword [0x1403b032e]
call fcn.14004a850
xor ecx, ecx
call fcn.14004a570
movaps xmm12, xmm3
movaps xmm15, xmm2
movaps xmm8, xmm1
movaps xmmword [rbp + 0x950], xmm1
movaps xmm9, xmm0
lea rdx, [rbp + 0xa04]
call fcn.14004a9e0
movss xmm7, dword [rbp + 0xc16]
subss xmm7, dword [rax]
lea rdx, [rbp + 0xa10]
call fcn.14004a9e0
movss xmm6, dword [rbp + 0xc1a]
subss xmm6, dword [rax + 4]
lea rdx, [rbp + 0xa1c]
call fcn.14004a9e0
movss xmm4, dword [rbp + 0xc1e]
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 [rsp + 0x58], 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 [rsp + 0x50], xmm6
movaps xmm0, xmm6
mulss xmm0, xmm6
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x14005bfd8
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x14005bfe0
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm0, xmm13
jbe 0x14005bff8
divss xmm6, xmm0
mulss xmm6, xmm13
divss xmm7, xmm0
mulss xmm7, xmm13
movss xmm11, dword [0x1403b0b68]
subss xmm11, dword [0x14039cc40]
subss xmm11, xmm7
movss xmm10, dword [0x1403b0b6c]
subss xmm10, xmm13
subss xmm10, xmm6
movss dword [rbp + 0x1c0], xmm10
movss dword [rbp + 0x1c4], xmm11
mov qword [rbp - 0x50], 0
mov dword [rbp - 0x48], 0
mov qword [rbp + 0x150], 0
mov dword [rbp + 0x158], 0
mov qword [rbp + 0x160], 0
mov dword [rbp + 0x168], 0
mov qword [rbp + 0x170], 0
mov dword [rbp + 0x178], 0
mov qword [rbp + 0x140], 0
mov dword [rbp + 0x148], 0
lea rax, [rbp + 0x140]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x170]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x160]
lea r8, [rbp + 0x150]
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0xb30]
call fcn.14004de60
movss xmm6, dword [rbp - 0x50]
movaps xmm8, xmm6
subss xmm8, dword [rbp + 0xc16]
lea rdx, [rbp + 0xa28]
call fcn.14004a9e0
mulss xmm8, dword [0x14039cb58]
addss xmm8, xmm6
subss xmm8, dword [rax]
lea rdx, [rbp + 0xa34]
call fcn.14004a9e0
movss xmm7, dword [rbp - 0x4c]
subss xmm7, dword [rax + 4]
movss xmm0, dword [rbp - 0x48]
movaps xmm6, xmm0
subss xmm6, dword [rbp + 0xc1e]
mulss xmm6, dword [0x14039cb58]
addss xmm6, xmm0
lea rdx, [rbp + 0xa40]
call fcn.14004a9e0
subss xmm6, dword [rax + 8]
cvtps2pd xmm0, xmm8
movsd xmm4, qword [0x14039caf8]
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 [rsp + 0x58], 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 + 0x950]
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 [rsp + 0x50], xmm9
movaps xmm1, xmm9
mulss xmm1, xmm9
movaps xmm0, xmm6
mulss xmm0, xmm6
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x14005c1e3
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x14005c1eb
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss xmm1, dword [0x14039cc28]
comiss xmm0, xmm1
jbe 0x14005c20a
divss xmm9, xmm0
mulss xmm9, xmm1
divss xmm6, xmm0
mulss xmm6, xmm1
movss xmm7, dword [0x1403b0b68]
movss xmm8, dword [0x14039cc40]
subss xmm7, xmm8
subss xmm7, xmm6
movss xmm6, dword [0x1403b0b6c]
subss xmm6, xmm13
subss xmm6, xmm9
mov ebx, 0xff9900cc
cmp byte [rbp + 0xc01], 0
mov eax, 0xff3300ff
cmovne ebx, eax
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movss xmm2, dword [0x14039cb30]
lea rdx, [rbp + 0x1c0]
mov rcx, rdi
cmp byte [rbp + 0xc02], r9b
jne 0x14005c29e
call fcn.1400229b0
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.140022400
mov dword [rdi + 0x78], r14d
jmp 0x14005c345
call fcn.1400229b0
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.140022400
mov dword [rdi + 0x78], r14d
mov r8d, 0xffff
mov r9d, 2
movaps xmm0, xmm10
unpcklps xmm0, xmm11
movq rdx, xmm0
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq rcx, xmm0
call fcn.14004caa0
cmp byte [0x1403b0b08], 0
je 0x14005c345
movss xmm3, dword [0x1403b0b68]
movss xmm2, dword [0x1403b0b6c]
mov r9d, 1
movaps xmm0, xmm10
subss xmm3, xmm8
subss xmm2, xmm13
unpcklps xmm0, xmm11
unpcklps xmm2, xmm3
movq rdx, xmm0
movq rcx, xmm2
cmp byte [rbp + 0xc01], 0
mov r8d, 0xffdaa096
jne 0x14005c340
mov r8d, 0x6666cc96
call fcn.14004caa0
movss xmm15, dword [0x14039cb70]
xorps xmm12, xmm12
cmp byte [0x1403b0b2e], 0
je 0x14005d660
cmp byte [rbp + 0xc00], 0
je 0x14005d660
cmp byte [rbp + 0xc02], 0
je 0x14005d660
movss xmm0, dword [0x1403b02da]
comiss xmm0, xmm12
jbe 0x14005d660
movss xmm10, dword [rbp + 0xc16]
movss xmm8, dword [rbp + 0xc1a]
movss xmm9, dword [rbp + 0xc1e]
lea rdx, [rbp + 0xa4c]
call fcn.14004a9e0
movss xmm7, dword [rax + 8]
lea rdx, [rbp + 0xa58]
call fcn.14004a9e0
movss xmm6, dword [rax + 4]
lea rdx, [rbp + 0xa64]
call fcn.14004a9e0
movaps xmm1, xmm9
subss xmm1, xmm7
movaps xmm0, xmm8
subss xmm0, xmm6
movaps xmm2, xmm10
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 0x14005c413
xorps xmm13, xmm13
sqrtss xmm13, xmm2
jmp 0x14005c41f
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm13, xmm0
mov qword [rbp + 0x108], 0
mov qword [rbp + 0x110], 0
movss xmm2, dword [0x1403b0b68]
movaps xmm1, xmm8
subss xmm1, dword [0x14039ca90]
movaps xmm0, xmm10
unpcklps xmm0, xmm1
movsd qword [rbp + 0x770], xmm0
movss dword [rbp + 0x778], xmm9
movss xmm0, dword [0x1403b0b6c]
unpcklps xmm0, xmm2
movq r9, xmm0
lea r8, [rbp + 0x108]
lea rdx, [rbp + 0x770]
call fcn.14004aa70
test al, al
jne 0x14005c4d7
mov rdx, qword [rbp + 0xbd2]
cmp rdx, 0xf
jbe 0x14005c4c9
inc rdx
mov rcx, qword [rbp + 0xbba]
cmp rdx, 0x1000
mov rax, rcx
jb 0x14005c4c4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400603c4
call fcn.140075c30
movss xmm13, dword [0x14039c9e4]
jmp 0x140060336
movss xmm2, dword [0x1403b0b68]
addss xmm8, dword [0x14039ca54]
movaps xmm0, xmm10
unpcklps xmm0, xmm8
movsd qword [rbp + 0x780], xmm0
movss dword [rbp + 0x788], xmm9
movss xmm0, dword [0x1403b0b6c]
unpcklps xmm0, xmm2
movq r9, xmm0
lea r8, [rbp + 0x110]
lea rdx, [rbp + 0x780]
call fcn.14004aa70
test al, al
je 0x14005c488
movss xmm10, dword [rbp + 0x10c]
movaps xmm1, xmm10
movss xmm11, dword [rbp + 0x114]
subss xmm1, xmm11
andps xmm1, xmmword [0x14039d3b0]
cvtps2pd xmm0, xmm1
mulsd xmm0, qword [0x14039cad0]
cvtpd2ps xmm8, xmm0
mulss xmm1, xmm14
mulss xmm1, xmm14
movss xmm0, dword [0x14039cba8]
maxss xmm0, xmm1
movss xmm2, dword [0x14039cbb8]
movaps xmm6, xmm2
minss xmm6, xmm0
movss xmm7, dword [rbp + 0x108]
cmp byte [0x1403a70e2], 0
je 0x14005c84e
mov r15, qword [rbp + 0xbca]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r15
cmp rax, 6
jb 0x1400605f5
lea r12, [rbp + 0xbba]
cmp qword [rbp + 0xbd2], 0xf
cmova r12, qword [rbp + 0xbba]
xorps xmm0, xmm0
movups xmmword [rbp + 0xc80], xmm0
mov qword [rbp + 0xc90], r14
mov qword [rbp + 0xc98], r14
lea r14, [r15 + 6]
mov ebx, 0xf
lea rsi, [rbp + 0xc80]
cmp r14, rbx
jbe 0x14005c67a
mov rbx, r14
or rbx, 0xf
cmp rbx, rcx
jbe 0x14005c61c
mov rbx, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x14005c64c
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x14005c636
xor esi, esi
jmp 0x14005c673
cmp rcx, 0x1000
jb 0x14005c66b
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400605fb
mov rcx, rax
call fcn.140076064
test rax, rax
je 0x1400603bd
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x14005c673
call fcn.140076064
mov rsi, rax
mov qword [rbp + 0xc80], rsi
mov qword [rbp + 0xc90], r14
mov qword [rbp + 0xc98], rbx
mov ecx, dword [str._ID]
mov dword [rsi], ecx
movzx ecx, word [0x14039b8e8]
mov word [rsi + 4], cx
lea rcx, [rsi + 6]
mov r8, r15
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsi + r14], 0
mov r8d, 1
lea rdx, [0x14039ab20]
lea rcx, [rbp + 0xc80]
call fcn.140072c10
xorps xmm0, xmm0
movups xmmword [rbp + 0xc60], xmm0
xor r14d, r14d
mov qword [rbp + 0xc70], r14
mov qword [rbp + 0xc78], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xc60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xc70], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], r14b
lea r8, [rbp + 0xc60]
cmp qword [rbp + 0xc78], 0xf
cmova r8, qword [rbp + 0xc60]
movdqa xmm0, xmmword [0x14039d2f0]
mov rax, qword [0x1403b0a80]
movups xmmword [rsp + 0x50], xmm0
movss xmm0, dword [rax + 0x3778]
movss dword [rsp + 0x5c], xmm0
lea rcx, [rsp + 0x50]
call fcn.1400033a0
movaps xmm2, xmm11
subss xmm2, xmm6
movaps xmm1, xmm8
divss xmm1, xmm15
movaps xmm0, xmm7
subss xmm0, xmm1
movss dword [rbp + 0x348], xmm0
movss dword [rbp + 0x34c], xmm2
movaps xmm3, xmm6
mov edx, eax
lea rcx, [rbp + 0x348]
call fcn.14004bf10
nop
mov rdx, qword [rbp + 0xc78]
cmp rdx, 0xf
jbe 0x14005c7c5
inc rdx
mov rcx, qword [rbp + 0xc60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005c7c0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006037e
call fcn.140075c30
mov qword [rbp + 0xc70], r14
mov qword [rbp + 0xc78], 0xf
mov byte [rbp + 0xc60], 0
mov rdx, qword [rbp + 0xc98]
cmp rdx, 0xf
jbe 0x14005c81f
inc rdx
mov rcx, qword [rbp + 0xc80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005c81a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400603bd
call fcn.140075c30
mov qword [rbp + 0xc90], r14
mov qword [rbp + 0xc98], 0xf
mov byte [rbp + 0xc80], 0
movss xmm2, dword [0x14039cbb8]
lea r12, str._DIST
lea r15, str._NAME
movss xmm9, dword [rbp + 0x110]
cmp byte [0x1403a70e0], 0
je 0x14005c8a4
cvttss2si eax, dword [rbp + 0xbde]
cvttss2si ecx, dword [rbp + 0xbda]
movss xmm0, dword [rbp + 0xc06]
mulss xmm0, dword [0x14039ca74]
cvttss2si r8d, xmm0
movaps xmm1, xmm11
subss xmm1, xmm2
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
mov r9d, 0x7d
movaps xmm0, xmm9
call fcn.14004af50
cmp byte [0x1403b0add], 0
je 0x14005cc49
cvttss2si r8d, dword [rbp + 0xbda]
lea r9, [rbp + 0xf15]
test r8d, r8d
jns 0x14005c910
neg r8d
nop dword [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 0x14005c8d0
dec r9
mov byte [r9], 0x2d
jmp 0x14005c93a
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 0x14005c910
lea r8, [rbp + 0xf15]
mov rdx, r9
lea rcx, [rbp + 0xcc0]
call fcn.140074980
nop
mov r8, qword [rbp + 0xcd0]
mov rcx, qword [rbp + 0xcd8]
mov rax, rcx
sub rax, r8
cmp rax, 6
jb 0x14005ca0a
lea rax, [r8 + 6]
mov qword [rbp + 0xcd0], rax
lea rbx, [rbp + 0xcc0]
cmp rcx, 0xf
cmova rbx, qword [rbp + 0xcc0]
lea rax, [0x14039b8f2]
cmp rax, rbx
jbe 0x14005c9bb
lea rax, [rbx + r8]
lea rcx, str._HP
cmp rcx, rax
ja 0x14005c9bb
cmp rbx, rcx
ja 0x14005c9b3
mov rsi, r14
jmp 0x14005c9c0
mov rsi, rbx
sub rsi, rcx
jmp 0x14005c9c0
mov esi, 6
lea rcx, [rbx + 6]
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, 6
sub r8, rsi
lea rdx, str._HP
add rdx, 6
add rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
lea rax, [rbp + 0xcc0]
jmp 0x14005ca30
mov qword [rsp + 0x28], 6
lea rax, str._HP
mov qword [rsp + 0x20], rax
mov edx, 6
lea rcx, [rbp + 0xcc0]
call fcn.1400756a0
xorps xmm0, xmm0
movups xmmword [rbp + 0xd80], xmm0
mov qword [rbp + 0xd90], r14
mov qword [rbp + 0xd98], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xd80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xd90], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r8d, 1
lea rdx, [0x14039ab20]
lea rcx, [rbp + 0xd80]
call fcn.140072c10
xorps xmm0, xmm0
movups xmmword [rbp + 0xca0], xmm0
mov qword [rbp + 0xcb0], r14
mov qword [rbp + 0xcb8], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xca0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xcb0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rbp + 0xca0]
cmp qword [rbp + 0xcb8], 0xf
cmova r8, qword [rbp + 0xca0]
movdqa xmm14, xmmword [0x14039d300]
mov rax, qword [0x1403b0a80]
movups xmmword [rsp + 0x50], xmm14
movss xmm0, dword [rax + 0x3778]
movss dword [rsp + 0x5c], xmm0
lea rcx, [rsp + 0x50]
call fcn.1400033a0
movaps xmm1, xmm8
divss xmm1, xmm15
movaps xmm0, xmm7
subss xmm0, xmm1
movss dword [rbp + 0x320], xmm0
movss dword [rbp + 0x324], xmm10
movaps xmm3, xmm6
mov edx, eax
lea rcx, [rbp + 0x320]
call fcn.14004bf10
nop
mov rdx, qword [rbp + 0xcb8]
cmp rdx, 0xf
jbe 0x14005cb7a
inc rdx
mov rcx, qword [rbp + 0xca0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005cb75
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060385
call fcn.140075c30
mov qword [rbp + 0xcb0], r14
mov qword [rbp + 0xcb8], 0xf
mov byte [rbp + 0xca0], 0
mov rdx, qword [rbp + 0xd98]
cmp rdx, 0xf
jbe 0x14005cbd4
inc rdx
mov rcx, qword [rbp + 0xd80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005cbcf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006038c
call fcn.140075c30
mov qword [rbp + 0xd90], r14
mov qword [rbp + 0xd98], 0xf
mov byte [rbp + 0xd80], 0
mov rdx, qword [rbp + 0xcd8]
cmp rdx, 0xf
jbe 0x14005cc2e
inc rdx
mov rcx, qword [rbp + 0xcc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005cc29
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400603bd
call fcn.140075c30
mov qword [rbp + 0xcd0], r14
mov qword [rbp + 0xcd8], 0xf
mov byte [rbp + 0xcc0], 0
jmp 0x14005cc52
movdqa xmm14, xmmword [0x14039d300]
cmp byte [0x1403a70e1], 0
je 0x14005cff2
cvttss2si r8d, dword [rbp + 0xc06]
lea r9, [rbp + 0xefd]
test r8d, r8d
jns 0x14005ccc0
neg r8d
nop word [rax + rax]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x14005cc80
dec r9
mov byte [r9], 0x2d
jmp 0x14005ccea
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 0x14005ccc0
lea r8, [rbp + 0xefd]
mov rdx, r9
lea rcx, [rbp + 0xd00]
call fcn.140074980
nop
mov r8, qword [rbp + 0xd10]
mov rcx, qword [rbp + 0xd18]
mov rax, rcx
sub rax, r8
cmp rax, 7
jb 0x14005cdba
lea rax, [r8 + 7]
mov qword [rbp + 0xd10], rax
lea rbx, [rbp + 0xd00]
cmp rcx, 0xf
cmova rbx, qword [rbp + 0xd00]
lea rax, [0x14039b8ff]
cmp rax, rbx
jbe 0x14005cd6b
lea rax, [rbx + r8]
lea rcx, str._ULT
cmp rcx, rax
ja 0x14005cd6b
cmp rbx, rcx
ja 0x14005cd63
mov rsi, r14
jmp 0x14005cd70
mov rsi, rbx
sub rsi, rcx
jmp 0x14005cd70
mov esi, 7
lea rcx, [rbx + 7]
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, 7
sub r8, rsi
lea rdx, str._ULT
add rdx, 7
add rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
lea rax, [rbp + 0xd00]
jmp 0x14005cde0
mov qword [rsp + 0x28], 7
lea rax, str._ULT
mov qword [rsp + 0x20], rax
mov edx, 7
lea rcx, [rbp + 0xd00]
call fcn.1400756a0
xorps xmm0, xmm0
movups xmmword [rbp + 0xda0], xmm0
mov qword [rbp + 0xdb0], r14
mov qword [rbp + 0xdb8], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xda0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xdb0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r8d, 1
lea rdx, [0x14039ab20]
lea rcx, [rbp + 0xda0]
call fcn.140072c10
xorps xmm0, xmm0
movups xmmword [rbp + 0xce0], xmm0
mov qword [rbp + 0xcf0], r14
mov qword [rbp + 0xcf8], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xce0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xcf0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rbp + 0xce0]
cmp qword [rbp + 0xcf8], 0xf
cmova r8, qword [rbp + 0xce0]
mov rax, qword [0x1403b0a80]
movups xmmword [rsp + 0x50], xmm14
movss xmm0, dword [rax + 0x3778]
movss dword [rsp + 0x5c], xmm0
lea rcx, [rsp + 0x50]
call fcn.1400033a0
movaps xmm1, xmm6
addss xmm1, xmm10
movaps xmm0, xmm8
divss xmm0, xmm15
subss xmm7, xmm0
movss dword [rbp + 0x350], xmm7
movss dword [rbp + 0x354], xmm1
movaps xmm3, xmm6
mov edx, eax
lea rcx, [rbp + 0x350]
call fcn.14004bf10
nop
mov rdx, qword [rbp + 0xcf8]
cmp rdx, 0xf
jbe 0x14005cf25
inc rdx
mov rcx, qword [rbp + 0xce0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005cf20
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140060393
call fcn.140075c30
mov qword [rbp + 0xcf0], r14
mov qword [rbp + 0xcf8], 0xf
mov byte [rbp + 0xce0], 0
mov rdx, qword [rbp + 0xdb8]
cmp rdx, 0xf
jbe 0x14005cf7f
inc rdx
mov rcx, qword [rbp + 0xda0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005cf7a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006039a
call fcn.140075c30
mov qword [rbp + 0xdb0], r14
mov qword [rbp + 0xdb8], 0xf
mov byte [rbp + 0xda0], 0
mov rdx, qword [rbp + 0xd18]
cmp rdx, 0xf
jbe 0x14005cfd9
inc rdx
mov rcx, qword [rbp + 0xd00]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005cfd4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400603bd
call fcn.140075c30
mov qword [rbp + 0xd10], r14
mov qword [rbp + 0xd18], 0xf
mov byte [rbp + 0xd00], 0
cmp byte [0x1403b0b14], 0
je 0x14005d376
cvttss2si r8d, xmm13
lea r9, [rbp + 0xee5]
test r8d, r8d
jns 0x14005d060
neg r8d
nop dword [rax]
nop word [rax + rax]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x14005d020
dec r9
mov byte [r9], 0x2d
jmp 0x14005d08a
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
lea r8, [rbp + 0xee5]
mov rdx, r9
lea rcx, [rbp + 0xd40]
call fcn.140074980
nop
mov r8, qword [rbp + 0xd50]
mov rcx, qword [rbp + 0xd58]
mov rax, rcx
sub rax, r8
cmp rax, 8
jb 0x14005d148
lea rax, [r8 + 8]
mov qword [rbp + 0xd50], rax
lea rbx, [rbp + 0xd40]
cmp rcx, 0xf
cmova rbx, qword [rbp + 0xd40]
lea rax, [0x14039b8e0]
cmp rax, rbx
jbe 0x14005d104
lea rax, [rbx + r8]
cmp r12, rax
ja 0x14005d104
cmp rbx, r12
ja 0x14005d0fc
mov rsi, r14
jmp 0x14005d109
mov rsi, rbx
sub rsi, r12
jmp 0x14005d109
mov esi, 8
lea rcx, [rbx + 8]
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, 8
sub r8, rsi
lea rdx, [rsi + 8]
add rdx, r12
call sub.VCRUNTIME140.dll_memcpy
lea rax, [rbp + 0xd40]
jmp 0x14005d167
mov qword [rsp + 0x28], 8
mov qword [rsp + 0x20], r12
mov edx, 8
lea rcx, [rbp + 0xd40]
call fcn.1400756a0
xorps xmm0, xmm0
movups xmmword [rbp + 0xdc0], xmm0
mov qword [rbp + 0xdd0], r14
mov qword [rbp + 0xdd8], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xdc0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xdd0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r8d, 1
lea rdx, [0x14039ab20]
lea rcx, [rbp + 0xdc0]
call fcn.140072c10
xorps xmm0, xmm0
movups xmmword [rbp + 0xd20], xmm0
mov qword [rbp + 0xd30], r14
mov qword [rbp + 0xd38], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xd20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xd30], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rbp + 0xd20]
cmp qword [rbp + 0xd38], 0xf
cmova r8, qword [rbp + 0xd20]
mov rax, qword [0x1403b0a80]
movups xmmword [rsp + 0x50], xmm14
movss xmm0, dword [rax + 0x3778]
movss dword [rsp + 0x5c], xmm0
lea rcx, [rsp + 0x50]
call fcn.1400033a0
movaps xmm1, xmm8
divss xmm1, xmm15
movaps xmm0, xmm9
subss xmm0, xmm1
movss dword [rbp + 0x358], xmm0
movss dword [rbp + 0x35c], xmm11
movaps xmm3, xmm6
mov edx, eax
lea rcx, [rbp + 0x358]
call fcn.14004bf10
nop
mov rdx, qword [rbp + 0xd38]
cmp rdx, 0xf
jbe 0x14005d2a9
inc rdx
mov rcx, qword [rbp + 0xd20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005d2a4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400603a1
call fcn.140075c30
mov qword [rbp + 0xd30], r14
mov qword [rbp + 0xd38], 0xf
mov byte [rbp + 0xd20], 0
mov rdx, qword [rbp + 0xdd8]
cmp rdx, 0xf
jbe 0x14005d303
inc rdx
mov rcx, qword [rbp + 0xdc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005d2fe
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400603a8
call fcn.140075c30
mov qword [rbp + 0xdd0], r14
mov qword [rbp + 0xdd8], 0xf
mov byte [rbp + 0xdc0], 0
mov rdx, qword [rbp + 0xd58]
cmp rdx, 0xf
jbe 0x14005d35d
inc rdx
mov rcx, qword [rbp + 0xd40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005d358
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400603bd
call fcn.140075c30
mov qword [rbp + 0xd50], r14
mov qword [rbp + 0xd58], 0xf
mov byte [rbp + 0xd40], 0
cmp byte [0x1403b0b2c], 0
je 0x14005d659
mov r8, qword [rbp + 0xb38]
mov rdx, qword [rbp + 0xba0]
lea rcx, [rbp + 0xe00]
call fcn.140050980
mov rbx, rax
mov r8, qword [rax + 0x10]
mov rcx, qword [rax + 0x18]
mov rax, rcx
sub rax, r8
cmp rax, 8
jb 0x14005d42b
lea rax, [r8 + 8]
mov qword [rbx + 0x10], rax
mov rsi, rbx
cmp rcx, 0xf
jbe 0x14005d3c8
mov rsi, qword [rbx]
lea rax, [0x14039b908]
cmp rax, rsi
jbe 0x14005d3ea
lea rax, [rsi + r8]
cmp r15, rax
ja 0x14005d3ea
cmp rsi, r15
jbe 0x14005d3f0
mov r14, rsi
sub r14, r15
jmp 0x14005d3f0
mov r14d, 8
lea rcx, [rsi + 8]
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, 8
sub r8, r14
lea rdx, [r14 + 8]
add rdx, r15
call sub.VCRUNTIME140.dll_memcpy
xor r14d, r14d
jmp 0x14005d449
mov qword [rsp + 0x28], 8
mov qword [rsp + 0x20], r15
mov edx, 8
mov rcx, rbx
call fcn.1400756a0
mov rbx, rax
xorps xmm0, xmm0
movups xmmword [rbp + 0xde0], xmm0
mov qword [rbp + 0xdf0], r14
mov qword [rbp + 0xdf8], r14
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0xde0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0xdf0], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov r8d, 1
lea rdx, [0x14039ab20]
lea rcx, [rbp + 0xde0]
call fcn.140072c10
xorps xmm0, xmm0
movups xmmword [rbp + 0xd60], xmm0
mov qword [rbp + 0xd70], r14
mov qword [rbp + 0xd78], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xd60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xd70], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rbp + 0xd60]
cmp qword [rbp + 0xd78], 0xf
cmova r8, qword [rbp + 0xd60]
mov rax, qword [0x1403b0a80]
movups xmmword [rsp + 0x50], xmm14
movss xmm0, dword [rax + 0x3778]
movss dword [rsp + 0x5c], xmm0
lea rcx, [rsp + 0x50]
call fcn.1400033a0
movaps xmm0, xmm6
addss xmm0, xmm11
divss xmm8, xmm15
subss xmm9, xmm8
movss dword [rbp + 0x360], xmm9
movss dword [rbp + 0x364], xmm0
movaps xmm3, xmm6
mov edx, eax
lea rcx, [rbp + 0x360]
call fcn.14004bf10
nop
mov rdx, qword [rbp + 0xd78]
cmp rdx, 0xf
jbe 0x14005d58c
inc rdx
mov rcx, qword [rbp + 0xd60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005d587
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400603af
call fcn.140075c30
mov qword [rbp + 0xd70], r14
mov qword [rbp + 0xd78], 0xf
mov byte [rbp + 0xd60], 0
mov rdx, qword [rbp + 0xdf8]
cmp rdx, 0xf
jbe 0x14005d5e6
inc rdx
mov rcx, qword [rbp + 0xde0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005d5e1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400603b6
call fcn.140075c30
mov qword [rbp + 0xdf0], r14
mov qword [rbp + 0xdf8], 0xf
mov byte [rbp + 0xde0], 0
mov rdx, qword [rbp + 0xe18]
cmp rdx, 0xf
jbe 0x14005d640
inc rdx
mov rcx, qword [rbp + 0xe00]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005d63b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400603bd
call fcn.140075c30
mov qword [rbp + 0xe10], r14
mov qword [rbp + 0xe18], 0xf
mov byte [rbp + 0xe00], 0
mov rsi, qword [rbp + 0x368]
cmp byte [0x1403b0b04], 0
je 0x14005ed1d
cmp byte [rbp + 0xc00], 0
je 0x14005ed1d
cmp byte [rbp + 0xc02], 0
je 0x14005ed1d
movss xmm0, dword [0x1403b02da]
comiss xmm0, xmm12
jbe 0x14005ed1d
cmp qword [rbp + 0xba0], 0x16dd
je 0x14005ed1d
lea rdx, [rbp + 0xe80]
lea rcx, [rbp + 0xb30]
call fcn.14004e610
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0xa70], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0xa80], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0xa90], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rbp + 0xaa0], xmm1
movsd xmm0, qword [rax + 0x40]
movsd qword [rbp + 0xab0], xmm0
lea r8, [rbp + 0xa70]
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0xb30]
call fcn.14004ebc0
mov ebx, 0xffff0000
cmp byte [rbp + 0xc01], 0
mov eax, 0xff00ff00
cmovne ebx, eax
cmp byte [rbp + 0x10], 0
jne 0x14005ed1d
movsd xmm0, qword [rbp + 0xc16]
movsd qword [rbp + 0x790], xmm0
mov eax, dword [rbp + 0xc1e]
mov dword [rbp + 0x798], eax
movss xmm0, dword [0x1403b0b68]
movss xmm1, dword [0x1403b0b6c]
unpcklps xmm1, xmm0
movq r9, xmm1
lea r8, [rsp + 0x50]
lea rdx, [rbp + 0x790]
call fcn.14004aa70
test al, al
je 0x14005ed1d
mov rcx, qword [rbp + 0xba0]
movabs rax, 0xfd1ffffffffffcc9
add rax, rcx
cmp rax, 0x23
ja 0x14005d7a5
movabs rdx, 0x800000021
bt rdx, rax
jb 0x14005e5bc
movabs rax, 0x2e000000000016c
cmp rcx, rax
je 0x14005e5bc
movss xmm14, dword [0x14039cae8]
movaps xmm3, xmm14
mov r8d, 0xff000000
lea rdx, [rbp + 0x39]
lea rcx, [rbp + 0x31]
call fcn.14004c2b0
movaps xmm3, xmm14
mov r8d, 0xff000000
lea rdx, [rbp + 0x41]
lea rcx, [rbp + 0x39]
call fcn.14004c2b0
movaps xmm3, xmm14
mov r8d, 0xff000000
lea rdx, [rbp + 0x49]
lea rcx, [rbp + 0x41]
call fcn.14004c2b0
movaps xmm3, xmm14
mov r8d, 0xff000000
lea rdx, [rbp + 0x51]
lea rcx, [rbp + 0x39]
call fcn.14004c2b0
movaps xmm3, xmm14
mov r8d, 0xff000000
lea rdx, [rbp + 0x61]
lea rcx, [rbp + 0x39]
call fcn.14004c2b0
movaps xmm3, xmm14
mov r8d, 0xff000000
lea rdx, [rbp + 0x71]
lea rcx, [rbp + 0x51]
call fcn.14004c2b0
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
mov r10, rax
mov rcx, qword [0x1403b0a80]
mov qword [rbp + 0x578], 0
mov dword [rbp + 0x580], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x584], xmm0
lea rcx, [rbp + 0x578]
call fcn.1400033a0
movss xmm7, dword [rbp + 0x81]
movss dword [rbp + 0x370], xmm7
movss xmm6, dword [rbp + 0x85]
movss dword [rbp + 0x374], xmm6
movss xmm0, dword [rbp + 0x61]
movss dword [rbp + 0x378], xmm0
movss xmm0, dword [rbp + 0x65]
movss dword [rbp + 0x37c], xmm0
movss dword [rsp + 0x20], xmm14
mov r9d, eax
lea r8, [rbp + 0x370]
lea rdx, [rbp + 0x378]
mov rcx, r10
call fcn.140023a80
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
mov r10, rax
mov rcx, qword [0x1403b0a80]
mov qword [rbp + 0x568], 0
mov dword [rbp + 0x570], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x574], xmm0
lea rcx, [rbp + 0x568]
call fcn.1400033a0
movss xmm0, dword [rbp + 0x79]
movss dword [rbp + 0x380], xmm0
movss xmm0, dword [rbp + 0x7d]
movss dword [rbp + 0x384], xmm0
movss xmm0, dword [rbp + 0x71]
movss dword [rbp + 0x388], xmm0
movss xmm0, dword [rbp + 0x75]
movss dword [rbp + 0x38c], xmm0
movss dword [rsp + 0x20], xmm14
mov r9d, eax
lea r8, [rbp + 0x380]
lea rdx, [rbp + 0x388]
mov rcx, r10
call fcn.140023a80
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
mov r10, rax
mov rcx, qword [0x1403b0a80]
mov qword [rbp + 0x558], 0
mov dword [rbp + 0x560], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x564], xmm0
lea rcx, [rbp + 0x558]
call fcn.1400033a0
movss xmm0, dword [rbp + 0x89]
movss dword [rbp + 0x390], xmm0
movss xmm0, dword [rbp + 0x8d]
movss dword [rbp + 0x394], xmm0
movss dword [rbp + 0x398], xmm7
movss dword [rbp + 0x39c], xmm6
movss dword [rsp + 0x20], xmm14
mov r9d, eax
lea r8, [rbp + 0x390]
lea rdx, [rbp + 0x398]
mov rcx, r10
call fcn.140023a80
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
mov r10, rax
mov rcx, qword [0x1403b0a80]
mov qword [rbp + 0x548], 0
mov dword [rbp + 0x550], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x554], xmm0
lea rcx, [rbp + 0x548]
call fcn.1400033a0
movss xmm13, dword [rbp + 0x91]
movss dword [rbp + 0x3a0], xmm13
movss xmm12, dword [rbp + 0x95]
movss dword [rbp + 0x3a4], xmm12
movss xmm7, dword [rbp + 0x49]
movss dword [rbp + 0x3a8], xmm7
movss xmm6, dword [rbp + 0x4d]
movss dword [rbp + 0x3ac], xmm6
movss dword [rsp + 0x20], xmm14
mov r9d, eax
lea r8, [rbp + 0x3a0]
lea rdx, [rbp + 0x3a8]
mov rcx, r10
call fcn.140023a80
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
mov r10, rax
mov rcx, qword [0x1403b0a80]
mov qword [rbp + 0x538], 0
mov dword [rbp + 0x540], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x544], xmm0
lea rcx, [rbp + 0x538]
call fcn.1400033a0
movss xmm11, dword [rbp + 0xa1]
movss dword [rbp + 0x3b0], xmm11
movss xmm10, dword [rbp + 0xa5]
movss dword [rbp + 0x3b4], xmm10
movss dword [rbp + 0x3b8], xmm7
movss dword [rbp + 0x3bc], xmm6
movss dword [rsp + 0x20], xmm14
mov r9d, eax
lea r8, [rbp + 0x3b0]
lea rdx, [rbp + 0x3b8]
mov rcx, r10
call fcn.140023a80
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
mov r10, rax
mov rcx, qword [0x1403b0a80]
mov qword [rbp + 0x528], 0
mov dword [rbp + 0x530], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x534], xmm0
lea rcx, [rbp + 0x528]
call fcn.1400033a0
movss xmm9, dword [rbp + 0x99]
movss dword [rbp + 0x3c0], xmm9
movss xmm8, dword [rbp + 0x9d]
movss dword [rbp + 0x3c4], xmm8
movss dword [rbp + 0x3c8], xmm13
movss dword [rbp + 0x3cc], xmm12
movss dword [rsp + 0x20], xmm14
mov r9d, eax
lea r8, [rbp + 0x3c0]
lea rdx, [rbp + 0x3c8]
mov rcx, r10
call fcn.140023a80
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
mov r10, rax
mov rcx, qword [0x1403b0a80]
mov qword [rbp + 0x488], 0
mov dword [rbp + 0x490], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x494], xmm0
lea rcx, [rbp + 0x488]
call fcn.1400033a0
movss xmm7, dword [rbp + 0xa9]
movss dword [rbp + 0x3d0], xmm7
movss xmm6, dword [rbp + 0xad]
movss dword [rbp + 0x3d4], xmm6
movss dword [rbp + 0x3d8], xmm11
movss dword [rbp + 0x3dc], xmm10
movss xmm0, dword [0x14039cb58]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x3d0]
lea rdx, [rbp + 0x3d8]
mov rcx, r10
call fcn.140023a80
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
mov r10, rax
mov rcx, qword [0x1403b0a80]
mov qword [rbp + 0x518], 0
mov dword [rbp + 0x520], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x524], xmm0
lea rcx, [rbp + 0x518]
call fcn.1400033a0
movss xmm15, dword [rbp + 0xb1]
movss dword [rbp + 0x3e0], xmm15
movss xmm14, dword [rbp + 0xb5]
movss dword [rbp + 0x3e4], xmm14
movss dword [rbp + 0x3e8], xmm7
movss dword [rbp + 0x3ec], xmm6
movss xmm6, dword [0x14039cae8]
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x3e0]
lea rdx, [rbp + 0x3e8]
mov rcx, r10
call fcn.140023a80
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
mov r10, rax
mov rcx, qword [0x1403b0a80]
mov qword [rbp + 0x508], 0
mov dword [rbp + 0x510], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x514], xmm0
lea rcx, [rbp + 0x508]
call fcn.1400033a0
movss xmm13, dword [rbp + 0xb9]
movss dword [rbp + 0x3f0], xmm13
movss xmm12, dword [rbp + 0xbd]
movss dword [rbp + 0x3f4], xmm12
movss dword [rbp + 0x3f8], xmm9
movss dword [rbp + 0x3fc], xmm8
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x3f0]
lea rdx, [rbp + 0x3f8]
mov rcx, r10
call fcn.140023a80
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
mov r10, rax
mov rcx, qword [0x1403b0a80]
mov qword [rbp + 0x4f8], 0
mov dword [rbp + 0x500], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x504], xmm0
lea rcx, [rbp + 0x4f8]
call fcn.1400033a0
movss xmm11, dword [rbp + 0xc1]
movss dword [rbp + 0x400], xmm11
movss xmm10, dword [rbp + 0xc5]
movss dword [rbp + 0x404], xmm10
movss dword [rbp + 0x408], xmm15
movss dword [rbp + 0x40c], xmm14
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x400]
lea rdx, [rbp + 0x408]
mov rcx, r10
call fcn.140023a80
movaps xmm3, xmm6
mov r8d, 0xff000000
lea rdx, [rbp + 0xc9]
lea rcx, [rbp + 0xb9]
call fcn.14004c2b0
movaps xmm3, xmm6
mov r8d, ebx
lea rdx, [rbp + 0x39]
lea rcx, [rbp + 0x31]
call fcn.14004c2b0
call fcn.140005cd0
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 [0x14039cc3c]
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 + 0x7b0]
call fcn.140001250
lea rcx, [rbp + 0x7b0]
call fcn.1400038b0
movss xmm7, dword [rbp + 0x41]
movss dword [rbp + 0x410], xmm7
movss xmm6, dword [rbp + 0x45]
movss dword [rbp + 0x414], xmm6
movss xmm9, dword [rbp + 0x39]
movss dword [rbp + 0x418], xmm9
movss xmm8, dword [rbp + 0x3d]
movss dword [rbp + 0x41c], xmm8
movss xmm0, dword [0x14039cae8]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x410]
lea rdx, [rbp + 0x418]
mov rcx, r10
call fcn.140023a80
movss xmm3, dword [0x14039cae8]
mov r8d, ebx
lea rdx, [rbp + 0x49]
lea rcx, [rbp + 0x41]
call fcn.14004c2b0
movss xmm3, dword [0x14039cae8]
mov r8d, ebx
lea rdx, [rbp + 0x51]
lea rcx, [rbp + 0x39]
call fcn.14004c2b0
movss xmm3, dword [0x14039cae8]
mov r8d, ebx
lea rdx, [rbp + 0x61]
lea rcx, [rbp + 0x39]
call fcn.14004c2b0
movss xmm3, dword [0x14039cae8]
mov r8d, ebx
lea rdx, [rbp + 0x71]
lea rcx, [rbp + 0x51]
call fcn.14004c2b0
movss xmm3, dword [0x14039cae8]
mov r8d, ebx
lea rdx, [rbp + 0x81]
lea rcx, [rbp + 0x61]
call fcn.14004c2b0
movss xmm3, dword [0x14039cae8]
mov r8d, ebx
lea rdx, [rbp + 0x79]
lea rcx, [rbp + 0x71]
call fcn.14004c2b0
movss xmm3, dword [0x14039cae8]
mov r8d, ebx
lea rdx, [rbp + 0x89]
lea rcx, [rbp + 0x81]
call fcn.14004c2b0
movss xmm3, dword [0x14039cae8]
mov r8d, ebx
lea rdx, [rbp + 0x91]
lea rcx, [rbp + 0x49]
call fcn.14004c2b0
movss xmm3, dword [0x14039cae8]
mov r8d, ebx
lea rdx, [rbp + 0xa1]
lea rcx, [rbp + 0x49]
call fcn.14004c2b0
movss xmm3, dword [0x14039cae8]
mov r8d, ebx
lea rdx, [rbp + 0x99]
lea rcx, [rbp + 0x91]
call fcn.14004c2b0
movss xmm3, dword [0x14039cae8]
mov r8d, ebx
lea rdx, [rbp + 0xa9]
lea rcx, [rbp + 0xa1]
call fcn.14004c2b0
movss xmm3, dword [0x14039cae8]
mov r8d, ebx
lea rdx, [rbp + 0xb1]
lea rcx, [rbp + 0xa9]
call fcn.14004c2b0
movss xmm3, dword [0x14039cae8]
mov r8d, ebx
lea rdx, [rbp + 0xb9]
lea rcx, [rbp + 0x99]
call fcn.14004c2b0
movss xmm3, dword [0x14039cae8]
mov r8d, ebx
lea rdx, [rbp + 0xc1]
lea rcx, [rbp + 0xb1]
call fcn.14004c2b0
movss xmm3, dword [0x14039cae8]
mov r8d, ebx
lea rdx, [rbp + 0xc9]
lea rcx, [rbp + 0xb9]
call fcn.14004c2b0
movss xmm0, dword [rbp + 0x31]
movss dword [rbp + 0x420], xmm0
movss xmm1, dword [rbp + 0x35]
movss dword [rbp + 0x424], xmm1
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movss xmm2, dword [0x14039cae8]
lea rdx, [rbp + 0x420]
mov rcx, rdi
call fcn.140024410
movss dword [rbp + 0x428], xmm7
movss dword [rbp + 0x42c], xmm6
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movss xmm6, dword [0x14039cae8]
movaps xmm2, xmm6
lea rdx, [rbp + 0x428]
mov rcx, rdi
call fcn.140024410
movss xmm0, dword [rbp + 0x49]
movss dword [rbp + 0x430], xmm0
movss xmm0, dword [rbp + 0x4d]
movss dword [rbp + 0x434], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x430]
mov rcx, rdi
call fcn.140024410
movss dword [rbp + 0x438], xmm9
movss dword [rbp + 0x43c], xmm8
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x438]
mov rcx, rdi
call fcn.140024410
movss xmm0, dword [rbp + 0x51]
movss dword [rbp + 0x440], xmm0
movss xmm1, dword [rbp + 0x55]
movss dword [rbp + 0x444], xmm1
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x440]
mov rcx, rdi
call fcn.140024410
movss xmm0, dword [rbp + 0x61]
movss dword [rbp + 0x448], xmm0
movss xmm0, dword [rbp + 0x65]
movss dword [rbp + 0x44c], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x448]
mov rcx, rdi
call fcn.140024410
movss xmm0, dword [rbp + 0x71]
movss dword [rbp + 0x450], xmm0
movss xmm0, dword [rbp + 0x75]
movss dword [rbp + 0x454], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x450]
mov rcx, rdi
call fcn.140024410
movss xmm0, dword [rbp + 0x79]
movss dword [rbp + 0x458], xmm0
movss xmm0, dword [rbp + 0x7d]
movss dword [rbp + 0x45c], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x458]
mov rcx, rdi
call fcn.140024410
movss xmm0, dword [rbp + 0x81]
movss dword [rbp + 0x460], xmm0
movss xmm0, dword [rbp + 0x85]
movss dword [rbp + 0x464], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x460]
mov rcx, rdi
call fcn.140024410
movss xmm0, dword [rbp + 0x89]
movss dword [rbp + 0x210], xmm0
movss xmm0, dword [rbp + 0x8d]
movss dword [rbp + 0x214], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x210]
mov rcx, rdi
call fcn.140024410
movss xmm0, dword [rbp + 0x91]
movss dword [rbp + 0x218], xmm0
movss xmm0, dword [rbp + 0x95]
movss dword [rbp + 0x21c], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x218]
mov rcx, rdi
call fcn.140024410
movss xmm0, dword [rbp + 0x99]
movss dword [rbp + 0x220], xmm0
movss xmm0, dword [rbp + 0x9d]
movss dword [rbp + 0x224], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x220]
mov rcx, rdi
call fcn.140024410
movss xmm0, dword [rbp + 0xa1]
movss dword [rbp + 0x228], xmm0
movss xmm0, dword [rbp + 0xa5]
movss dword [rbp + 0x22c], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x228]
mov rcx, rdi
call fcn.140024410
movss xmm0, dword [rbp + 0xa9]
movss dword [rbp + 0x318], xmm0
movss xmm0, dword [rbp + 0xad]
movss dword [rbp + 0x31c], xmm0
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x318]
mov rcx, rdi
call fcn.140024410
movss dword [rbp + 0x230], xmm15
movss dword [rbp + 0x234], xmm14
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x230]
mov rcx, rdi
call fcn.140024410
movss dword [rbp + 0x238], xmm11
movss dword [rbp + 0x23c], xmm10
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x238]
mov rcx, rdi
call fcn.140024410
movss dword [rbp + 0x240], xmm13
movss dword [rbp + 0x244], xmm12
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x240]
mov rcx, rdi
call fcn.140024410
movss xmm0, dword [rbp + 0xc9]
movss dword [rbp + 0x248], xmm0
movss xmm1, dword [rbp + 0xcd]
movss dword [rbp + 0x24c], xmm1
mov dword [rsp + 0x20], r14d
mov r9d, 0xffff9966
movaps xmm2, xmm6
lea rdx, [rbp + 0x248]
mov rcx, rdi
call fcn.140024410
jmp 0x14005ed1d
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
mov r10, rax
mov rcx, qword [0x1403b0a80]
mov qword [rbp + 0x4e8], 0
mov dword [rbp + 0x4f0], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x4f4], xmm0
lea rcx, [rbp + 0x4e8]
call fcn.1400033a0
movss xmm7, dword [rbp + 0x39]
movss dword [rbp + 0x250], xmm7
movss xmm6, dword [rbp + 0x3d]
movss dword [rbp + 0x254], xmm6
movss xmm0, dword [rbp + 0x31]
movss dword [rbp + 0x258], xmm0
movss xmm15, dword [rbp + 0x35]
movss dword [rbp + 0x25c], xmm15
movss xmm8, dword [0x14039cae8]
movss dword [rsp + 0x20], xmm8
mov r9d, eax
lea r8, [rbp + 0x250]
lea rdx, [rbp + 0x258]
mov rcx, r10
call fcn.140023a80
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
mov r10, rax
mov rcx, qword [0x1403b0a80]
mov qword [rbp + 0x4d8], 0
mov dword [rbp + 0x4e0], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x4e4], xmm0
lea rcx, [rbp + 0x4d8]
call fcn.1400033a0
movss xmm13, dword [rbp + 0x41]
movss dword [rbp + 0x260], xmm13
movss xmm11, dword [rbp + 0x45]
movss dword [rbp + 0x264], xmm11
movss dword [rbp + 0x268], xmm7
movss dword [rbp + 0x26c], xmm6
movss dword [rsp + 0x20], xmm8
mov r9d, eax
lea r8, [rbp + 0x260]
lea rdx, [rbp + 0x268]
mov rcx, r10
call fcn.140023a80
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
mov r10, rax
mov rcx, qword [0x1403b0a80]
mov qword [rbp + 0x4c8], 0
mov dword [rbp + 0x4d0], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x4d4], xmm0
lea rcx, [rbp + 0x4c8]
call fcn.1400033a0
movss xmm14, dword [rbp + 0x51]
movss dword [rbp + 0x270], xmm14
movss xmm12, dword [rbp + 0x55]
movss dword [rbp + 0x274], xmm12
movss dword [rbp + 0x278], xmm13
movss dword [rbp + 0x27c], xmm11
movss dword [rsp + 0x20], xmm8
mov r9d, eax
lea r8, [rbp + 0x270]
lea rdx, [rbp + 0x278]
mov rcx, r10
call fcn.140023a80
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
mov r10, rax
mov rcx, qword [0x1403b0a80]
mov qword [rbp + 0x4b8], 0
mov dword [rbp + 0x4c0], 0
movss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x4c4], xmm0
lea rcx, [rbp + 0x4b8]
call fcn.1400033a0
movss xmm10, dword [rbp + 0x61]
movss dword [rbp + 0x280], xmm10
movss xmm9, dword [rbp + 0x65]
movss dword [rbp + 0x284], xmm9
movss dword [rbp + 0x288], xmm13
movss dword [rbp + 0x28c], xmm11
movss dword [rsp + 0x20], xmm8
mov r9d, eax
lea r8, [rbp + 0x280]
lea rdx, [rbp + 0x288]
mov rcx, r10
call fcn.140023a80
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
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 [0x14039cc3c]
divss xmm8, xmm0
xorps xmm7, xmm7
cvtsi2ss xmm7, rdx
divss xmm7, xmm0
xorps xmm6, xmm6
cvtsi2ss xmm6, r9
divss xmm6, xmm0
mov rax, qword [0x1403b0a80]
movss dword [rbp + 0x4a8], xmm6
movss dword [rbp + 0x4ac], xmm7
mov dword [rbp + 0x4b0], 0
movaps xmm0, xmm8
mulss xmm0, dword [rax + 0x3778]
movss dword [rbp + 0x4b4], xmm0
lea rcx, [rbp + 0x4a8]
call fcn.1400033a0
movss xmm0, dword [rbp + 0x39]
movss dword [rbp + 0x290], xmm0
movss xmm0, dword [rbp + 0x3d]
movss dword [rbp + 0x294], xmm0
movss xmm0, dword [rbp + 0x31]
movss dword [rbp + 0x298], xmm0
movss dword [rbp + 0x29c], xmm15
movss xmm0, dword [0x14039cae8]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x290]
lea rdx, [rbp + 0x298]
mov rcx, r10
call fcn.140023a80
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
mov r10, rax
mov rcx, qword [0x1403b0a80]
movss dword [rbp + 0x478], xmm6
movss dword [rbp + 0x47c], xmm7
mov dword [rbp + 0x480], 0
movaps xmm0, xmm8
mulss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x484], xmm0
lea rcx, [rbp + 0x478]
call fcn.1400033a0
movss dword [rbp + 0x2a0], xmm13
movss dword [rbp + 0x2a4], xmm11
movss xmm0, dword [rbp + 0x39]
movss dword [rbp + 0x2a8], xmm0
movss xmm0, dword [rbp + 0x3d]
movss dword [rbp + 0x2ac], xmm0
movss xmm0, dword [0x14039cae8]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x2a0]
lea rdx, [rbp + 0x2a8]
mov rcx, r10
call fcn.140023a80
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
mov r10, rax
mov rcx, qword [0x1403b0a80]
movss dword [rbp + 0x588], xmm6
movss dword [rbp + 0x58c], xmm7
mov dword [rbp + 0x590], 0
movaps xmm0, xmm8
mulss xmm0, dword [rcx + 0x3778]
movss dword [rbp + 0x594], xmm0
lea rcx, [rbp + 0x588]
call fcn.1400033a0
movss dword [rbp + 0x2b0], xmm14
movss dword [rbp + 0x2b4], xmm12
movss dword [rbp + 0x2b8], xmm13
movss dword [rbp + 0x2bc], xmm11
movss xmm0, dword [0x14039cae8]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x2b0]
lea rdx, [rbp + 0x2b8]
mov rcx, r10
call fcn.140023a80
mov rax, qword [0x1403b0a80]
mov rax, qword [rax + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140005b90
mov r10, rax
mov rcx, qword [0x1403b0a80]
movss dword [rbp + 0x468], xmm6
movss dword [rbp + 0x46c], xmm7
mov dword [rbp + 0x470], 0
mulss xmm8, dword [rcx + 0x3778]
movss dword [rbp + 0x474], xmm8
lea rcx, [rbp + 0x468]
call fcn.1400033a0
movss dword [rbp + 0x2c0], xmm10
movss dword [rbp + 0x2c4], xmm9
movss dword [rbp + 0x2c8], xmm13
movss dword [rbp + 0x2cc], xmm11
movss xmm6, dword [0x14039cae8]
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x2c0]
lea rdx, [rbp + 0x2c8]
mov rcx, r10
call fcn.140023a80
movss xmm0, dword [rbp + 0x31]
movss dword [rbp + 0x2d0], xmm0
movss dword [rbp + 0x2d4], xmm15
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movaps xmm2, xmm6
lea rdx, [rbp + 0x2d0]
mov rcx, rdi
call fcn.1400229b0
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.140022400
mov dword [rdi + 0x78], r14d
movss dword [rbp + 0x2d8], xmm13
movss dword [rbp + 0x2dc], xmm11
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movaps xmm2, xmm6
lea rdx, [rbp + 0x2d8]
mov rcx, rdi
call fcn.1400229b0
dec dword [rdi + 0x78]
mov r9d, 0xffff9966
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.140022400
mov dword [rdi + 0x78], r14d
movss xmm0, dword [rbp + 0x39]
movss dword [rbp + 0x2e0], xmm0
movss xmm0, dword [rbp + 0x3d]
movss dword [rbp + 0x2e4], xmm0
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movaps xmm2, xmm6
lea rdx, [rbp + 0x2e0]
mov rcx, rdi
call fcn.1400229b0
dec dword [rdi + 0x78]
mov r9d, 0xffff9966
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.140022400
mov dword [rdi + 0x78], r14d
movss dword [rbp + 0x2e8], xmm14
movss dword [rbp + 0x2ec], xmm12
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movaps xmm2, xmm6
lea rdx, [rbp + 0x2e8]
mov rcx, rdi
call fcn.1400229b0
dec dword [rdi + 0x78]
mov r9d, 0xffff9966
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.140022400
mov dword [rdi + 0x78], r14d
movss dword [rbp + 0x2f0], xmm10
movss dword [rbp + 0x2f4], xmm9
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movaps xmm2, xmm6
lea rdx, [rbp + 0x2f0]
mov rcx, rdi
call fcn.1400229b0
dec dword [rdi + 0x78]
mov r9d, 0xffff9966
mov r8d, dword [rdi + 0x78]
mov rdx, qword [rdi + 0x80]
mov rcx, rdi
call fcn.140022400
mov dword [rdi + 0x78], r14d
cmp byte [0x1403b0b38], 0
je 0x14005eeb1
cmp byte [rbp + 0xc00], 0
je 0x14005eeb1
xorps xmm12, xmm12
cmp byte [rbp + 0xc02], 0
je 0x14005eeb5
movss xmm0, dword [0x1403b02da]
comiss xmm0, xmm12
jbe 0x14005eeb5
cmp qword [rbp + 0xba0], 0x16dd
je 0x14005eeb5
mov qword [rbp + 0x118], 0
movss xmm9, dword [0x1403b0b6c]
movss xmm10, dword [0x1403b0b68]
movss xmm8, dword [rbp + 0xc16]
movss xmm7, dword [rbp + 0xc1a]
movss xmm6, dword [rbp + 0xc1e]
movaps xmm0, xmm8
unpcklps xmm0, xmm7
movsd qword [rbp + 0x7a0], xmm0
movss dword [rbp + 0x7a8], xmm6
movaps xmm0, xmm9
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rbp + 0x118]
lea rdx, [rbp + 0x7a0]
call fcn.14004aa70
movss xmm13, dword [0x14039c9e4]
test al, al
je 0x14005eed7
mov r9d, 2
mov rdx, qword [rbp + 0x118]
cmp byte [rbp + 0xc01], 0
je 0x14005ee52
mulss xmm10, xmm13
mulss xmm9, xmm13
mov r8d, 0xffdaa096
unpcklps xmm9, xmm10
movq rcx, xmm9
call fcn.14004caa0
movss xmm6, dword [rbp + 0xc1e]
movss dword [rbp + 0xc1e], xmm6
movss xmm7, dword [rbp + 0xc1a]
movss xmm8, dword [rbp + 0xc16]
movaps xmm0, xmm8
unpcklps xmm0, xmm7
movsd qword [rbp + 0xc16], xmm0
jmp 0x14005eed7
movss xmm1, dword [0x1403b0b68]
mulss xmm1, xmm13
movss xmm0, dword [0x1403b0b6c]
mulss xmm0, xmm13
mov r8d, 0x6666cc96
unpcklps xmm0, xmm1
movq rcx, xmm0
call fcn.14004caa0
movss xmm6, dword [rbp + 0xc1e]
movss dword [rbp + 0xc1e], xmm6
movss xmm7, dword [rbp + 0xc1a]
movss xmm8, dword [rbp + 0xc16]
movaps xmm0, xmm8
unpcklps xmm0, xmm7
movsd qword [rbp + 0xc16], xmm0
jmp 0x14005eed7
xorps xmm12, xmm12
movss xmm6, dword [rbp + 0xc1e]
movss xmm7, dword [rbp + 0xc1a]
movss xmm8, dword [rbp + 0xc16]
movss xmm13, dword [0x14039c9e4]
cmp byte [0x1403b0af7], 0
je 0x14005f1eb
cmp byte [rbp + 0xc00], 0
je 0x14005f1eb
cmp byte [rbp + 0xc02], 0
je 0x14005f1eb
movss xmm0, dword [0x1403b02da]
comiss xmm0, xmm12
jbe 0x14005f1eb
cmp qword [rbp + 0xba0], 0x16dd
je 0x14005f1eb
mov qword [rbp + 0x120], 0
mov dword [rbp + 0x2fc], 0
movss xmm2, dword [0x1403b0b68]
movaps xmm1, xmm7
addss xmm1, dword [0x14039c99c]
movaps xmm0, xmm8
unpcklps xmm0, xmm1
movsd qword [rbp + 0x5e0], xmm0
movss dword [rbp + 0x5e8], xmm6
movss xmm0, dword [0x1403b0b6c]
unpcklps xmm0, xmm2
movq r9, xmm0
lea r8, [rbp + 0x120]
lea rdx, [rbp + 0x5e0]
call fcn.14004aa70
test al, al
je 0x1400602f5
movss xmm2, dword [0x1403b0b68]
subss xmm7, dword [0x14039cab8]
movaps xmm0, xmm8
unpcklps xmm0, xmm7
movsd qword [rbp + 0x5f0], xmm0
movss dword [rbp + 0x5f8], xmm6
movss xmm0, dword [0x1403b0b6c]
unpcklps xmm0, xmm2
movq r9, xmm0
lea r8, [rbp + 0x2f8]
lea rdx, [rbp + 0x5f0]
call fcn.14004aa70
test al, al
je 0x1400602f5
movss xmm10, dword [rbp + 0x124]
movaps xmm7, xmm10
subss xmm7, dword [rbp + 0x2fc]
andps xmm7, xmmword [0x14039d3b0]
cvtps2pd xmm0, xmm7
mulsd xmm0, qword [0x14039cad0]
cvtpd2ps xmm6, xmm0
mov rax, qword [0x1403b0a80]
movss xmm0, dword [0x1403b01d8]
movss dword [rbp + 0x498], xmm0
movss xmm1, dword [0x1403b01dc]
movss dword [rbp + 0x49c], xmm1
movss xmm0, dword [0x1403b01e0]
movss dword [rbp + 0x4a0], xmm0
movss xmm1, dword [0x1403b01e4]
mulss xmm1, dword [rax + 0x3778]
movss dword [rbp + 0x4a4], xmm1
lea rcx, [rbp + 0x498]
call fcn.1400033a0
mov dword [rsp + 0x50], eax
movaps xmm9, xmm7
addss xmm9, dword [0x14039cb9c]
movaps xmm8, xmm6
addss xmm8, dword [0x14039cae8]
divss xmm7, dword [0x14039cb60]
subss xmm10, xmm7
subss xmm10, dword [0x14039ca54]
mulss xmm6, xmm13
movss xmm7, dword [rbp + 0x120]
subss xmm7, xmm6
subss xmm7, dword [0x14039ca54]
cvttss2si r9d, xmm9
cvttss2si r8d, xmm8
cvttss2si edx, xmm10
cvttss2si ecx, xmm7
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
call fcn.14004c3d0
movdqa xmm0, xmmword [0x14039ce60]
movups xmmword [rbp + 0x968], xmm0
lea rcx, [rbp + 0x968]
call fcn.1400033a0
mov ebx, eax
mov rcx, qword [0x1403b0a80]
mov rcx, qword [rcx + 0x4030]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rcx]
call fcn.140005b90
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 xmm4, dword [0x14039cc3c]
divss xmm3, xmm4
xorps xmm2, xmm2
cvtsi2ss xmm2, rdx
divss xmm2, xmm4
xorps xmm1, xmm1
cvtsi2ss xmm1, r9
divss xmm1, xmm4
xorps xmm0, xmm0
cvtsi2ss xmm0, r10
divss xmm0, xmm4
mov rax, qword [0x1403b0a80]
movss dword [rbp - 0x60], xmm0
movss dword [rbp - 0x5c], xmm1
movss dword [rbp - 0x58], xmm2
mulss xmm3, dword [rax + 0x3778]
movss dword [rbp - 0x54], xmm3
lea rcx, [rbp - 0x60]
call fcn.1400033a0
movaps xmm0, xmm7
addss xmm0, xmm8
movss dword [rbp + 0x300], xmm0
movaps xmm1, xmm10
addss xmm1, xmm9
movss dword [rbp + 0x304], xmm1
movss dword [rbp + 0x308], xmm7
movss dword [rbp + 0x30c], xmm10
mov dword [rsp + 0x28], r14d
movss dword [rsp + 0x20], xmm12
mov r9d, eax
lea r8, [rbp + 0x300]
lea rdx, [rbp + 0x308]
mov rcx, r11
call fcn.140023cf0
cmp byte [0x1403b0acf], 0
je 0x14005fbac
cmp byte [rbp + 0xc00], 0
je 0x14005fbac
cmp byte [rbp + 0xc02], 0
je 0x14005fbac
movss xmm0, dword [0x1403b02da]
comiss xmm0, xmm12
jbe 0x14005fbac
cmp qword [rbp + 0xba0], 0x16dd
je 0x14005fbac
mov qword [rbp + 0x1a0], 0
mov dword [rbp + 0x1a8], 0
mov qword [rbp + 0x190], 0
mov dword [rbp + 0x198], 0
mov qword [rbp + 0x180], 0
mov dword [rbp + 0x188], 0
mov qword [rbp + 0x1f0], 0
mov dword [rbp + 0x1f8], 0
mov qword [rbp + 0x1e0], 0
mov dword [rbp + 0x1e8], 0
mov qword [rbp + 0x200], 0
mov dword [rbp + 0x208], 0
mov qword [rbp + 0x1c8], 0
mov dword [rbp + 0x1d0], 0
mov qword [rbp + 0x1b0], 0
mov dword [rbp + 0x1b8], 0
mov qword [rbp + 0x130], 0
mov qword [rbp + 0x128], 0
mov qword [rbp + 0xe0], 0
mov qword [rbp + 0x138], 0
mov qword [rbp + 0xe8], 0
mov qword [rbp + 0x100], 0
mov qword [rbp + 0xf0], 0
mov qword [rbp + 0xf8], 0
lea rax, [rbp + 0x1b0]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x1c8]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x200]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x1e0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x1f0]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x180]
lea r8, [rbp + 0x190]
lea rdx, [rbp + 0x1a0]
lea rcx, [rbp + 0xb30]
call fcn.14004cf80
movss xmm6, dword [0x1403b0b6c]
movss xmm7, dword [0x1403b0b68]
movsd xmm0, qword [rbp + 0x1a0]
movsd qword [rbp + 0x600], xmm0
mov eax, dword [rbp + 0x1a8]
mov dword [rbp + 0x608], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x130]
lea rdx, [rbp + 0x600]
call fcn.14004aa70
test al, al
je 0x1400602f5
movsd xmm0, qword [rbp + 0x190]
movsd qword [rbp + 0x610], xmm0
mov eax, dword [rbp + 0x198]
mov dword [rbp + 0x618], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x128]
lea rdx, [rbp + 0x610]
call fcn.14004aa70
test al, al
je 0x1400602f5
movsd xmm0, qword [rbp + 0x180]
movsd qword [rbp + 0x620], xmm0
mov eax, dword [rbp + 0x188]
mov dword [rbp + 0x628], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0xe0]
lea rdx, [rbp + 0x620]
call fcn.14004aa70
test al, al
je 0x1400602f5
movsd xmm0, qword [rbp + 0x1f0]
movsd qword [rbp + 0x700], xmm0
mov eax, dword [rbp + 0x1f8]
mov dword [rbp + 0x708], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x138]
lea rdx, [rbp + 0x700]
call fcn.14004aa70
test al, al
je 0x1400602f5
movsd xmm0, qword [rbp + 0x1e0]
movsd qword [rbp + 0x730], xmm0
mov eax, dword [rbp + 0x1e8]
mov dword [rbp + 0x738], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0xe8]
lea rdx, [rbp + 0x730]
call fcn.14004aa70
test al, al
je 0x1400602f5
movsd xmm0, qword [rbp + 0x200]
movsd qword [rbp + 0x720], xmm0
mov eax, dword [rbp + 0x208]
mov dword [rbp + 0x728], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0x100]
lea rdx, [rbp + 0x720]
call fcn.14004aa70
test al, al
jne 0x14005f54d
lea rcx, [rbp + 0xb30]
call fcn.14004f2d0
movss xmm8, dword [0x14039cc40]
movsd xmm10, qword [0x14039caf8]
jmp 0x140060361
movsd xmm0, qword [rbp + 0x1c8]
movsd qword [rbp + 0x710], xmm0
mov eax, dword [rbp + 0x1d0]
mov dword [rbp + 0x718], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0xf0]
lea rdx, [rbp + 0x710]
call fcn.14004aa70
test al, al
je 0x14005f52a
movsd xmm0, qword [rbp + 0x1b0]
movsd qword [rbp + 0x6f0], xmm0
mov eax, dword [rbp + 0x1b8]
mov dword [rbp + 0x6f8], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm7
movq r9, xmm0
lea r8, [rbp + 0xf8]
lea rdx, [rbp + 0x6f0]
call fcn.14004aa70
test al, al
je 0x14005f52a
mov dword [rsp + 0x20], 0x96
cmp byte [rbp + 0xc01], 0
je 0x14005f893
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x66c]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movsd xmm9, qword [rbp + 0x128]
movq rdx, xmm9
movsd xmm6, qword [rbp + 0x130]
movq rcx, xmm6
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x670]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movsd xmm10, qword [rbp + 0x138]
movq rdx, xmm10
movq rcx, xmm9
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x674]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movsd xmm8, qword [rbp + 0xe0]
movq rdx, xmm8
movq rcx, xmm10
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x678]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm8
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x598]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movsd xmm11, qword [rbp + 0xe8]
movq rdx, xmm11
movq rcx, xmm6
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x59c]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movsd xmm7, qword [rbp + 0x100]
movq rdx, xmm7
movq rcx, xmm9
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x5a0]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movsd xmm9, qword [rbp + 0xf0]
movq rdx, xmm9
movq rcx, xmm8
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x5a4]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movsd xmm6, qword [rbp + 0xf8]
movq rdx, xmm6
movq rcx, xmm10
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x5a8]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movq rdx, xmm7
movq rcx, xmm11
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x5ac]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm7
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x5b0]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movq rdx, xmm9
movq rcx, xmm6
call fcn.14004caa0
xor edx, edx
mov r9d, 0xcc
mov r8d, r9d
lea rcx, [rbp + 0x5b4]
jmp 0x14005fb87
mov edx, 0xff
mov r9d, 0x99
mov r8d, 0x33
lea rcx, [rbp + 0x5b8]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movsd xmm9, qword [rbp + 0x128]
movq rdx, xmm9
movsd xmm6, qword [rbp + 0x130]
movq rcx, xmm6
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
mov r9d, 0x99
mov r8d, 0x33
lea rcx, [rbp + 0x5bc]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movsd xmm10, qword [rbp + 0x138]
movq rdx, xmm10
movq rcx, xmm9
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
mov r9d, 0x99
mov r8d, 0x33
lea rcx, [rbp + 0x5c0]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movsd xmm8, qword [rbp + 0xe0]
movq rdx, xmm8
movq rcx, xmm10
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
mov r9d, 0x99
mov r8d, 0x33
lea rcx, [rbp + 0x5c4]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm8
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
mov r9d, 0x99
mov r8d, 0x33
lea rcx, [rbp + 0x5c8]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movsd xmm11, qword [rbp + 0xe8]
movq rdx, xmm11
movq rcx, xmm6
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
mov r9d, 0x99
mov r8d, 0x33
lea rcx, [rbp + 0x5cc]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movsd xmm7, qword [rbp + 0x100]
movq rdx, xmm7
movq rcx, xmm9
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
mov r9d, 0x99
mov r8d, 0x33
lea rcx, [rbp + 0x5d0]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movsd xmm9, qword [rbp + 0xf0]
movq rdx, xmm9
movq rcx, xmm8
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
mov r9d, 0x99
mov r8d, 0x33
lea rcx, [rbp + 0x5d4]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movsd xmm6, qword [rbp + 0xf8]
movq rdx, xmm6
movq rcx, xmm10
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
mov r9d, 0x99
mov r8d, 0x33
lea rcx, [rbp + 0x5d8]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movq rdx, xmm7
movq rcx, xmm11
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
mov r9d, 0x99
mov r8d, 0x33
lea rcx, [rbp + 0x65c]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movq rdx, xmm6
movq rcx, xmm7
call fcn.14004caa0
mov dword [rsp + 0x20], 0x96
mov edx, 0xff
mov r9d, 0x99
mov r8d, 0x33
lea rcx, [rbp + 0x630]
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movq rdx, xmm9
movq rcx, xmm6
call fcn.14004caa0
mov edx, 0xff
mov r9d, 0x99
mov r8d, 0x33
lea rcx, [rbp + 0x740]
mov dword [rsp + 0x20], 0x96
call fcn.14004a9c0
mov r9d, 1
mov r8d, dword [rax]
movq rdx, xmm11
movq rcx, xmm9
call fcn.14004caa0
cmp byte [0x1403a70e3], 0
je 0x140060060
cmp byte [rbp + 0xc00], 0
je 0x140060060
cmp byte [rbp + 0xc02], 0
je 0x140060060
movss xmm0, dword [0x1403b02da]
comiss xmm0, xmm12
jbe 0x140060060
cmp qword [rbp + 0xba0], 0x16dd
je 0x140060060
movsd xmm6, qword [rbp + 0xc16]
mov ebx, dword [rbp + 0xc1e]
mov qword [rbp], 0
mov dword [rbp + 8], 0
mov qword [rbp - 0x10], 0
mov dword [rbp - 8], 0
mov qword [rbp - 0x20], 0
mov dword [rbp - 0x18], 0
mov qword [rbp - 0x30], 0
mov dword [rbp - 0x28], 0
mov qword [rbp - 0x40], 0
mov dword [rbp - 0x38], 0
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x78], 0
mov qword [rbp - 0x80], 0
mov qword [rbp - 0x78], 0
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x20]
lea r8, [rbp - 0x10]
lea rdx, [rbp]
lea rcx, [rbp + 0xb30]
call fcn.14004de60
movss xmm7, dword [0x1403b0b6c]
movss xmm8, dword [0x1403b0b68]
movsd qword [rbp + 0x6e0], xmm6
mov dword [rbp + 0x6e8], ebx
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rsp + 0x70]
lea rdx, [rbp + 0x6e0]
call fcn.14004aa70
test al, al
je 0x1400602f5
movsd xmm0, qword [rbp]
movsd qword [rbp + 0x6d0], xmm0
mov eax, dword [rbp + 8]
mov dword [rbp + 0x6d8], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rsp + 0x68]
lea rdx, [rbp + 0x6d0]
call fcn.14004aa70
test al, al
je 0x1400602f5
movsd xmm0, qword [rbp - 0x10]
movsd qword [rbp + 0x6c0], xmm0
mov eax, dword [rbp - 8]
mov dword [rbp + 0x6c8], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x6c0]
call fcn.14004aa70
test al, al
je 0x1400602f5
movsd xmm0, qword [rbp - 0x20]
movsd qword [rbp + 0x6b0], xmm0
mov eax, dword [rbp - 0x18]
mov dword [rbp + 0x6b8], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rsp + 0x78]
lea rdx, [rbp + 0x6b0]
call fcn.14004aa70
test al, al
je 0x1400602f5
movsd xmm0, qword [rbp - 0x30]
movsd qword [rbp + 0x6a0], xmm0
mov eax, dword [rbp - 0x28]
mov dword [rbp + 0x6a8], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rbp - 0x80]
lea rdx, [rbp + 0x6a0]
call fcn.14004aa70
test al, al
je 0x1400602f5
movsd xmm0, qword [rbp - 0x40]
movsd qword [rbp + 0x690], xmm0
mov eax, dword [rbp - 0x38]
mov dword [rbp + 0x698], eax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movq r9, xmm0
lea r8, [rbp - 0x78]
lea rdx, [rbp + 0x690]
call fcn.14004aa70
test al, al
je 0x14005f52a
mov dword [rsp + 0x20], 0xff
cmp byte [rbp + 0xc01], 0
je 0x14005ff33
xor r9d, r9d
xor r8d, r8d
mov edx, 0xff
lea rcx, [rbp + 0x634]
call fcn.14004a9c0
mov r9d, 3
mov r8d, dword [rax]
movsd xmm6, qword [rsp + 0x68]
movq rdx, xmm6
mov rcx, qword [rsp + 0x70]
call fcn.14004caa0
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, 0x66
mov r8d, 0x33
lea rcx, [rbp + 0x764]
call fcn.14004a9c0
mov r9d, 3
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x60]
movq rcx, xmm6
call fcn.14004caa0
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, 0x66
mov r8d, 0x33
lea rcx, [rbp + 0x760]
call fcn.14004a9c0
mov r9d, 3
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x78]
movq rcx, xmm6
call fcn.14004caa0
mov dword [rsp + 0x20], 0xff
mov edx, 0xff
mov r9d, 0x66
mov r8d, 0x33
lea rcx, [rbp + 0x75c]
call fcn.14004a9c0
mov r9d, 3
mov r8d, dword [rax]
mov rdx, qword [rbp - 0x80]
movq rcx, xmm6
call fcn.14004caa0
mov edx, 0xff
mov r9d, 0x66
mov r8d, 0x33
lea rcx, [rbp + 0x758]
jmp 0x14006003c
mov edx, 0x66
mov r9d, 0xff
mov r8d, 0x99
lea rcx, [rbp + 0x754]
call fcn.14004a9c0
mov r9d, 3
mov r8d, dword [rax]
movsd xmm6, qword [rsp + 0x68]
movq rdx, xmm6
mov rcx, qword [rsp + 0x70]
call fcn.14004caa0
mov dword [rsp + 0x20], 0xff
mov edx, 0x66
mov r9d, 0xff
mov r8d, 0x99
lea rcx, [rbp + 0x750]
call fcn.14004a9c0
mov r9d, 3
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x60]
movq rcx, xmm6
call fcn.14004caa0
mov dword [rsp + 0x20], 0xff
mov edx, 0x66
mov r9d, 0xff
mov r8d, 0x99
lea rcx, [rbp + 0x74c]
call fcn.14004a9c0
mov r9d, 3
mov r8d, dword [rax]
mov rdx, qword [rsp + 0x78]
movq rcx, xmm6
call fcn.14004caa0
mov dword [rsp + 0x20], 0xff
mov edx, 0x66
mov r9d, 0xff
mov r8d, 0x99
lea rcx, [rbp + 0x748]
call fcn.14004a9c0
mov r9d, 3
mov r8d, dword [rax]
mov rdx, qword [rbp - 0x80]
movq rcx, xmm6
call fcn.14004caa0
mov edx, 0x66
mov r9d, 0xff
mov r8d, 0x99
lea rcx, [rbp + 0x744]
mov dword [rsp + 0x20], 0xff
call fcn.14004a9c0
mov r9d, 3
mov r8d, dword [rax]
mov rdx, qword [rbp - 0x78]
movq rcx, xmm6
call fcn.14004caa0
cmp byte [0x1403a713a], 0
je 0x1400602f5
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x1400600b1
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x1400600b1
mov ecx, 6
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x1400600b1
mov ecx, 5
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1400602f5
mov qword [rbp - 0x70], 0
movss xmm1, dword [0x1403b0b68]
movsd xmm0, qword [rbp + 0xc52]
movsd qword [rbp + 0x680], xmm0
mov eax, dword [rbp + 0xc5a]
mov dword [rbp + 0x688], eax
movss xmm0, dword [0x1403b0b6c]
unpcklps xmm0, xmm1
movq r9, xmm0
lea r8, [rbp - 0x70]
lea rdx, [rbp + 0x680]
call fcn.14004aa70
test al, al
je 0x1400602f5
mov eax, dword [0x1403b0ae0]
test eax, eax
jne 0x14006020e
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 [0x1403b0ad8], 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 [0x1403b0ab8], 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 [0x1403b0ac8], 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 [0x1403b0b20], r8d
cmp r8d, 5
jl 0x1400601d2
neg dword [0x1403b0ad8]
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 [0x1403b0b20], r8d
mov eax, dword [0x1403b0ae0]
cmp r8d, 5
jl 0x14006020e
neg dword [0x1403b0ab8]
inc eax
mov dword [0x1403b0ae0], eax
cmp eax, 0xe
jne 0x140060222
mov dword [0x1403b0ae0], r14d
cmp byte [rbp + 0xc00], 0
je 0x1400602f5
cmp byte [rbp + 0xc01], 0
je 0x1400602f5
cmp qword [0x1403b0230], 0
je 0x1400602f5
cmp byte [rbp + 0xc02], 0
je 0x1400602f5
movd xmm1, dword [0x1403b0ab8]
cvtdq2ps xmm1, xmm1
addss xmm1, dword [rbp - 0x6c]
movd xmm0, dword [0x1403b0ad8]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [rbp - 0x70]
movss dword [rbp + 0x310], xmm0
movss dword [rbp + 0x314], xmm1
movss xmm2, dword [0x1403b0ac8]
comiss xmm12, xmm2
jae 0x1400602f5
subss xmm2, xmm13
mov dword [rsp + 0x28], 0x1ff
movss xmm0, dword [0x14039cb74]
movss dword [rsp + 0x20], xmm0
xorps xmm3, xmm3
lea rdx, [rbp + 0x310]
mov rcx, rdi
call fcn.140022ee0
movss xmm0, dword [0x14039cb1c]
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.1400214d0
mov dword [rdi + 0x78], r14d
mov rdx, qword [rbp + 0xbd2]
cmp rdx, 0xf
jbe 0x140060336
inc rdx
mov rcx, qword [rbp + 0xbba]
cmp rdx, 0x1000
mov rax, rcx
jb 0x140060331
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400603c4
call fcn.140075c30
movsd xmm10, qword [0x14039caf8]
movss xmm8, dword [0x14039cc40]
mov qword [rbp + 0xbca], r14
mov qword [rbp + 0xbd2], 0xf
mov byte [rbp + 0xbba], 0
add r13, 0x12e
cmp r13, rsi
je 0x1400603cb
movss xmm14, dword [0x14039c9e4]
mov ebx, dword [rbp - 0x68]
jmp 0x14005bbc0
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 [0x1403b0adc]
jmp 0x1400603de
movss xmm13, dword [0x14039c9e4]
test r8b, r8b
je 0x1400603f3
call fcn.140059900
jmp 0x1400603f3
movss xmm13, dword [0x14039c9e4]
cmp byte [0x1403b0b2b], 0
je 0x14006058d
movss xmm0, dword [0x1403b01e8]
movss dword [rbp - 0x60], xmm0
movss xmm1, dword [0x1403b01ec]
movss dword [rbp - 0x5c], xmm1
movss xmm0, dword [0x1403b01f0]
movss dword [rbp - 0x58], xmm0
movss xmm1, dword [0x1403b01f4]
mov r8, qword [0x1403b0a80]
mulss xmm1, dword [r8 + 0x3778]
movss dword [rbp - 0x54], xmm1
lea rcx, [rbp - 0x60]
call fcn.1400033a0
mov ebx, eax
xorps xmm6, xmm6
movss xmm8, dword [0x14039cb74]
test eax, 0xff000000
je 0x1400604ce
movss xmm2, dword [0x1403a7114]
comiss xmm6, xmm2
jae 0x1400604ce
subss xmm2, xmm13
mov dword [rsp + 0x28], 0x1ff
movss dword [rsp + 0x20], xmm8
xorps xmm3, xmm3
lea rdx, [rbp + 0x1d8]
mov rcx, rdi
call fcn.140022ee0
movss xmm7, dword [0x14039ca54]
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.1400214d0
mov dword [rdi + 0x78], r14d
mov r8, qword [0x1403b0a80]
jmp 0x1400604d6
movss xmm7, dword [0x14039ca54]
cmp byte [0x1403b0b0a], 0
je 0x14006058d
movss xmm0, dword [0x1403b01b8]
movss dword [rbp - 0x60], xmm0
movss xmm1, dword [0x1403b01bc]
movss dword [rbp - 0x5c], xmm1
movss xmm0, dword [0x1403b01c0]
movss dword [rbp - 0x58], xmm0
movss xmm1, dword [0x1403b01c4]
mulss xmm1, dword [r8 + 0x3778]
movss dword [rbp - 0x54], xmm1
lea rcx, [rbp - 0x60]
call fcn.1400033a0
mov ebx, eax
test eax, 0xff000000
je 0x14006058d
movss xmm2, dword [0x1403a718c]
comiss xmm6, xmm2
jae 0x14006058d
subss xmm2, xmm13
mov dword [rsp + 0x28], 0x1ff
movss dword [rsp + 0x20], xmm8
xorps xmm3, xmm3
lea rdx, [rbp + 0x1d8]
mov rcx, rdi
call fcn.140022ee0
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.1400214d0
mov dword [rdi + 0x78], r14d
mov rcx, qword [rbp + 0xf18]
xor rcx, rsp
call fcn.140075b40
lea r11, [rsp + 0x10c0]
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.14004a490
nop
call fcn.14002e7e0
int3