Function at 0x14003eef0
Capabilities:
Encode data using base64
Encode data using xor
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x888]
sub rsp, 0x960
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 [0x1400d2d00]
xor rax, rsp
mov qword [rbp + 0x7b0], rax
mov r12, rcx
xor ebx, ebx
mov rcx, qword [0x1400d33c8]
call fcn.1400128f0
call fcn.14000a3a0
mov r13, rax
mov qword [rbp - 0x70], rax
movss xmm0, dword [0x14005b220]
movss dword [rsp + 0x68], xmm0
mov qword [rsp + 0x70], rbx
cmp byte [0x1400d2c4b], bl
je 0x14003f05a
call fcn.14000a900
movss xmm2, dword [rax + 0xd8]
cvtps2pd xmm2, xmm2
movsd xmm0, qword [0x1400b04f8]
movsd qword [rsp + 0x50], xmm0
movzx ecx, word [0x1400b0500]
mov word [rsp + 0x58], cx
cmp byte [0x1400b0501], bl
je 0x14003f006
mov byte [rsp + 0x50], 0x62
xor byte [rsp + 0x51], 0x39
xor byte [rsp + 0x52], 0x3a
xor byte [rsp + 0x53], 0x3b
xor byte [rsp + 0x54], 0x3c
xor byte [rsp + 0x55], 0x3d
xor byte [rsp + 0x56], 0x3e
xor byte [rsp + 0x57], 0x3f
xor byte [rsp + 0x58], 0x40
xor byte [rsp + 0x59], 0x41
movq r8, xmm2
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x6b0]
call fcn.14003bae0
movaps xmm0, xmmword [0x14005b280]
movdqa xmmword [rbp - 0x80], xmm0
lea rax, [rbp + 0x6b0]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], bl
lea r9, [rbp - 0x80]
mov edx, 0x32
mov r8d, edx
movss xmm0, dword [0x14005fa18]
movd ecx, xmm0
call fcn.14003d910
mov rax, qword [0x1400d38c8]
mov qword [rsp + 0x60], rax
mov rcx, qword [0x1400d38d0]
mov qword [rbp + 0x1c0], rcx
cmp rax, rcx
je 0x140042c7f
movzx edi, byte [rsp + 0x40]
movzx esi, byte [rsp + 0x40]
movzx ebx, byte [rsp + 0x40]
movzx r14d, byte [rsp + 0x40]
movss xmm14, dword [0x14005b184]
xorps xmm13, xmm13
movsd xmm15, qword [0x1400b0b40]
mov r15, qword [rax + 8]
lea rcx, [r15 + 0x5e0]
call fcn.14003b760
shl eax, 4
movsxd rcx, eax
add rcx, 0x598
add rcx, r15
call fcn.14003ba40
mov rdx, rax
lea rcx, [rbp + 0x6b0]
call fcn.14003b940
lea rdx, [r15 + 0x1c0]
lea rcx, [rbp + 0x600]
call fcn.14003b940
lea rdx, [rbp + 0x520]
lea rcx, [rbp + 0x600]
call fcn.14003e8d0
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
movups xmm8, xmmword [rax + 0x20]
movups xmm9, xmmword [rax + 0x30]
lea rdx, [rbp + 0x490]
lea rcx, [rbp + 0x6b0]
call fcn.14003e8d0
movaps xmmword [rbp + 0x590], xmm6
movaps xmmword [rbp + 0x5a0], xmm7
movaps xmmword [rbp + 0x5b0], xmm8
movaps xmmword [rbp + 0x5c0], xmm9
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x4e0], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x4f0], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x500], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rbp + 0x510], xmm1
lea r8, [rbp + 0x590]
lea rdx, [rbp + 0x4e0]
lea rcx, [rbp + 0x440]
call fcn.14003e300
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x590], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x5a0], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rbp + 0x5b0], xmm0
movups xmm1, xmmword [rax + 0x30]
xorps xmm12, xmm12
cvtss2sd xmm12, xmm1
movaps xmm0, xmm1
shufps xmm0, xmm1, 0x55
xorps xmm10, xmm10
cvtss2sd xmm10, xmm0
shufps xmm1, xmm1, 0xaa
xorps xmm11, xmm11
cvtss2sd xmm11, xmm1
movsd qword [rbp + 0x440], xmm12
movsd qword [rbp + 0x448], xmm10
movsd qword [rbp + 0x450], xmm11
lea r8, [rbp + 0x440]
lea rdx, [rbp + 0x248]
mov rcx, qword [0x1400d35c8]
call fcn.140054b00
movups xmm0, xmmword [rax]
movups xmmword [r12 + 0x10], xmm0
movaps xmm1, xmm11
addsd xmm1, xmm15
movaps xmm0, xmm12
unpcklpd xmm0, xmm10
movaps xmmword [rbp + 0x440], xmm0
movsd qword [rbp + 0x4a0], xmm1
movsd qword [rbp + 0x450], xmm1
lea r8, [rbp + 0x440]
lea rdx, [rbp + 0x238]
mov rcx, qword [0x1400d35c8]
call fcn.140054b00
movups xmm0, xmmword [rax]
movups xmmword [r12 + 0xf0], xmm0
movaps xmm1, xmm11
subsd xmm1, qword [0x1400b0b30]
movaps xmm0, xmm12
unpcklpd xmm0, xmm10
movaps xmmword [rbp + 0x440], xmm0
movsd qword [rbp + 0x4a0], xmm1
movsd qword [rbp + 0x450], xmm1
lea r8, [rbp + 0x440]
lea rdx, [rbp + 0x228]
mov rcx, qword [0x1400d35c8]
call fcn.140054b00
movups xmm0, xmmword [rax]
movups xmmword [r12 + 0x100], xmm0
mov r15, qword [rsp + 0x60]
mov r15, qword [r15 + 8]
lea rcx, [r15 + 0x5e0]
call fcn.14003b760
shl eax, 4
cdqe
lea rcx, [r15 + 0x598]
add rcx, rax
call fcn.14003ba40
lea rdx, [rax + 0x2940]
lea rcx, [rbp + 0x600]
call fcn.14003b940
lea rdx, [r15 + 0x1c0]
lea rcx, [rbp + 0x6b0]
call fcn.14003b940
lea rdx, [rbp + 0x520]
lea rcx, [rbp + 0x6b0]
call fcn.14003e8d0
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
movups xmm8, xmmword [rax + 0x20]
movups xmm9, xmmword [rax + 0x30]
lea rdx, [rbp + 0x490]
lea rcx, [rbp + 0x600]
call fcn.14003e8d0
movaps xmmword [rbp + 0x590], xmm6
movaps xmmword [rbp + 0x5a0], xmm7
movaps xmmword [rbp + 0x5b0], xmm8
movaps xmmword [rbp + 0x5c0], xmm9
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x4e0], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x4f0], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x500], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rbp + 0x510], xmm1
lea r8, [rbp + 0x590]
lea rdx, [rbp + 0x4e0]
lea rcx, [rbp + 0x440]
call fcn.14003e300
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x590], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x5a0], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rbp + 0x5b0], xmm0
movups xmm1, xmmword [rax + 0x30]
xorps xmm8, xmm8
cvtss2sd xmm8, xmm1
movaps xmm0, xmm1
shufps xmm0, xmm1, 0x55
xorps xmm6, xmm6
cvtss2sd xmm6, xmm0
shufps xmm1, xmm1, 0xaa
xorps xmm7, xmm7
cvtss2sd xmm7, xmm1
movsd qword [rbp + 0x440], xmm8
movsd qword [rbp + 0x448], xmm6
movsd qword [rbp + 0x450], xmm7
lea r8, [rbp + 0x440]
lea rdx, [rbp + 0x218]
mov rcx, qword [0x1400d35c8]
call fcn.140054b00
movups xmm0, xmmword [rax]
movups xmmword [r12], xmm0
addsd xmm7, qword [0x1400b0b30]
movaps xmm0, xmm8
unpcklpd xmm0, xmm6
movaps xmmword [rbp + 0x440], xmm0
movsd qword [rbp + 0x4a0], xmm7
movsd qword [rbp + 0x450], xmm7
lea r8, [rbp + 0x440]
lea rdx, [rbp + 0x5e0]
mov rcx, qword [0x1400d35c8]
call fcn.140054b00
movups xmm0, xmmword [rax]
movups xmmword [r12 + 0xe0], xmm0
movsd xmm1, qword [r12 + 8]
subsd xmm1, qword [r12 + 0x108]
andps xmm1, xmmword [0x14005fab0]
cvtpd2ps xmm15, xmm1
movaps xmm8, xmm15
mulss xmm8, dword [0x1400b0b18]
mov r15, qword [0x1400d3868]
subsd xmm10, qword [r15 + 0x60]
cvtpd2ps xmm0, xmm10
movss xmm9, dword [0x14005b1b8]
movaps xmm1, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm6, xmm0
subsd xmm12, qword [r15 + 0x58]
cvtpd2ps xmm0, xmm12
movaps xmm1, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
subsd xmm11, qword [r15 + 0x68]
cvtpd2ps xmm0, xmm11
movaps xmm1, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm6
ja 0x14003f4fb
xorps xmm0, xmm0
sqrtss xmm0, xmm6
jmp 0x14003f503
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
cvtss2sd xmm0, xmm0
divsd xmm0, qword [0x14005fa08]
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm0
movss dword [rsp + 0x78], xmm6
mov ecx, 0x5b8
call fcn.14003ba40
mov r15, rax
cmp byte [0x1400d3909], 0
je 0x14003f564
lea rcx, [rax + 0x758]
call fcn.14003b6c0
movzx r13d, al
lea rcx, [r15 + 0x93a]
call fcn.14003b6c0
test al, 0x10
jne 0x1400426a0
test r13b, 0x10
jne 0x1400426a0
mov r13, qword [rbp - 0x70]
comiss xmm6, dword [0x1400c7678]
jbe 0x14003f57f
mov rax, qword [0x1400d3868]
cmp qword [rax + 0x28], 0
jne 0x1400426a0
cmp byte [0x1400d2c30], 0
je 0x14003f67f
mov eax, dword [0x1400d3960]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd xmm2, qword [r12]
subsd xmm2, xmm0
mov eax, dword [0x1400d3964]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd xmm1, qword [r12 + 8]
subsd xmm1, xmm0
mulsd xmm1, xmm1
mulsd xmm2, xmm2
addsd xmm1, xmm2
cvtpd2ps xmm3, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm3
ja 0x14003f5e8
xorps xmm7, xmm7
sqrtss xmm7, xmm3
jmp 0x14003f5f3
movaps xmm0, xmm3
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm7, xmm0
cmp byte [0x1400d2c31], 0
je 0x14003f654
mov rax, qword [rsp + 0x60]
mov r15, qword [rax + 8]
lea rcx, [r15 + 0x2e8]
call fcn.14003b800
movaps xmm6, xmm0
lea rcx, [r15 + 0x2f0]
call fcn.14003b800
addss xmm0, dword [0x14005f74c]
comiss xmm0, xmm6
jb 0x14003f67f
movss xmm0, dword [0x1400d2c34]
comiss xmm0, xmm7
jbe 0x14003f67f
movss xmm0, dword [rsp + 0x68]
comiss xmm0, xmm7
jbe 0x14003f67f
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax]
mov qword [rsp + 0x70], rcx
jmp 0x14003f679
movss xmm0, dword [0x1400d2c34]
comiss xmm0, xmm7
jbe 0x14003f67f
movss xmm0, dword [rsp + 0x68]
comiss xmm0, xmm7
jbe 0x14003f67f
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
mov qword [rsp + 0x70], rax
movss dword [rsp + 0x68], xmm7
mov rax, qword [0x1400d3868]
cmp qword [rax + 0x28], 0
sete byte [rsp + 0x40]
movss xmm7, dword [0x1400d2828]
movss xmm9, dword [0x1400d2824]
movss xmm10, dword [0x1400d2820]
movss xmm11, dword [0x1400d2838]
movss xmm12, dword [0x1400d2834]
movss xmm13, dword [0x1400d2830]
movss xmm0, dword [0x1400d2840]
movss dword [rbp + 0x5d0], xmm0
movss xmm1, dword [0x1400d2844]
movss dword [rbp + 0x5d4], xmm1
movss xmm0, dword [0x1400d2848]
movss dword [rbp + 0x5d8], xmm0
mov dword [rbp + 0x5dc], 0x3f800000
xorps xmm1, xmm1
movups xmmword [rbp + 0x480], xmm1
mov rax, qword [rsp + 0x60]
mov r15, qword [rax + 8]
lea rcx, [r15 + 0x2e8]
cmp byte [0x1400d2c31], 0
je 0x14003f7a1
call fcn.14003b800
movaps xmm6, xmm0
lea rcx, [r15 + 0x2f0]
call fcn.14003b800
addss xmm0, dword [0x14005f74c]
comiss xmm0, xmm6
jb 0x14003f773
movss dword [rbp + 0x190], xmm10
movss dword [rbp + 0x194], xmm9
movss dword [rbp + 0x198], xmm7
mov dword [rbp + 0x19c], 0x3f800000
lea rax, [rbp + 0x190]
jmp 0x14003f80c
movss dword [rbp + 0x1a0], xmm13
movss dword [rbp + 0x1a4], xmm12
movss dword [rbp + 0x1a8], xmm11
mov dword [rbp + 0x1ac], 0x3f800000
lea rax, [rbp + 0x1a0]
jmp 0x14003f80c
call fcn.14003b800
movaps xmm6, xmm0
lea rcx, [r15 + 0x2f0]
call fcn.14003b800
addss xmm0, dword [0x14005f74c]
comiss xmm0, xmm6
jb 0x14003f7ef
movss dword [rbp + 0x1b0], xmm10
movss dword [rbp + 0x1b4], xmm9
movss dword [rbp + 0x1b8], xmm7
mov dword [rbp + 0x1bc], 0x3f800000
lea rax, [rbp + 0x1b0]
jmp 0x14003f80c
movss dword [rbp - 0x80], xmm13
movss dword [rbp - 0x7c], xmm12
movss dword [rbp - 0x78], xmm11
mov dword [rbp - 0x74], 0x3f800000
lea rax, [rbp - 0x80]
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x480], xmm0
cmp byte [0x1400d3908], 0
je 0x14003f9d2
mov eax, dword [0x1400d390c]
test eax, eax
jne 0x14003f8b4
movd xmm6, dword [0x1400d2c40]
cvtdq2ps xmm6, xmm6
lea rcx, [rbp + 0x480]
call fcn.140007bd0
mov r9d, eax
movsd xmm1, qword [r12 + 0xe8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [r12 + 0xe0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x188], xmm0
movss dword [rbp + 0x18c], xmm1
mov eax, dword [0x1400d3960]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x50], xmm0
mov dword [rbp - 0x4c], 0
movss dword [rsp + 0x20], xmm6
lea r8, [rbp + 0x188]
lea rdx, [rbp - 0x50]
mov rcx, r13
call fcn.14001e040
mov eax, dword [0x1400d390c]
cmp eax, 1
jne 0x14003f947
movd xmm6, dword [0x1400d2c40]
cvtdq2ps xmm6, xmm6
lea rcx, [rbp + 0x480]
call fcn.140007bd0
mov r9d, eax
movsd xmm1, qword [r12 + 0xe8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [r12 + 0xe0]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x48], xmm0
movss dword [rbp - 0x44], xmm1
mov eax, dword [0x1400d3964]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400d3960]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x40], xmm0
movss dword [rbp - 0x3c], xmm1
movss dword [rsp + 0x20], xmm6
lea r8, [rbp - 0x48]
lea rdx, [rbp - 0x40]
mov rcx, r13
call fcn.14001e040
mov eax, dword [0x1400d390c]
cmp eax, 2
jne 0x14003f9d2
movd xmm6, dword [0x1400d2c40]
cvtdq2ps xmm6, xmm6
lea rcx, [rbp + 0x480]
call fcn.140007bd0
mov r9d, eax
movsd xmm1, qword [r12 + 0xe8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [r12 + 0xe0]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x38], xmm0
movss dword [rbp - 0x34], xmm1
mov ecx, dword [0x1400d3964]
add ecx, 0xfffffffb
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400d3960]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x30], xmm0
movss dword [rbp - 0x2c], xmm1
movss dword [rsp + 0x20], xmm6
lea r8, [rbp - 0x38]
lea rdx, [rbp - 0x30]
mov rcx, r13
call fcn.14001e040
cmp byte [0x1400d2c32], 0
je 0x14003fbaf
cmp byte [0x1400d2c38], 0
je 0x14003fbaf
mov eax, dword [0x1400d391c]
test eax, eax
jne 0x140040126
movss xmm6, dword [0x1400d2c3c]
lea rcx, [rbp + 0x480]
call fcn.140007bd0
movsd xmm2, qword [r12 + 0xe8]
cvtpd2ps xmm2, xmm2
mulss xmm8, xmm14
cvtps2pd xmm7, xmm8
movaps xmm0, xmm7
addsd xmm0, qword [r12 + 0x10]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x28], xmm0
movss dword [rbp - 0x24], xmm2
movsd xmm1, qword [r12 + 0xe0]
subsd xmm1, xmm7
cvtpd2ps xmm0, xmm1
movss dword [rbp - 0x20], xmm0
movss dword [rbp - 0x1c], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp - 0x28]
lea rdx, [rbp - 0x20]
mov rcx, r13
call fcn.14001e040
movss xmm6, dword [0x1400d2c3c]
lea rcx, [rbp + 0x480]
call fcn.140007bd0
movsd xmm2, qword [r12 + 0x18]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [r12 + 0xe0]
subsd xmm0, xmm7
cvtpd2ps xmm1, xmm0
movss dword [rbp - 0x18], xmm1
movss dword [rbp - 0x14], xmm2
movsd xmm0, qword [r12 + 0xe8]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x10], xmm1
movss dword [rbp - 0xc], xmm0
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x10]
mov rcx, r13
call fcn.14001e040
movss xmm6, dword [0x1400d2c3c]
lea rcx, [rbp + 0x480]
call fcn.140007bd0
movsd xmm2, qword [r12 + 0x18]
cvtpd2ps xmm2, xmm2
movaps xmm0, xmm7
addsd xmm0, qword [r12 + 0x10]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 8], xmm0
movss dword [rbp - 4], xmm2
movsd xmm1, qword [r12 + 0xe0]
subsd xmm1, xmm7
cvtpd2ps xmm0, xmm1
movss dword [rbp], xmm0
movss dword [rbp + 4], xmm2
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp - 8]
lea rdx, [rbp]
mov rcx, r13
call fcn.14001e040
movss xmm6, dword [0x1400d2c3c]
lea rcx, [rbp + 0x480]
call fcn.140007bd0
movsd xmm0, qword [r12 + 0x18]
cvtpd2ps xmm0, xmm0
addsd xmm7, qword [r12 + 0x10]
cvtpd2ps xmm1, xmm7
movss dword [rbp + 8], xmm1
movss dword [rbp + 0xc], xmm0
movsd xmm0, qword [r12 + 0xe8]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x10], xmm1
movss dword [rbp + 0x14], xmm0
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 8]
lea rdx, [rbp + 0x10]
mov rcx, r13
call fcn.14001e040
xor r13d, r13d
cmp byte [0x1400d3917], 0
je 0x140040aac
cmp byte [0x1400d2c38], 0
je 0x140040aac
mov rax, qword [0x1400d3868]
cmp qword [rax + 0x28], 0
je 0x140040aac
xorps xmm0, xmm0
movups xmmword [rbp + 0x600], xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0x610], xmm1
mov qword [rbp + 0x620], r13
mov qword [rbp + 0x628], 0xf
mov byte [rbp + 0x610], 0
movups xmmword [rbp + 0x630], xmm0
mov qword [rbp + 0x640], r13
mov qword [rbp + 0x648], 0xf
mov byte [rbp + 0x630], 0
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax]
add rcx, 0xa20
call fcn.14003ba40
mov r15, rax
lea rcx, [rax - 0x400001]
movabs rax, 0x7fffffffffbffffe
cmp rcx, rax
ja 0x140040aa0
lea rcx, [r15 + 0xe54]
call fcn.14003b760
mov r13d, eax
mov dword [rbp + 0x600], eax
lea rcx, [r15 + 0x4f0]
call fcn.14003ba40
mov r15, rax
lea rcx, [rax - 0x400001]
movabs rax, 0x7fffffffffbffffe
cmp rcx, rax
ja 0x14003fdfb
lea rcx, [r15 + 0x13b]
call fcn.14003b6c0
mov byte [rbp + 0x608], al
lea rcx, [r15 + 0x38]
call fcn.14003ba40
mov r15, rax
lea rcx, [rax - 0x400001]
movabs rax, 0x7fffffffffbffffe
cmp rcx, rax
ja 0x14003fdfb
lea rcx, [r15 + 0x28]
call fcn.14003ba40
mov qword [rbp + 0x690], rax
lea rcx, [r15 + 0x30]
call fcn.14003b760
test eax, eax
jle 0x14003fdfb
cmp eax, 0x32
jge 0x14003fdfb
movsxd r15, eax
mov eax, 2
mul r15
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.140055fa8
mov r13, rax
lea r8, [r15 + r15]
test rax, rax
je 0x14003fd3a
test r8, r8
je 0x14003fd3a
mov rdx, rax
mov rcx, qword [rbp + 0x690]
call fcn.140054790
xorps xmm0, xmm0
movups xmmword [rbp + 0x520], xmm0
xor eax, eax
mov qword [rbp + 0x530], rax
mov qword [rbp + 0x538], rax
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp word [r13 + r8*2], ax
jne 0x14003fd60
mov rdx, r13
lea rcx, [rbp + 0x520]
call fcn.14003af20
nop
lea rdx, [rbp + 0x520]
cmp qword [rbp + 0x538], 7
seta r9b
cmova rdx, qword [rbp + 0x520]
mov rax, qword [rbp + 0x530]
lea r8, [rdx + rax*2]
lea rdx, [rbp + 0x520]
test r9b, r9b
cmovne rdx, qword [rbp + 0x520]
lea r9, [rsp + 0x41]
lea rcx, [rbp + 0x590]
call fcn.14003acf0
mov rdx, rax
lea rcx, [rbp + 0x610]
call fcn.14003ccf0
lea rcx, [rbp + 0x590]
call fcn.14003c370
mov rcx, r13
call fcn.140055940
nop
lea rcx, [rbp + 0x520]
call fcn.14003c3d0
mov r13d, dword [rbp + 0x600]
mov dword [0x1400d27d0], r13d
mov eax, dword [rbp + 0x604]
mov dword [0x1400d27d4], eax
movzx eax, byte [rbp + 0x608]
mov byte [0x1400d27d8], al
lea rdx, [rbp + 0x610]
cmp qword [rbp + 0x628], 0xf
cmova rdx, qword [rbp + 0x610]
mov r8, qword [rbp + 0x620]
lea rcx, [0x1400d27e0]
call fcn.140042d90
lea rdx, [rbp + 0x630]
cmp qword [rbp + 0x648], 0xf
cmova rdx, qword [rbp + 0x630]
mov r8, qword [rbp + 0x640]
lea rcx, [0x1400d2800]
call fcn.140042d90
mov rcx, qword [0x1400d27f0]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, 4
jb 0x140042cf2
lea rax, [0x1400d27e0]
cmp qword [0x1400d27f8], 0xf
cmova rax, qword [0x1400d27e0]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 4
lea r9, str.None
lea r8, [0x1400d27e0]
movzx edx, r14b
lea rcx, [rbp + 0x440]
call fcn.14003be50
nop
mov r8d, 4
lea rdx, str.None
lea rcx, [rbp + 0x440]
call fcn.140042d00
xorps xmm0, xmm0
movups xmmword [rbp + 0x418], xmm0
xor r13d, r13d
mov qword [rbp + 0x428], r13
mov qword [rbp + 0x430], r13
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x418], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x428], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 0xf
mov byte [rax], r13b
mov r8, qword [rbp + 0x458]
cmp r8, 0xf
jbe 0x14003ff4e
mov rdx, qword [rbp + 0x440]
lea rcx, [rbp + 0x440]
call fcn.14003eca0
xorps xmm0, xmm0
movups xmmword [rbp + 0x560], xmm0
mov qword [rbp + 0x570], r13
mov qword [rbp + 0x578], 0xf
mov byte [rbp + 0x560], 0
lea rdx, [rbp + 0x418]
cmp qword [rbp + 0x430], 0xf
cmova rdx, qword [rbp + 0x418]
movss xmm6, dword [0x14005b224]
movss dword [rsp + 0x20], xmm6
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x438]
call fcn.140006b70
lea rdx, [rbp + 0x418]
cmp qword [rbp + 0x430], 0xf
cmova rdx, qword [rbp + 0x418]
movss dword [rsp + 0x20], xmm6
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x668]
call fcn.140006b70
mov r15d, 5
cmp byte [0x1400d2c39], 0
mov eax, 0x19
cmovne r15d, eax
cmp byte [0x1400d2c49], 0
je 0x140040714
cmp byte [0x1400d27d8], 0
jne 0x140040425
mov rax, qword [str.hPYP_E__hPYP_E__Building_Plan]
mov qword [rsp + 0x48], rax
cmp byte [0x1400b050f], 0
je 0x140040280
cmp dword [0x1400d2d50], 2
jl 0x140040243
movdqa xmm4, xmmword [0x1400b0d50]
movdqa xmm2, xmmword [0x14005f030]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400b0c10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400b0c30]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1400b0c40]
movd xmm0, dword [rsp + 0x48]
xorps xmm2, xmm0
movd dword [rsp + 0x48], xmm2
movdqa xmm3, xmmword [0x1400b0c00]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400b0c10]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400b0c30]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1400b0c40]
movd xmm0, dword [rsp + 0x4c]
xorps xmm2, xmm0
movd dword [rsp + 0x4c], xmm2
jmp 0x140040280
cmp eax, 1
jne 0x1400401cf
movss xmm6, dword [0x1400d2c3c]
lea rcx, [rbp + 0x480]
call fcn.140007bd0
movsd xmm4, qword [r12 + 0xe8]
cvtps2pd xmm0, xmm15
addsd xmm0, xmm4
cvtpd2ps xmm3, xmm0
movaps xmm1, xmm8
mulss xmm1, xmm14
cvtps2pd xmm0, xmm1
movsd xmm2, qword [r12 + 0xe0]
subsd xmm2, xmm0
cvtps2pd xmm1, xmm8
addsd xmm1, xmm2
cvtpd2ps xmm0, xmm1
movss dword [rbp + 0x18], xmm0
movss dword [rbp + 0x1c], xmm3
cvtpd2ps xmm1, xmm4
cvtpd2ps xmm0, xmm2
movss dword [rbp + 0x20], xmm0
movss dword [rbp + 0x24], xmm1
movss dword [rsp + 0x30], xmm6
mov dword [rsp + 0x28], 0xf0
movss xmm0, dword [0x14005b1dc]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x18]
lea rdx, [rbp + 0x20]
mov rcx, r13
call fcn.14001f0c0
jmp 0x14003fbaf
cmp eax, 2
jne 0x14003fbaf
cvttss2si r15d, dword [0x1400d2c3c]
lea rcx, [rbp + 0x480]
call fcn.140007bd0
mov dword [rsp + 0x48], eax
cvttss2si r9d, xmm15
cvttss2si r8d, xmm8
cvttsd2si edx, qword [r12 + 0xe8]
mulss xmm8, xmm14
cvtps2pd xmm0, xmm8
movsd xmm1, qword [r12 + 0x10]
subsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov byte [rsp + 0x38], 0
xor r13d, r13d
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x28], r15d
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
call fcn.14003d1f0
jmp 0x14003fbb2
lea r9, [rsp + 0x48]
mov r8d, r13d
nop dword [rax + rax]
mov eax, 0x51eb851f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x140040250
lea rcx, [0x1400d27e0]
cmp qword [0x1400d27f8], 0xf
cmova rcx, qword [0x1400d27e0]
lea rdx, [rsp + 0x48]
call sub.VCRUNTIME140.dll_strstr
test rax, rax
je 0x140040332
lea rax, [rbp + 0x418]
cmp qword [rbp + 0x430], 0xf
cmova rax, qword [rbp + 0x418]
movd xmm0, r15d
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [r12 + 0x18]
cvttsd2si r8d, xmm0
movss xmm1, dword [rbp + 0x438]
mulss xmm1, xmm14
cvtps2pd xmm0, xmm1
movsd xmm2, qword [r12 + 0x10]
subsd xmm2, xmm0
cvttsd2si edx, xmm2
movaps xmm0, xmmword [0x14005b280]
movaps xmmword [rbp + 0x690], xmm0
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x690]
movss xmm6, dword [0x14005fa14]
movaps xmm0, xmm6
movd ecx, xmm0
call fcn.14003d910
jmp 0x14004042d
xorps xmm0, xmm0
movups xmmword [rbp + 0x520], xmm0
mov qword [rbp + 0x530], r13
mov qword [rbp + 0x538], r13
mov r8d, 0xd
lea rdx, [0x1400b0518]
lea rcx, [rbp + 0x520]
call fcn.14003ae20
nop
lea rdx, [rbp + 0x520]
cmp qword [rbp + 0x538], 0xf
cmova rdx, qword [rbp + 0x520]
movss dword [rsp + 0x20], xmm6
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x688]
call fcn.140006b70
lea rax, [rbp + 0x520]
cmp qword [rbp + 0x538], 0xf
cmova rax, qword [rbp + 0x520]
movd xmm0, r15d
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [r12 + 0x18]
cvttsd2si r8d, xmm0
movss xmm1, dword [rbp + 0x688]
mulss xmm1, xmm14
cvtps2pd xmm0, xmm1
movsd xmm2, qword [r12 + 0x10]
subsd xmm2, xmm0
cvttsd2si edx, xmm2
movaps xmm0, xmmword [0x14005b280]
movaps xmmword [rbp + 0x690], xmm0
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x690]
movss xmm6, dword [0x14005fa14]
movaps xmm0, xmm6
movd ecx, xmm0
call fcn.14003d910
nop
lea rcx, [rbp + 0x520]
call fcn.14003c370
jmp 0x14004042d
movss xmm6, dword [0x14005fa14]
cmp byte [0x1400d27d8], 1
jne 0x1400404b1
lea rax, [rbp + 0x418]
cmp qword [rbp + 0x430], 0xf
cmova rax, qword [rbp + 0x418]
movd xmm0, r15d
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [r12 + 0x18]
cvttsd2si r8d, xmm0
movss xmm1, dword [rbp + 0x438]
mulss xmm1, xmm14
cvtps2pd xmm0, xmm1
movsd xmm2, qword [r12 + 0x10]
subsd xmm2, xmm0
cvttsd2si edx, xmm2
movaps xmm0, xmmword [0x1400b0d20]
movaps xmmword [rbp + 0x690], xmm0
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x690]
movaps xmm0, xmm6
movd ecx, xmm0
call fcn.14003d910
cmp byte [0x1400d27d8], 2
jne 0x140040535
lea rax, [rbp + 0x418]
cmp qword [rbp + 0x430], 0xf
cmova rax, qword [rbp + 0x418]
movd xmm0, r15d
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [r12 + 0x18]
cvttsd2si r8d, xmm0
movss xmm1, dword [rbp + 0x438]
mulss xmm1, xmm14
cvtps2pd xmm0, xmm1
movsd xmm2, qword [r12 + 0x10]
subsd xmm2, xmm0
cvttsd2si edx, xmm2
movaps xmm0, xmmword [0x1400b0c80]
movaps xmmword [rbp + 0x690], xmm0
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x690]
movaps xmm0, xmm6
movd ecx, xmm0
call fcn.14003d910
cmp byte [0x1400d27d8], 3
jne 0x1400405b9
lea rax, [rbp + 0x418]
cmp qword [rbp + 0x430], 0xf
cmova rax, qword [rbp + 0x418]
movd xmm0, r15d
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [r12 + 0x18]
cvttsd2si r8d, xmm0
movss xmm1, dword [rbp + 0x438]
mulss xmm1, xmm14
cvtps2pd xmm0, xmm1
movsd xmm2, qword [r12 + 0x10]
subsd xmm2, xmm0
cvttsd2si edx, xmm2
movaps xmm0, xmmword [0x1400b0d30]
movaps xmmword [rbp + 0x690], xmm0
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x690]
movaps xmm0, xmm6
movd ecx, xmm0
call fcn.14003d910
cmp byte [0x1400d27d8], 4
jne 0x14004063d
lea rax, [rbp + 0x418]
cmp qword [rbp + 0x430], 0xf
cmova rax, qword [rbp + 0x418]
movd xmm0, r15d
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [r12 + 0x18]
cvttsd2si r8d, xmm0
movss xmm1, dword [rbp + 0x438]
mulss xmm1, xmm14
cvtps2pd xmm0, xmm1
movsd xmm2, qword [r12 + 0x10]
subsd xmm2, xmm0
cvttsd2si edx, xmm2
movaps xmm0, xmmword [0x1400b0d40]
movaps xmmword [rbp + 0x690], xmm0
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x690]
movaps xmm0, xmm6
movd ecx, xmm0
call fcn.14003d910
cmp byte [0x1400d27d8], 5
jne 0x1400406c1
lea rax, [rbp + 0x418]
cmp qword [rbp + 0x430], 0xf
cmova rax, qword [rbp + 0x418]
movd xmm0, r15d
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [r12 + 0x18]
cvttsd2si r8d, xmm0
movss xmm1, dword [rbp + 0x438]
mulss xmm1, xmm14
cvtps2pd xmm0, xmm1
movsd xmm2, qword [r12 + 0x10]
subsd xmm2, xmm0
cvttsd2si edx, xmm2
movaps xmm0, xmmword [0x1400b0c70]
movaps xmmword [rbp + 0x690], xmm0
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x690]
movaps xmm0, xmm6
movd ecx, xmm0
call fcn.14003d910
cmp byte [0x1400d27d8], 6
jne 0x140040a7f
movd xmm0, r15d
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [r12 + 0x18]
cvttsd2si r8d, xmm0
movss xmm1, dword [rbp + 0x438]
mulss xmm1, xmm14
cvtps2pd xmm0, xmm1
movsd xmm2, qword [r12 + 0x10]
subsd xmm2, xmm0
movaps xmm0, xmmword [0x1400b0c90]
movaps xmmword [rbp + 0x690], xmm0
movaps xmm0, xmm6
jmp 0x140040a44
cmp byte [0x1400d27d8], 0
jne 0x1400409fe
mov rax, qword [0x1400b0510]
mov qword [rsp + 0x48], rax
cmp byte [0x1400b0517], 0
je 0x140040880
cmp dword [0x1400d2d50], 2
jl 0x140040843
movdqa xmm4, xmmword [0x1400b0d50]
movdqa xmm2, xmmword [0x14005f030]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400b0c10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400b0c30]
packuswb xmm2, xmm2
mov eax, dword [0x1400b0c40]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x48]
xorps xmm2, xmm1
movd dword [rsp + 0x48], xmm2
movdqa xmm3, xmmword [0x1400b0c00]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400b0c10]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400b0c30]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x4c]
xorps xmm2, xmm1
movd dword [rsp + 0x4c], xmm2
jmp 0x140040880
lea r9, [rsp + 0x48]
mov r8d, r13d
nop dword [rax + rax]
mov eax, 0x51eb851f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x38
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x140040850
lea rcx, [0x1400d27e0]
cmp qword [0x1400d27f8], 0xf
cmova rcx, qword [0x1400d27e0]
lea rdx, [rsp + 0x48]
call sub.VCRUNTIME140.dll_strstr
test rax, rax
je 0x1400408f2
movd xmm0, r15d
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [r12 + 0x18]
cvttsd2si r8d, xmm0
movss xmm1, dword [rbp + 0x438]
mulss xmm1, xmm14
cvtps2pd xmm0, xmm1
movsd xmm2, qword [r12 + 0x10]
subsd xmm2, xmm0
movups xmm0, xmmword [rbp + 0x480]
movdqa xmmword [rbp + 0x690], xmm0
movss xmm0, dword [0x14005fa14]
jmp 0x140040a44
xorps xmm0, xmm0
movups xmmword [rbp + 0x490], xmm0
mov qword [rbp + 0x4a0], r13
mov qword [rbp + 0x4a8], r13
mov r8d, 0xd
lea rdx, [0x1400b0518]
lea rcx, [rbp + 0x490]
call fcn.14003ae20
nop
lea rdx, [rbp + 0x490]
cmp qword [rbp + 0x4a8], 0xf
cmova rdx, qword [rbp + 0x490]
movss dword [rsp + 0x20], xmm6
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x670]
call fcn.140006b70
lea rax, [rbp + 0x490]
cmp qword [rbp + 0x4a8], 0xf
cmova rax, qword [rbp + 0x490]
movd xmm0, r15d
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [r12 + 0x18]
cvttsd2si r8d, xmm0
movss xmm1, dword [rbp + 0x670]
mulss xmm1, xmm14
cvtps2pd xmm0, xmm1
movsd xmm2, qword [r12 + 0x10]
subsd xmm2, xmm0
cvttsd2si edx, xmm2
movups xmm0, xmmword [rbp + 0x480]
movdqa xmmword [rbp + 0x690], xmm0
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x690]
movss xmm0, dword [0x14005fa14]
movd ecx, xmm0
call fcn.14003d910
nop
mov r8, qword [rbp + 0x4a8]
cmp r8, 0xf
jbe 0x140040a7f
mov rdx, qword [rbp + 0x490]
lea rcx, [rbp + 0x490]
call fcn.14003eca0
jmp 0x140040a7f
movsd xmm0, qword [r12 + 0x18]
addsd xmm0, qword [0x1400b0b38]
cvttsd2si r8d, xmm0
movss xmm1, dword [rbp + 0x668]
mulss xmm1, xmm14
cvtps2pd xmm0, xmm1
movsd xmm2, qword [r12 + 0x10]
subsd xmm2, xmm0
movups xmm0, xmmword [rbp + 0x480]
movdqa xmmword [rbp + 0x690], xmm0
movss xmm0, dword [0x1400b0b60]
lea rax, [rbp + 0x418]
cmp qword [rbp + 0x430], 0xf
cmova rax, qword [rbp + 0x418]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
movd ecx, xmm0
lea r9, [rbp + 0x690]
cvttsd2si edx, xmm2
call fcn.14003d910
nop
mov r8, qword [rbp + 0x430]
cmp r8, 0xf
jbe 0x140040aa0
mov rdx, qword [rbp + 0x418]
lea rcx, [rbp + 0x418]
call fcn.14003eca0
nop
lea rcx, [rbp + 0x600]
call fcn.14003c5e0
mov r13, qword [rsp + 0x60]
cmp byte [0x1400d3916], 0
je 0x140040bf4
cmp byte [0x1400d2c38], 0
je 0x140040bf4
movzx r9d, byte [rsp + 0x40]
mov r8, qword [r13 + 0x18]
lea rdx, [rbp + 0x4e0]
mov rcx, qword [0x1400d35c8]
call fcn.140047e70
nop
lea rdx, [rbp + 0x4e0]
cmp qword [rbp + 0x4f8], 0xf
cmova rdx, qword [rbp + 0x4e0]
movss xmm7, dword [0x14005b224]
movss dword [rsp + 0x20], xmm7
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x660]
call fcn.140006b70
lea rax, [rbp + 0x4e0]
cmp qword [rbp + 0x4f8], 0xf
cmova rax, qword [rbp + 0x4e0]
movsd xmm0, qword [r12 + 0xe8]
movsd xmm8, qword [0x1400b0b38]
subsd xmm0, xmm8
cvttsd2si r8d, xmm0
movss xmm1, dword [rbp + 0x660]
mulss xmm1, xmm14
cvtps2pd xmm0, xmm1
movsd xmm2, qword [r12 + 0xe0]
subsd xmm2, xmm0
cvttsd2si edx, xmm2
movaps xmm0, xmmword [0x14005b280]
movaps xmmword [rbp + 0x690], xmm0
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x690]
movss xmm10, dword [0x1400b0b60]
movaps xmm0, xmm10
movd ecx, xmm0
call fcn.14003d910
nop
mov rdx, qword [rbp + 0x4f8]
cmp rdx, 0xf
jbe 0x140040c0e
inc rdx
mov rcx, qword [rbp + 0x4e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140040bed
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400426c8
call fcn.140055940
jmp 0x140040c0e
movss xmm10, dword [0x1400b0b60]
movsd xmm8, qword [0x1400b0b38]
movss xmm7, dword [0x14005b224]
cmp byte [0x1400d2c48], 0
je 0x140040cef
call fcn.14000a3a0
mov r15, rax
lea rcx, [rbp + 0x5d0]
call fcn.140007bd0
mov r9d, eax
mov eax, dword [0x1400d3964]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400d3960]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x28], xmm0
movss dword [rbp + 0x2c], xmm1
movss xmm6, dword [0x14005b1ac]
movss dword [rsp + 0x28], xmm6
xor ecx, ecx
mov dword [rsp + 0x20], ecx
movss xmm2, dword [0x1400d2c34]
lea rdx, [rbp + 0x28]
mov rcx, r15
call fcn.14001c8d0
call fcn.14000a3a0
mov r15, rax
lea rcx, [rbp + 0x5d0]
call fcn.140007bd0
mov r9d, eax
mov eax, dword [0x1400d3964]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400d3960]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x30], xmm0
movss dword [rbp + 0x34], xmm1
movss dword [rsp + 0x28], xmm6
xor eax, eax
mov dword [rsp + 0x20], eax
movss xmm2, dword [0x1400d2c34]
lea rdx, [rbp + 0x30]
mov rcx, r15
call fcn.14001c8d0
jmp 0x140040cf7
movss xmm6, dword [0x14005b1ac]
cmp byte [0x1400d3920], 0
je 0x140041146
movaps xmm0, xmmword [0x14005fa70]
movups xmmword [rbp + 0x690], xmm0
lea rcx, [rbp + 0x690]
call fcn.140007bd0
mov r9d, eax
mov eax, dword [0x1400d3964]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov ecx, dword [0x1400d3960]
test ecx, ecx
jns 0x140040d3f
inc ecx
sar ecx, 1
lea eax, [rcx - 9]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x38], xmm0
movss dword [rbp + 0x3c], xmm1
lea eax, [rcx - 2]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x40], xmm0
movss dword [rbp + 0x44], xmm1
movss xmm9, dword [0x14005b1b8]
movss dword [rsp + 0x20], xmm9
lea r8, [rbp + 0x38]
lea rdx, [rbp + 0x40]
mov r15, qword [rbp - 0x70]
mov rcx, r15
call fcn.14001e040
movaps xmm0, xmmword [0x14005fa70]
movups xmmword [rbp + 0x690], xmm0
lea rcx, [rbp + 0x690]
call fcn.140007bd0
mov r9d, eax
mov eax, dword [0x1400d3964]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov ecx, dword [0x1400d3960]
test ecx, ecx
jns 0x140040dc8
inc ecx
sar ecx, 1
lea eax, [rcx + 9]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x48], xmm0
movss dword [rbp + 0x4c], xmm1
lea eax, [rcx + 2]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x50], xmm0
movss dword [rbp + 0x54], xmm1
movss dword [rsp + 0x20], xmm9
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x50]
mov rcx, r15
call fcn.14001e040
movaps xmm0, xmmword [0x14005fa70]
movups xmmword [rbp + 0x690], xmm0
lea rcx, [rbp + 0x690]
call fcn.140007bd0
mov r9d, eax
mov r8d, dword [0x1400d3964]
test r8d, r8d
jns 0x140040e35
inc r8d
sar r8d, 1
lea ecx, [r8 - 9]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x1400d3960]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0x58], xmm1
movss dword [rbp + 0x5c], xmm0
lea eax, [r8 - 2]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x60], xmm1
movss dword [rbp + 0x64], xmm0
movss dword [rsp + 0x20], xmm9
lea r8, [rbp + 0x58]
lea rdx, [rbp + 0x60]
mov rcx, r15
call fcn.14001e040
movaps xmm0, xmmword [0x14005fa70]
movups xmmword [rbp + 0x690], xmm0
lea rcx, [rbp + 0x690]
call fcn.140007bd0
mov r9d, eax
mov r8d, dword [0x1400d3964]
test r8d, r8d
jns 0x140040eb7
inc r8d
sar r8d, 1
lea ecx, [r8 + 9]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x1400d3960]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0x68], xmm1
movss dword [rbp + 0x6c], xmm0
lea eax, [r8 + 2]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x70], xmm1
movss dword [rbp + 0x74], xmm0
movss dword [rsp + 0x20], xmm9
lea r8, [rbp + 0x68]
lea rdx, [rbp + 0x70]
mov rcx, r15
call fcn.14001e040
movaps xmm0, xmmword [0x14005b280]
movups xmmword [rbp + 0x690], xmm0
lea rcx, [rbp + 0x690]
call fcn.140007bd0
mov r9d, eax
mov eax, dword [0x1400d3964]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov ecx, dword [0x1400d3960]
test ecx, ecx
jns 0x140040f48
inc ecx
sar ecx, 1
lea eax, [rcx - 8]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x78], xmm0
movss dword [rbp + 0x7c], xmm1
lea eax, [rcx - 3]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x80], xmm0
movss dword [rbp + 0x84], xmm1
movss dword [rsp + 0x20], xmm6
lea r8, [rbp + 0x78]
lea rdx, [rbp + 0x80]
mov rcx, r15
call fcn.14001e040
movaps xmm0, xmmword [0x14005b280]
movups xmmword [rbp + 0x690], xmm0
lea rcx, [rbp + 0x690]
call fcn.140007bd0
mov r9d, eax
mov eax, dword [0x1400d3964]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov ecx, dword [0x1400d3960]
test ecx, ecx
jns 0x140040fcc
inc ecx
sar ecx, 1
lea eax, [rcx + 8]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x88], xmm0
movss dword [rbp + 0x8c], xmm1
lea eax, [rcx + 3]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x90], xmm0
movss dword [rbp + 0x94], xmm1
movss dword [rsp + 0x20], xmm6
lea r8, [rbp + 0x88]
lea rdx, [rbp + 0x90]
mov rcx, r15
call fcn.14001e040
movaps xmm0, xmmword [0x14005b280]
movups xmmword [rbp + 0x690], xmm0
lea rcx, [rbp + 0x690]
call fcn.140007bd0
mov r9d, eax
mov r8d, dword [0x1400d3964]
test r8d, r8d
jns 0x14004104a
inc r8d
sar r8d, 1
lea ecx, [r8 - 8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x1400d3960]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0x98], xmm1
movss dword [rbp + 0x9c], xmm0
lea eax, [r8 - 3]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xa0], xmm1
movss dword [rbp + 0xa4], xmm0
movss dword [rsp + 0x20], xmm6
lea r8, [rbp + 0x98]
lea rdx, [rbp + 0xa0]
mov rcx, r15
call fcn.14001e040
movaps xmm0, xmmword [0x14005b280]
movups xmmword [rbp + 0x690], xmm0
lea rcx, [rbp + 0x690]
call fcn.140007bd0
mov r9d, eax
mov r8d, dword [0x1400d3964]
test r8d, r8d
jns 0x1400410dd
inc r8d
sar r8d, 1
lea ecx, [r8 + 8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [0x1400d3960]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0xa8], xmm1
movss dword [rbp + 0xac], xmm0
lea eax, [r8 + 3]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xb0], xmm1
movss dword [rbp + 0xb4], xmm0
movss dword [rsp + 0x20], xmm6
lea r8, [rbp + 0xa8]
lea rdx, [rbp + 0xb0]
mov rcx, r15
call fcn.14001e040
jmp 0x14004114f
movss xmm9, dword [0x14005b1b8]
cmp byte [0x1400d3918], 0
je 0x1400416a4
cmp byte [0x1400d2c38], 0
je 0x1400416a4
movzx r9d, byte [rsp + 0x40]
mov r8, qword [r13 + 0x18]
lea rdx, [rbp + 0x590]
mov rcx, qword [0x1400d35c8]
call fcn.140047e70
nop
mov rcx, qword [r13 + 0x18]
add rcx, 0x438
call fcn.14003ba40
xorps xmm0, xmm0
movups xmmword [rbp + 0x440], xmm0
xor r15d, r15d
mov qword [rbp + 0x450], r15
mov qword [rbp + 0x458], r15
lea rax, [rbp + 0x6b0]
mov r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], r15w
jne 0x1400411c0
lea rdx, [rbp + 0x6b0]
lea rcx, [rbp + 0x440]
call fcn.14003af20
nop
lea rdx, [rbp + 0x440]
cmp qword [rbp + 0x458], 7
seta r9b
cmova rdx, qword [rbp + 0x440]
mov rax, qword [rbp + 0x450]
lea r8, [rdx + rax*2]
lea rdx, [rbp + 0x440]
test r9b, r9b
cmovne rdx, qword [rbp + 0x440]
lea r9, [rsp + 0x41]
lea rcx, [rbp + 0x4e0]
call fcn.14003acf0
nop
mov rdx, qword [rbp + 0x458]
cmp rdx, 7
jbe 0x14004126e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x440]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140041269
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400426cf
call fcn.140055940
mov qword [rbp + 0x450], r15
mov qword [rbp + 0x458], 7
mov word [rbp + 0x440], r15w
lea rdx, [rbp + 0x590]
cmp qword [rbp + 0x5a8], 0xf
cmova rdx, qword [rbp + 0x590]
movss dword [rsp + 0x20], xmm7
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x680]
call fcn.140006b70
movss xmm6, dword [rbp + 0x680]
mov r8, qword [rbp + 0x4f0]
mov qword [rsp + 0x48], r8
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r8
cmp rax, 3
jb 0x140042cec
lea rdx, [rbp + 0x4e0]
cmp qword [rbp + 0x4f8], 0xf
cmova rdx, qword [rbp + 0x4e0]
mov qword [rbp + 0x690], rdx
xorps xmm0, xmm0
movups xmmword [rbp + 0x490], xmm0
mov qword [rbp + 0x4a0], r15
mov qword [rbp + 0x4a8], r15
lea rax, [r8 + 3]
mov qword [rbp + 0xb8], rax
mov r13d, 0xf
lea r15, [rbp + 0x490]
cmp rax, r13
jbe 0x1400413e0
mov r13, rax
or r13, 0xf
cmp r13, rcx
jbe 0x14004135b
mov r13, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x140041382
cmp r13, 0x16
mov ecx, 0x16
cmovb r13, rcx
lea rcx, [r13 + 1]
cmp rcx, 0x1000
jb 0x1400413b4
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140042cf8
mov rcx, rax
call fcn.140055d00
test rax, rax
je 0x1400426d6
lea r15, [rax + 0x27]
and r15, 0xffffffffffffffe0
mov qword [r15 - 8], rax
mov rax, qword [rbp + 0xb8]
mov rdx, qword [rbp + 0x690]
mov r8, qword [rsp + 0x48]
jmp 0x1400413d9
test rcx, rcx
je 0x1400413d6
call fcn.140055d00
mov r15, rax
mov rax, qword [rbp + 0xb8]
mov rdx, qword [rbp + 0x690]
mov r8, qword [rsp + 0x48]
jmp 0x1400413d9
mov r15, rcx
mov qword [rbp + 0x490], r15
mov qword [rbp + 0x4a0], rax
mov qword [rbp + 0x4a8], r13
mov eax, dword [0x1400b052c]
mov word [r15], ax
movzx eax, byte [0x1400b052e]
mov byte [r15 + 2], al
lea rcx, [r15 + 3]
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsp + 0x48]
mov byte [r15 + rax + 3], 0
mov rcx, qword [rbp + 0x4a0]
mov rdx, qword [rbp + 0x4a8]
mov rax, rdx
sub rax, rcx
cmp rax, 3
jb 0x140041475
lea rax, [rcx + 3]
mov qword [rbp + 0x4a0], rax
lea r15, [rbp + 0x490]
cmp rdx, 0xf
cmova r15, qword [rbp + 0x490]
add r15, rcx
mov r8d, 3
lea rdx, [0x1400b0528]
mov rcx, r15
call sub.VCRUNTIME140.dll_memmove
mov byte [r15 + 3], 0
lea rax, [rbp + 0x490]
jmp 0x14004149a
mov qword [rsp + 0x20], 3
lea r9, [0x1400b0528]
movzx r8d, bl
mov edx, 3
lea rcx, [rbp + 0x490]
call fcn.14003b510
xorps xmm0, xmm0
movups xmmword [rbp + 0x520], xmm0
xor r15d, r15d
mov qword [rbp + 0x530], r15
mov qword [rbp + 0x538], r15
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x520], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x530], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], r15b
mov rdx, qword [rbp + 0x4a8]
cmp rdx, 0xf
jbe 0x14004151a
inc rdx
mov rcx, qword [rbp + 0x490]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140041515
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400426dd
call fcn.140055940
mov qword [rbp + 0x4a0], r15
mov qword [rbp + 0x4a8], 0xf
mov byte [rbp + 0x490], 0
lea rax, [rbp + 0x520]
cmp qword [rbp + 0x538], 0xf
cmova rax, qword [rbp + 0x520]
movsd xmm0, qword [r12 + 0xe8]
subsd xmm0, qword [0x1400b0b48]
cvttsd2si r8d, xmm0
mulss xmm6, xmm14
cvtps2pd xmm0, xmm6
movsd xmm1, qword [r12 + 0xe0]
subsd xmm1, xmm0
cvttsd2si edx, xmm1
movaps xmm0, xmmword [0x14005b280]
movaps xmmword [rbp + 0x690], xmm0
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x690]
movaps xmm0, xmm10
movd ecx, xmm0
call fcn.14003d910
nop
mov rdx, qword [rbp + 0x538]
cmp rdx, 0xf
jbe 0x1400415ee
inc rdx
mov rcx, qword [rbp + 0x520]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400415e9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400426e4
call fcn.140055940
mov qword [rbp + 0x530], r15
mov qword [rbp + 0x538], 0xf
mov byte [rbp + 0x520], 0
mov rdx, qword [rbp + 0x4f8]
cmp rdx, 0xf
jbe 0x140041648
inc rdx
mov rcx, qword [rbp + 0x4e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140041643
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400426eb
call fcn.140055940
mov qword [rbp + 0x4f0], r15
mov qword [rbp + 0x4f8], 0xf
mov byte [rbp + 0x4e0], 0
mov rdx, qword [rbp + 0x5a8]
cmp rdx, 0xf
jbe 0x1400416a7
inc rdx
mov rcx, qword [rbp + 0x590]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004169d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400426f2
call fcn.140055940
jmp 0x1400416a7
xor r15d, r15d
cmp byte [0x1400d2c39], 0
je 0x1400419f8
cmp byte [0x1400d2c38], 0
je 0x1400419f8
xorps xmm0, xmm0
movups xmmword [rbp + 0x490], xmm0
mov qword [rbp + 0x4a0], r15
mov qword [rbp + 0x4a8], r15
mov r8d, 1
lea rdx, [0x1400b0530]
lea rcx, [rbp + 0x490]
call fcn.14003ae20
nop
movss xmm6, dword [rsp + 0x78]
cvttss2si r8d, xmm6
lea r10, [rbp + 0x6a5]
test r8d, r8d
jns 0x140041750
neg r8d
nop dword [rax]
dec r10
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 [r10], r8b
mov r8d, edx
test edx, edx
jne 0x140041710
dec r10
mov byte [r10], 0x2d
jmp 0x14004177a
dec r10
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 [r10], r8b
mov r8d, edx
test edx, edx
jne 0x140041750
lea r9, [rsp + 0x41]
lea r8, [rbp + 0x6a5]
mov rdx, r10
lea rcx, [rbp + 0x440]
call fcn.14003abb0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x520], xmm0
mov qword [rbp + 0x530], r15
mov qword [rbp + 0x538], r15
xor r8d, r8d
lea rdx, [0x14005a2e4]
lea rcx, [rbp + 0x520]
call fcn.14003ae20
nop
lea r9, [rbp + 0x440]
lea r8, [rbp + 0x520]
movzx edx, dil
lea rcx, [rbp + 0x590]
call fcn.14003bc60
nop
lea r9, [rbp + 0x490]
lea r8, [rbp + 0x590]
movzx edx, sil
lea rcx, [rbp + 0x4e0]
call fcn.14003bc60
nop
mov rdx, qword [rbp + 0x5a8]
cmp rdx, 0xf
jbe 0x140041845
inc rdx
mov rcx, qword [rbp + 0x590]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004183f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400426f9
call fcn.140055940
nop
mov rdx, qword [rbp + 0x538]
cmp rdx, 0xf
jbe 0x140041887
inc rdx
mov rcx, qword [rbp + 0x520]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140041881
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140042700
call fcn.140055940
nop
mov rdx, qword [rbp + 0x458]
cmp rdx, 0xf
jbe 0x1400418c9
inc rdx
mov rcx, qword [rbp + 0x440]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400418c3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140042707
call fcn.140055940
nop
mov rdx, qword [rbp + 0x4a8]
cmp rdx, 0xf
jbe 0x14004190a
inc rdx
mov rcx, qword [rbp + 0x490]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140041905
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004270e
call fcn.140055940
lea rdx, [rbp + 0x4e0]
cmp qword [rbp + 0x4f8], 0xf
cmova rdx, qword [rbp + 0x4e0]
movss dword [rsp + 0x20], xmm7
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x678]
call fcn.140006b70
lea rax, [rbp + 0x4e0]
cmp qword [rbp + 0x4f8], 0xf
cmova rax, qword [rbp + 0x4e0]
movsd xmm0, qword [r12 + 0x18]
addsd xmm0, qword [0x1400b0b28]
cvttsd2si r8d, xmm0
movss xmm1, dword [rbp + 0x678]
mulss xmm1, xmm14
cvtps2pd xmm0, xmm1
movsd xmm2, qword [r12 + 0x10]
subsd xmm2, xmm0
cvttsd2si edx, xmm2
movaps xmm0, xmmword [0x14005b280]
movaps xmmword [rbp + 0x690], xmm0
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
lea r9, [rbp + 0x690]
movaps xmm0, xmm10
movd ecx, xmm0
call fcn.14003d910
nop
mov rdx, qword [rbp + 0x4f8]
cmp rdx, 0xf
jbe 0x1400419fe
inc rdx
mov rcx, qword [rbp + 0x4e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400419f1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140042715
call fcn.140055940
jmp 0x1400419fe
movss xmm6, dword [rsp + 0x78]
cmp byte [0x1400d3915], 0
je 0x140042296
cmp byte [0x1400d2c38], 0
je 0x140042296
mov rax, qword [rsp + 0x60]
mov r15, qword [rax + 8]
movaps xmm0, xmmword [0x1400b0cc0]
movups xmmword [rbp + 0x690], xmm0
lea rcx, [rbp + 0x690]
call fcn.140007bd0
mov dword [rsp + 0x48], eax
mov r9d, 0x6d
mov r8, r15
lea rdx, [rbp + 0x260]
mov rcx, qword [0x1400d35c8]
call fcn.140047d00
mov r9d, 2
mov r8, r15
lea rdx, [rbp + 0x278]
mov rcx, qword [0x1400d35c8]
call fcn.140047d00
mov r9d, 0x42
mov r8, r15
lea rdx, [rbp + 0x290]
mov rcx, qword [0x1400d35c8]
call fcn.140047d00
mov r9d, 9
mov r8, r15
lea rdx, [rbp + 0x2a8]
mov rcx, qword [0x1400d35c8]
call fcn.140047d00
mov r9d, 0x26
mov r8, r15
lea rdx, [rbp + 0x2c0]
mov rcx, qword [0x1400d35c8]
call fcn.140047d00
mov r9d, 0xa
mov r8, r15
lea rdx, [rbp + 0x2d8]
mov rcx, qword [0x1400d35c8]
call fcn.140047d00
mov r9d, 0x27
mov r8, r15
lea rdx, [rbp + 0x2f0]
mov rcx, qword [0x1400d35c8]
call fcn.140047d00
mov r9d, 0xb
mov r8, r15
lea rdx, [rbp + 0x308]
mov rcx, qword [0x1400d35c8]
call fcn.140047d00
mov r9d, 0x28
mov r8, r15
lea rdx, [rbp + 0x320]
mov rcx, qword [0x1400d35c8]
call fcn.140047d00
mov r9d, 0x4e
mov r8, r15
lea rdx, [rbp + 0x338]
mov rcx, qword [0x1400d35c8]
call fcn.140047d00
mov r9d, 0x47
mov r8, r15
lea rdx, [rbp + 0x350]
mov rcx, qword [0x1400d35c8]
call fcn.140047d00
mov r9d, 0x4f
mov r8, r15
lea rdx, [rbp + 0x368]
mov rcx, qword [0x1400d35c8]
call fcn.140047d00
mov r9d, 0x48
mov r8, r15
lea rdx, [rbp + 0x380]
mov rcx, qword [0x1400d35c8]
call fcn.140047d00
mov r9d, 0x4b
mov r8, r15
lea rdx, [rbp + 0x398]
mov rcx, qword [0x1400d35c8]
call fcn.140047d00
mov r9d, 0x52
mov r8, r15
lea rdx, [rbp + 0x3b0]
mov rcx, qword [0x1400d35c8]
call fcn.140047d00
nop
lea rax, [fcn.1400039b0]
mov qword [rsp + 0x20], rax
lea r9, [0x140001860]
mov edx, 0x10
mov r8d, edx
lea rcx, [rbp + 0x6b0]
call fcn.140055800
nop
lea r13, [rbp + 0x6b0]
lea r15, [rbp + 0x260]
mov r14d, 0x10
movups xmm0, xmmword [r15]
movaps xmmword [rbp + 0x440], xmm0
movsd xmm1, qword [r15 + 0x10]
movsd qword [rbp + 0x450], xmm1
lea r8, [rbp + 0x440]
lea rdx, [rbp - 0x68]
mov rcx, qword [0x1400d35c8]
call fcn.140054b00
movups xmm0, xmmword [rax]
movups xmmword [r13], xmm0
lea r15, [r15 + 0x18]
lea r13, [r13 + 0x10]
sub r14, 1
jne 0x140041c20
movzx r14d, byte [rsp + 0x40]
call fcn.14000a3a0
movsd xmm1, qword [rbp + 0x6d8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x6d0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0xc0], xmm0
movss dword [rbp + 0xc4], xmm1
movsd xmm2, qword [rbp + 0x6c8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x6c0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0xc8], xmm0
movss dword [rbp + 0xcc], xmm2
movss xmm7, dword [0x1400b0b1c]
movss dword [rsp + 0x20], xmm7
mov r15d, dword [rsp + 0x48]
mov r9d, r15d
lea r8, [rbp + 0xc0]
lea rdx, [rbp + 0xc8]
mov rcx, rax
call fcn.14001e040
call fcn.14000a3a0
movsd xmm1, qword [rbp + 0x6d8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x6d0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0xd0], xmm0
movss dword [rbp + 0xd4], xmm1
movsd xmm2, qword [rbp + 0x6e8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x6e0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0xd8], xmm0
movss dword [rbp + 0xdc], xmm2
movss dword [rsp + 0x20], xmm7
mov r9d, r15d
lea r8, [rbp + 0xd0]
lea rdx, [rbp + 0xd8]
mov rcx, rax
call fcn.14001e040
call fcn.14000a3a0
movsd xmm1, qword [rbp + 0x6d8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x6d0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0xe0], xmm0
movss dword [rbp + 0xe4], xmm1
movsd xmm2, qword [rbp + 0x6f8]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x6f0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0xe8], xmm0
movss dword [rbp + 0xec], xmm2
movss dword [rsp + 0x20], xmm7
mov r9d, r15d
lea r8, [rbp + 0xe0]
lea rdx, [rbp + 0xe8]
mov rcx, rax
call fcn.14001e040
call fcn.14000a3a0
movsd xmm1, qword [rbp + 0x6e8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x6e0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0xf0], xmm0
movss dword [rbp + 0xf4], xmm1
movsd xmm2, qword [rbp + 0x708]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x700]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0xf8], xmm0
movss dword [rbp + 0xfc], xmm2
movss dword [rsp + 0x20], xmm7
mov r9d, r15d
lea r8, [rbp + 0xf0]
lea rdx, [rbp + 0xf8]
mov rcx, rax
call fcn.14001e040
call fcn.14000a3a0
movsd xmm1, qword [rbp + 0x6f8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x6f0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x100], xmm0
movss dword [rbp + 0x104], xmm1
movsd xmm2, qword [rbp + 0x718]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x710]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x108], xmm0
movss dword [rbp + 0x10c], xmm2
movss dword [rsp + 0x20], xmm7
mov r9d, r15d
lea r8, [rbp + 0x100]
lea rdx, [rbp + 0x108]
mov rcx, rax
call fcn.14001e040
call fcn.14000a3a0
movsd xmm1, qword [rbp + 0x728]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x720]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x110], xmm0
movss dword [rbp + 0x114], xmm1
movsd xmm2, qword [rbp + 0x708]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x700]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x118], xmm0
movss dword [rbp + 0x11c], xmm2
movss dword [rsp + 0x20], xmm7
mov r9d, r15d
lea r8, [rbp + 0x110]
lea rdx, [rbp + 0x118]
mov rcx, rax
call fcn.14001e040
call fcn.14000a3a0
movsd xmm1, qword [rbp + 0x738]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x730]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x120], xmm0
movss dword [rbp + 0x124], xmm1
movsd xmm2, qword [rbp + 0x718]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x710]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x128], xmm0
movss dword [rbp + 0x12c], xmm2
movss dword [rsp + 0x20], xmm7
mov r9d, r15d
lea r8, [rbp + 0x120]
lea rdx, [rbp + 0x128]
mov rcx, rax
call fcn.14001e040
call fcn.14000a3a0
movsd xmm1, qword [rbp + 0x6c8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x6c0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x130], xmm0
movss dword [rbp + 0x134], xmm1
movsd xmm2, qword [rbp + 0x758]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x750]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x138], xmm0
movss dword [rbp + 0x13c], xmm2
movss dword [rsp + 0x20], xmm7
mov r9d, r15d
lea r8, [rbp + 0x130]
lea rdx, [rbp + 0x138]
mov rcx, rax
call fcn.14001e040
call fcn.14000a3a0
movsd xmm1, qword [rbp + 0x6c8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x6c0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x140], xmm0
movss dword [rbp + 0x144], xmm1
movsd xmm2, qword [rbp + 0x748]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x740]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x148], xmm0
movss dword [rbp + 0x14c], xmm2
movss dword [rsp + 0x20], xmm7
mov r9d, r15d
lea r8, [rbp + 0x140]
lea rdx, [rbp + 0x148]
mov rcx, rax
call fcn.14001e040
call fcn.14000a3a0
movsd xmm1, qword [rbp + 0x758]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x750]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x150], xmm0
movss dword [rbp + 0x154], xmm1
movsd xmm2, qword [rbp + 0x778]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x770]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x158], xmm0
movss dword [rbp + 0x15c], xmm2
movss dword [rsp + 0x20], xmm7
mov r9d, r15d
lea r8, [rbp + 0x150]
lea rdx, [rbp + 0x158]
mov rcx, rax
call fcn.14001e040
call fcn.14000a3a0
movsd xmm1, qword [rbp + 0x748]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x740]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x160], xmm0
movss dword [rbp + 0x164], xmm1
movsd xmm2, qword [rbp + 0x768]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x760]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x168], xmm0
movss dword [rbp + 0x16c], xmm2
movss dword [rsp + 0x20], xmm7
mov r9d, r15d
lea r8, [rbp + 0x160]
lea rdx, [rbp + 0x168]
mov rcx, rax
call fcn.14001e040
call fcn.14000a3a0
movsd xmm1, qword [rbp + 0x778]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x770]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x170], xmm0
movss dword [rbp + 0x174], xmm1
movsd xmm2, qword [rbp + 0x788]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x780]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x178], xmm0
movss dword [rbp + 0x17c], xmm2
movss dword [rsp + 0x20], xmm7
mov r9d, r15d
lea r8, [rbp + 0x170]
lea rdx, [rbp + 0x178]
mov rcx, rax
call fcn.14001e040
call fcn.14000a3a0
movsd xmm1, qword [rbp + 0x768]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + 0x760]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x180], xmm0
movss dword [rbp + 0x184], xmm1
movsd xmm2, qword [rbp + 0x798]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rbp + 0x790]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x4d0], xmm0
movss dword [rbp + 0x4d4], xmm2
movss dword [rsp + 0x20], xmm7
mov r9d, r15d
lea r8, [rbp + 0x180]
lea rdx, [rbp + 0x4d0]
mov rcx, rax
call fcn.14001e040
nop
lea r9, [fcn.1400039b0]
mov edx, 0x10
mov r8d, edx
lea rcx, [rbp + 0x6b0]
call fcn.140055870
nop
lea r9, [fcn.1400039b0]
mov edx, 0x18
lea r8d, [rdx - 9]
lea rcx, [rbp + 0x260]
call fcn.140055870
mov r15, qword [rsp + 0x70]
cmp byte [0x1400d3348], 0
je 0x14004269a
movss xmm0, dword [0x1400c767c]
comiss xmm0, xmm6
jb 0x14004269a
lea rcx, [r15 + 0x318]
call fcn.14003ba40
xorps xmm6, xmm6
xorps xmm13, xmm13
movsd qword [rbp + 0x6a0], xmm13
mov edx, dword [0x1400d3910]
test edx, edx
je 0x140042323
sub edx, 1
je 0x140042314
sub edx, 1
je 0x140042305
cmp edx, 1
jne 0x1400422fb
lea r9d, [rdx + 1]
lea rdx, [rbp + 0x3d0]
jmp 0x140042330
movsd xmm7, qword [rbp + 0x6a0]
jmp 0x14004234f
mov r9d, 0x42
lea rdx, [rbp + 0x3e8]
jmp 0x140042330
mov r9d, 0x43
lea rdx, [rbp + 0x400]
jmp 0x140042330
mov r9d, 0x6e
lea rdx, [rbp + 0x1c8]
mov r8, rax
mov rcx, qword [0x1400d35c8]
call fcn.140047d00
movsd xmm7, qword [rax + 0x10]
movsd qword [rbp + 0x6a0], xmm7
movups xmm6, xmmword [rax]
cmp byte [0x1400d3922], 0
je 0x1400424b9
mov rax, qword [0x1400d3868]
mov rcx, qword [rax + 0x20]
add rcx, 0x2530
xorps xmm0, xmm0
movups xmmword [rbp + 0x440], xmm0
movsd qword [rbp + 0x450], xmm13
mov r8d, 0x18
lea rdx, [rbp + 0x440]
call fcn.140054790
movups xmm1, xmmword [rbp + 0x440]
movsd xmm0, qword [rbp + 0x450]
movsd qword [rbp + 0x4a0], xmm0
lea rcx, [rbp + 0x888]
mov rax, qword [rcx]
movaps xmm0, xmm6
subsd xmm0, xmm8
comisd xmm1, xmm0
jb 0x1400424b1
movaps xmm0, xmm6
addsd xmm0, xmm8
comisd xmm0, xmm1
jb 0x1400424b1
unpckhpd xmm6, xmm6
movaps xmm0, xmm6
subsd xmm0, xmm8
unpckhpd xmm1, xmm1
comisd xmm1, xmm0
jb 0x1400424b1
addsd xmm6, xmm8
comisd xmm6, xmm1
jb 0x1400424b1
movsd xmm1, qword [rbp + 0x6a0]
movaps xmm0, xmm1
movsd xmm3, qword [0x1400b0b40]
subsd xmm0, xmm3
movsd xmm2, qword [rbp + 0x4a0]
comisd xmm2, xmm0
jb 0x1400424b1
addsd xmm1, xmm3
comisd xmm1, xmm2
jb 0x1400424b1
mov qword [rcx], rax
cmp byte [0x1400d2c4a], 0
je 0x14004247f
cmp dword [0x1400d34e0], 1
jne 0x1400426a5
cmp byte [0x1400d3349], 0
je 0x140042473
lea rcx, [rbp + 0x1e8]
call fcn.1400546b0
mov rcx, qword [rax]
mov qword [0x1400d33e0], rcx
mov byte [0x1400d3349], 0
lea rcx, [rbp + 0x1f0]
jmp 0x14004259a
cmp byte [0x1400d3349], 0
je 0x1400424a5
lea rcx, [rbp + 0x1f8]
call fcn.1400546b0
mov rcx, qword [rax]
mov qword [0x1400d33e0], rcx
mov byte [0x1400d3349], 0
lea rcx, [rbp + 0x200]
jmp 0x14004259a
mov qword [rcx], rax
jmp 0x1400426a5
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1400426a5
mov rax, qword [0x1400d3868]
mov rcx, qword [rax + 0x20]
add rcx, 0x2530
xorps xmm0, xmm0
movups xmmword [rbp + 0x440], xmm0
movsd qword [rbp + 0x450], xmm13
mov r8d, 0x18
lea rdx, [rbp + 0x440]
call fcn.140054790
movaps xmmword [rbp + 0x690], xmm6
movsd qword [rbp + 0x6a0], xmm7
movups xmm0, xmmword [rbp + 0x440]
movaps xmmword [rbp + 0x490], xmm0
movsd xmm1, qword [rbp + 0x450]
movsd qword [rbp + 0x4a0], xmm1
lea r8, [rbp + 0x690]
lea rdx, [rbp + 0x490]
mov rcx, qword [0x1400d35c8]
call fcn.1400492d0
test al, al
je 0x1400426a5
cmp byte [0x1400d2c4a], 0
je 0x140042620
cmp dword [0x1400d34e0], 1
jne 0x1400426a5
cmp byte [0x1400d3349], 0
je 0x140042593
lea rcx, [rbp + 0x208]
call fcn.1400546b0
mov rcx, qword [rax]
mov qword [0x1400d33e0], rcx
mov byte [0x1400d3349], 0
lea rcx, [rbp + 0x1e0]
call fcn.1400546b0
mov rcx, qword [rax]
mov qword [0x1400d33e8], rcx
sub rcx, qword [0x1400d33e0]
movabs rax, 0x431bde82d7b634db
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [0x1400d33f0], edx
movd xmm0, edx
cvtdq2ps xmm0, xmm0
xor r13d, r13d
comiss xmm0, dword [0x1400cc0a8]
jb 0x1400426a8
mov qword [rsp + 0x20], r13
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rdx + 2]
call qword [sym.imp.USER32.dll_mouse_event]
mov qword [rsp + 0x20], r13
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rdx + 4]
call qword [sym.imp.USER32.dll_mouse_event]
mov byte [0x1400d3349], 1
jmp 0x1400426a8
cmp byte [0x1400d3349], 0
je 0x140042646
lea rcx, [rbp + 0x210]
call fcn.1400546b0
mov rcx, qword [rax]
mov qword [0x1400d33e0], rcx
mov byte [0x1400d3349], 0
lea rcx, [rsp + 0x50]
call fcn.1400546b0
mov rcx, qword [rax]
mov qword [0x1400d33e8], rcx
sub rcx, qword [0x1400d33e0]
movabs rax, 0x431bde82d7b634db
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [0x1400d33f0], edx
movd xmm0, edx
cvtdq2ps xmm0, xmm0
comiss xmm0, dword [0x1400cc0a8]
jb 0x1400426a5
xor r13d, r13d
jmp 0x1400425e8
xorps xmm13, xmm13
jmp 0x1400426a5
mov r15, qword [rsp + 0x70]
xor r13d, r13d
mov rax, qword [rsp + 0x60]
add rax, 0x48
mov qword [rsp + 0x60], rax
cmp rax, qword [rbp + 0x1c0]
je 0x14004271c
mov r13, qword [rbp - 0x70]
jmp 0x14003f09f
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
test r15, r15
je 0x140042c7f
cmp byte [0x1400d2c30], 0
je 0x140042c7f
lea rcx, [r15 + 0x318]
call fcn.14003ba40
mov rbx, rax
mov qword [rbp + 0x4d0], r13
mov dword [rbp + 0x581], r13d
mov word [rbp + 0x585], r13w
mov byte [rbp + 0x587], 0
mov dword [rbp + 0x560], 0x85b3e12
lea rcx, [r15 + 0x198]
mov qword [rbp + 0x568], rcx
lea rax, [rbp + 0x4d0]
mov qword [rbp + 0x570], rax
mov qword [rbp + 0x578], 8
mov ecx, dword [0x1400d3448]
mov dword [rbp + 0x564], ecx
mov byte [rbp + 0x580], 0
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
mov r9d, 0x28
lea r8, [rbp + 0x560]
mov edx, 0x2201c4
mov rcx, qword [0x1400d34d8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
xorps xmm0, xmm0
movups xmmword [rbp + 0x5e0], xmm0
movsd qword [rbp + 0x5f0], xmm13
mov dword [rbp + 0x581], r13d
mov word [rbp + 0x585], r13w
mov byte [rbp + 0x587], 0
mov dword [rbp + 0x560], 0x85b3e12
mov rax, qword [rbp + 0x4d0]
add rax, 0x168
mov qword [rbp + 0x568], rax
lea rax, [rbp + 0x5e0]
mov qword [rbp + 0x570], rax
mov qword [rbp + 0x578], 0x18
mov eax, dword [0x1400d3448]
mov dword [rbp + 0x564], eax
mov byte [rbp + 0x580], 0
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
mov r9d, 0x28
lea r8, [rbp + 0x560]
mov edx, 0x2201c4
mov rcx, qword [0x1400d34d8]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
xorps xmm6, xmm6
movsd qword [rbp - 0x58], xmm13
mov eax, dword [0x1400d3910]
test eax, eax
jne 0x140042894
lea r9d, [rax + 0x6e]
jmp 0x1400428b3
cmp eax, 1
jne 0x14004289f
lea r9d, [rax + 0x41]
jmp 0x1400428b3
cmp eax, 2
jne 0x1400428aa
lea r9d, [rax + 5]
jmp 0x1400428b3
cmp eax, 3
jne 0x1400428d6
lea r9d, [rax - 1]
mov r8, rbx
lea rdx, [rbp + 0x1c8]
mov rcx, qword [0x1400d35c8]
call fcn.140047d00
movsd xmm0, qword [rax + 0x10]
movsd qword [rbp - 0x58], xmm0
movups xmm6, xmmword [rax]
cmp byte [0x1400d3954], 0
je 0x1400429da
movaps xmm10, xmm6
unpckhpd xmm10, xmm6
movaps xmm0, xmm10
subsd xmm0, qword [0x1400d2c88]
cvtsd2ss xmm0, xmm0
movaps xmm1, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm7, xmm0
movaps xmm0, xmm6
subsd xmm0, qword [0x1400d2c80]
cvtsd2ss xmm0, xmm0
movaps xmm1, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm7, xmm0
movsd xmm1, qword [rbp - 0x58]
subsd xmm1, qword [0x1400d2c90]
cvtpd2ps xmm0, xmm1
movaps xmm1, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm7, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm7
ja 0x140042953
xorps xmm0, xmm0
sqrtss xmm0, xmm7
jmp 0x14004295b
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
cvtss2sd xmm0, xmm0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
divss xmm1, dword [0x1400b0bbc]
cvtps2pd xmm8, xmm1
movss xmm0, dword [0x1400b0bc8]
andps xmm0, xmmword [0x14005b290]
mulss xmm1, xmm1
mulss xmm0, xmm14
mulss xmm1, xmm0
cvtps2pd xmm1, xmm1
movaps xmm0, xmm8
mulsd xmm0, qword [rbp + 0x5f0]
addsd xmm1, xmm0
movaps xmm9, xmm8
mulsd xmm9, qword [rbp + 0x5e0]
addsd xmm9, xmm6
mulsd xmm8, qword [rbp + 0x5e8]
addsd xmm8, xmm10
movsd xmm0, qword [rbp - 0x58]
addsd xmm0, xmm1
movsd qword [rbp - 0x58], xmm0
movaps xmm6, xmm9
unpcklpd xmm6, xmm8
jmp 0x1400429e7
movaps xmm8, xmm6
unpckhpd xmm8, xmm6
movaps xmm9, xmm6
movaps xmmword [rbp + 0x490], xmm6
movsd xmm0, qword [rbp - 0x58]
movsd qword [rbp + 0x4a0], xmm0
lea r8, [rbp + 0x490]
lea rdx, [rbp - 0x80]
mov rcx, qword [0x1400d35c8]
call fcn.140054b00
ucomisd xmm9, xmm13
jp 0x140042ac5
jne 0x140042ac5
ucomisd xmm8, xmm13
jp 0x140042a30
je 0x140042c7f
mov eax, dword [0x1400d3964]
cdq
sub eax, edx
sar eax, 1
movd xmm2, eax
cvtdq2pd xmm2, xmm2
mov eax, dword [0x1400d3960]
cdq
sub eax, edx
sar eax, 1
movd xmm7, eax
cvtdq2pd xmm7, xmm7
movss xmm10, dword [0x14005b1b8]
movaps xmm0, xmm10
movaps xmm1, xmm0
subsd xmm2, xmm8
cvtpd2ps xmm0, xmm2
call fcn.140055fb0
movaps xmm6, xmm0
subsd xmm7, xmm9
cvtpd2ps xmm0, xmm7
movaps xmm1, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm1, xmm0
addss xmm1, xmm6
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x140042aa1
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x140042aa9
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movss xmm0, dword [0x1400d2c34]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm1
jb 0x140042c7f
mov ecx, dword [0x1400d3968]
xorps xmm0, xmm0
movups xmmword [rbp + 0x440], xmm0
lea rdi, [rbp + 0x888]
movabs rdx, 0xff00ff00ff00ff00
mov qword [rbp + 0x448], rdx
mov qword [rbp + 0x450], rdi
mov rbx, qword [rdi]
mov rax, rbx
xor rax, rdx
mov qword [rbp + 0x440], rax
mov qword [rdi], r13
mov rax, qword [0x1400d3540]
call rax
nop
mov qword [rdi], rbx
test ax, ax
je 0x140042c7f
movsd xmm1, qword [rbp - 0x80]
cvtpd2ps xmm1, xmm1
movsd xmm8, qword [rbp - 0x78]
cvtpd2ps xmm8, xmm8
movss xmm7, dword [0x1400d2c44]
movd xmm5, dword [0x1400d3960]
cvtdq2pd xmm5, xmm5
mulsd xmm5, qword [0x14005f9f0]
movd xmm4, dword [0x1400d3964]
cvtdq2pd xmm4, xmm4
mulsd xmm4, qword [0x14005f9f0]
movaps xmm3, xmm13
movaps xmm2, xmm13
movsd xmm9, qword [0x14005fac0]
xorps xmm10, xmm10
ucomiss xmm1, xmm10
jp 0x140042b7e
je 0x140042bd7
cvtps2pd xmm6, xmm1
comisd xmm6, xmm5
jbe 0x140042bb1
movaps xmm3, xmm5
subsd xmm3, xmm6
xorps xmm3, xmm9
cvtps2pd xmm0, xmm7
divsd xmm3, xmm0
movaps xmm1, xmm3
addsd xmm1, xmm5
movaps xmm0, xmm5
addsd xmm0, xmm5
comisd xmm1, xmm0
jbe 0x140042bb1
movaps xmm3, xmm13
comisd xmm5, xmm6
jbe 0x140042bd7
movaps xmm3, xmm6
subsd xmm3, xmm5
cvtps2pd xmm0, xmm7
divsd xmm3, xmm0
movaps xmm0, xmm3
addsd xmm0, xmm5
comisd xmm13, xmm0
jbe 0x140042bd7
movaps xmm3, xmm13
ucomiss xmm8, xmm10
jp 0x140042bdf
je 0x140042c39
cvtps2pd xmm5, xmm8
comisd xmm5, xmm4
jbe 0x140042c13
movaps xmm2, xmm4
subsd xmm2, xmm5
xorps xmm2, xmm9
cvtps2pd xmm0, xmm7
divsd xmm2, xmm0
movaps xmm1, xmm2
addsd xmm1, xmm4
movaps xmm0, xmm4
addsd xmm0, xmm4
comisd xmm1, xmm0
jbe 0x140042c13
movaps xmm2, xmm13
comisd xmm4, xmm5
jbe 0x140042c39
movaps xmm2, xmm5
subsd xmm2, xmm4
cvtps2pd xmm0, xmm7
divsd xmm2, xmm0
movaps xmm0, xmm2
addsd xmm0, xmm4
comisd xmm13, xmm0
jbe 0x140042c39
movaps xmm2, xmm13
mov qword [rbp + 0x4f4], r13
mov dword [rbp + 0x4fc], r13d
mov dword [rbp + 0x4e8], r13d
mov qword [rbp + 0x4ec], 1
cvttsd2si eax, xmm3
mov dword [rbp + 0x4e0], eax
cvttsd2si eax, xmm2
mov dword [rbp + 0x4e4], eax
mov edx, 1
lea rcx, [rbp + 0x4e0]
call qword [0x1400d3958]
call fcn.1400124c0
mov rcx, qword [rbp + 0x7b0]
xor rcx, rsp
call fcn.1400557e0
lea r11, [rsp + 0x960]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
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.14003eea0
nop
call fcn.14003eea0
nop
call fcn.14003ab50
int3