Function at 0x1400074d0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x408]
sub rsp, 0x4e0
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 [0x14005c010]
xor rax, rsp
mov qword [rbp + 0x330], rax
mov rax, qword [0x14005c8f8]
mov rax, qword [rax + 0x48b8]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140016120
mov qword [rbp + 0x158], rax
mov r14, qword [0x14005c120]
mov r12, qword [0x14005c128]
mov qword [rbp + 0x48], r12
cmp r14, r12
je 0x1400086b7
mov r13d, dword [0x14005c018]
movsd xmm12, qword [0x140054d90]
movsd xmm6, qword [0x140054740]
movss xmm9, dword [0x140054700]
movss xmm15, dword [0x140054690]
xorps xmm14, xmm14
nop word [rax + rax]
mov rdi, qword [r14]
mov rsi, qword [r14 + 0x10]
mov r15, qword [r14 + 0x18]
test rdi, rdi
je 0x1400086aa
test rsi, rsi
je 0x1400086aa
mov rbx, qword [0x14005c860]
xorps xmm0, xmm0
movups xmmword [rbp + 0x2b0], xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0x2c0], xmm1
movups xmmword [rbp + 0x2d0], xmm0
movups xmmword [rbp + 0x2e0], xmm1
movups xmmword [rbp + 0x2f0], xmm0
movups xmmword [rbp + 0x300], xmm1
movups xmmword [rbp + 0x310], xmm0
movups xmmword [rbp + 0x320], xmm1
lea rdx, [rbx + 0x900]
mov r9d, 0x100
lea r8, [rbp + 0x230]
lea rcx, [0x14005c830]
call fcn.14000f570
movsd xmm0, qword [rbp + 0x308]
call sub.api_ms_win_crt_math_l1_1_0.dll_asin
mulsd xmm0, xmm6
movsd qword [0x14005c138], xmm0
movsd xmm1, qword [rbp + 0x2c8]
movsd xmm0, qword [rbp + 0x2e8]
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2
mulsd xmm0, xmm6
movsd qword [0x14005c140], xmm0
xorps xmm11, xmm11
movsd qword [0x14005c148], xmm11
movups xmm0, xmmword [rbp + 0x290]
movups xmmword [0x14005c0f0], xmm0
movsd xmm0, qword [rbp + 0x2a0]
movsd qword [0x14005c100], xmm0
movsd qword [rbp + 0x150], xmm11
mov dword [rbp + 0x184], 0
mov eax, dword [0x14005c830]
mov dword [rbp + 0x180], eax
mov rax, qword [0x14005c850]
mov qword [rbp + 0x190], rax
lea rax, [rbx + 0x700]
mov qword [rbp + 0x188], rax
lea rax, [rbp + 0x150]
mov qword [rbp + 0x198], rax
mov qword [rbp + 0x1a0], 8
mov eax, 5
mov dword [rbp + 0x170], eax
lea rax, [rbp + 0x180]
mov qword [rbp + 0x178], rax
mov dword [rbp + 0x174], 2
mov dword [rsp + 0x48], 0x10
lea rax, [rbp + 0x170]
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], 0x10
lea rax, [rbp + 0x170]
mov qword [rsp + 0x30], rax
xor ebx, ebx
mov dword [rsp + 0x28], ebx
lea rax, [rbp + 0x220]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x14005c838]
call fcn.14004a160
movsd xmm0, qword [0x1400546f8]
divsd xmm0, qword [rbp + 0x150]
cvtpd2ps xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_atanf
addss xmm0, xmm0
cvtss2sd xmm0, xmm0
mulsd xmm0, xmm6
cvtsd2ss xmm0, xmm0
movss dword [0x14005c944], xmm0
lea r9d, [rbx + 0x6e]
mov r8, r15
lea rdx, [rbp + 0x1d0]
mov rcx, rsi
call fcn.140005bb0
movsd xmm2, qword [rbp + 0x1e0]
addsd xmm2, qword [0x140054720]
movups xmm1, xmmword [rbp + 0x1d0]
movaps xmmword [rbp + 0xb0], xmm1
movsd qword [rbp + 0x40], xmm2
movsd qword [rbp + 0xc0], xmm2
lea r8, [rbp + 0xb0]
lea rdx, [rbp + 0x80]
call fcn.140005890
xor r9d, r9d
mov r8, r15
lea rdx, [rsp + 0x70]
mov rcx, rsi
call fcn.140005bb0
movups xmm6, xmmword [rsp + 0x70]
movaps xmmword [rbp + 0xd0], xmm6
movsd xmm7, qword [rbp - 0x80]
movsd qword [rbp + 0xe0], xmm7
lea r8, [rbp + 0xd0]
lea rdx, [rbp + 0x70]
call fcn.140005890
movaps xmm0, xmm6
unpckhpd xmm0, xmm6
subsd xmm0, qword [0x14005c0f8]
cvtsd2ss xmm0, xmm0
movaps xmm1, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm8, xmm0
subsd xmm6, qword [0x14005c0f0]
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm6
movaps xmm1, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm8, xmm0
subsd xmm7, qword [0x14005c100]
cvtpd2ps xmm0, xmm7
movaps xmm1, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm8, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm8
ja 0x140007897
xorps xmm0, xmm0
sqrtss xmm0, xmm8
jmp 0x1400078a0
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
xorps xmm10, xmm10
cvtss2sd xmm10, xmm0
divsd xmm10, qword [0x140054748]
movd xmm0, dword [0x14005c09c]
cvtdq2pd xmm0, xmm0
comisd xmm10, xmm0
jae 0x1400086a2
lea rdx, [rdi + 0x758]
lea rcx, [0x14005c830]
call fcn.140006fa0
test al, 0xf8
jne 0x1400086a2
movsd xmm7, qword [rbp + 0x78]
movsd xmm9, qword [rbp + 0x70]
movsd xmm8, qword [rbp + 0x88]
movss xmm2, dword [0x14005c85c]
movss xmm1, dword [0x14005c858]
movsd xmm6, qword [rbp + 0x80]
comisd xmm6, xmm11
jbe 0x140007931
cvtps2pd xmm0, xmm1
comisd xmm0, xmm6
jbe 0x140007931
comisd xmm8, xmm11
jbe 0x140007931
cvtps2pd xmm0, xmm2
comisd xmm0, xmm8
ja 0x140007962
comisd xmm9, xmm11
jbe 0x140008699
cvtps2pd xmm0, xmm1
comisd xmm0, xmm9
jbe 0x140008699
comisd xmm7, xmm11
jbe 0x140008699
cvtps2pd xmm0, xmm2
comisd xmm0, xmm7
jbe 0x140008699
cmp qword [0x14005c880], rbx
je 0x14000798e
mov rdx, qword [r14 + 8]
add rdx, 0x1211
lea rcx, [0x14005c830]
call fcn.140002f60
cmp dword [0x14005c878], eax
je 0x140008699
movaps xmm0, xmm8
subsd xmm0, xmm7
andps xmm0, xmm12
mulsd xmm0, qword [0x1400546e8]
cvtpd2ps xmm0, xmm0
cvtpd2ps xmm13, xmm8
cvtpd2ps xmm11, xmm7
mulss xmm0, xmm15
cvtps2pd xmm0, xmm0
subsd xmm6, xmm0
cvtpd2ps xmm12, xmm6
addsd xmm0, xmm9
cvtpd2ps xmm9, xmm0
cmp byte [0x14005c052], bl
je 0x1400079fe
lea rdx, [rsi + 0x2e8]
call fcn.140006ed0
movaps xmm6, xmm0
lea rdx, [rsi + 0x2f0]
call fcn.140006ed0
addss xmm0, dword [0x140054664]
comiss xmm0, xmm6
setae cl
jmp 0x140007a00
mov cl, 1
lea rax, [0x14005c0b4]
test cl, cl
lea rcx, [0x14005c0a4]
cmovne rax, rcx
movups xmm8, xmmword [rax]
movups xmmword [rsp + 0x70], xmm8
movups xmmword [rbp + 0x30], xmm8
cmp byte [0x14005c084], bl
je 0x140007b24
lea rbx, [r14 + 0x20]
mov rcx, rbx
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x140007a43
mov rcx, qword [rbx]
mov rax, qword [0x14005c8f8]
test rcx, rcx
jne 0x140007a55
movaps xmm6, xmm14
jmp 0x140007ab2
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], rcx
movss xmm0, dword [0x14005486c]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x140054858]
movss xmm2, dword [rax + 0x3c10]
lea rdx, [rbp - 0x30]
mov rcx, qword [rax + 0x3c08]
call fcn.1400391f0
movss xmm0, dword [rbp - 0x30]
addss xmm0, dword [0x1400546bc]
cvttss2si eax, xmm0
movd xmm6, eax
cvtdq2ps xmm6, xmm6
movss dword [rbp - 0x30], xmm6
mov rdx, qword [rbx + 0x18]
movzx r8d, byte [0x14005c091]
cmp rdx, 0x10
jb 0x140007ac3
mov rbx, qword [rbx]
lea rcx, [rbp + 0x30]
call fcn.140013820
movaps xmm1, xmm13
subss xmm1, dword [0x1400547c0]
movaps xmm0, xmm12
addss xmm0, xmm9
mulss xmm0, xmm15
mulss xmm6, xmm15
subss xmm0, xmm6
movss xmm7, dword [0x1400546c4]
subss xmm0, xmm7
movss dword [rbp - 0x28], xmm0
movss dword [rbp - 0x24], xmm1
mov byte [rsp + 0x28], r8b
mov r9, rbx
mov r8d, eax
lea rdx, [rbp - 0x28]
mov rcx, qword [rbp + 0x158]
call fcn.1400355e0
xor ebx, ebx
jmp 0x140007b2c
movss xmm7, dword [0x1400546c4]
cmp byte [0x14005c085], 0
je 0x140007f33
movzx eax, word [0x14004d9e0]
mov word [rsp + 0x54], ax
movzx eax, byte [0x14004d9e2]
mov byte [rsp + 0x54], 0x6d
xor byte [rsp + 0x55], 0x37
xor al, 0x38
mov byte [rsp + 0x56], al
mov qword [rbp - 0x50], rbx
mov qword [rbp - 0x40], rbx
mov qword [rbp - 0x38], 0xf
mov byte [rbp - 0x50], 0
lea rax, [rsp + 0x54]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140007b80
lea rdx, [rsp + 0x54]
lea rcx, [rbp - 0x50]
call fcn.1400043a0
nop
cvttsd2si r8d, xmm10
lea r9, [rbp + 0x1e5]
test r8d, r8d
jns 0x140007bf0
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 0x140007bb0
dec r9
mov byte [r9], 0x2d
jmp 0x140007c1a
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 0x140007bf0
mov qword [rbp - 0x70], rbx
mov qword [rbp - 0x60], rbx
mov qword [rbp - 0x58], 0xf
mov byte [rbp - 0x70], 0
lea rax, [rbp + 0x1e5]
cmp r9, rax
je 0x140007c51
lea r8, [rbp + 0x1e5]
sub r8, r9
mov rdx, r9
lea rcx, [rbp - 0x70]
call fcn.1400043a0
nop
movzx eax, word [0x14004d9e4]
mov word [rsp + 0x50], ax
cmp byte [0x14004d9e5], 0
je 0x140007c70
mov byte [rsp + 0x50], 0x5b
xor byte [rsp + 0x51], 0x37
mov qword [rbp + 0x50], rbx
mov qword [rbp + 0x60], rbx
mov qword [rbp + 0x68], 0xf
mov byte [rbp + 0x50], 0
lea rax, [rsp + 0x50]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x140007c90
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x50]
call fcn.1400043a0
nop
lea r9, [rbp - 0x70]
lea r8, [rbp + 0x50]
lea rcx, [rbp + 0x130]
call fcn.140008b00
nop
lea r9, [rbp - 0x50]
lea r8, [rbp + 0x130]
lea rcx, [rbp + 0x1f0]
call fcn.140008b00
nop
mov rdx, qword [rbp + 0x148]
cmp rdx, 0x10
jb 0x140007d18
inc rdx
mov rcx, qword [rbp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140007d12
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400087e2
call fcn.14004a434
nop
mov rdx, qword [rbp + 0x68]
cmp rdx, 0x10
jb 0x140007d54
inc rdx
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140007d4e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400087e9
call fcn.14004a434
nop
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x140007d90
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140007d8a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400087f0
call fcn.14004a434
nop
mov rdx, qword [rbp - 0x38]
cmp rdx, 0x10
jb 0x140007dcb
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140007dc6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400087f7
call fcn.14004a434
lea rcx, [rbp + 0x1f0]
mov rdx, qword [rbp + 0x1f0]
mov r10, qword [rbp + 0x208]
cmp r10, 0x10
cmovae rcx, rdx
mov rax, qword [0x14005c8f8]
test rcx, rcx
jne 0x140007dfa
movaps xmm6, xmm14
jmp 0x140007e5d
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rcx
movss xmm0, dword [0x14005486c]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x140054858]
movss xmm2, dword [rax + 0x3c10]
lea rdx, [rbp - 0x20]
mov rcx, qword [rax + 0x3c08]
call fcn.1400391f0
movss xmm0, dword [rbp - 0x20]
addss xmm0, dword [0x1400546bc]
cvttss2si eax, xmm0
movd xmm6, eax
cvtdq2ps xmm6, xmm6
movss dword [rbp - 0x20], xmm6
mov r10, qword [rbp + 0x208]
mov rdx, qword [rbp + 0x1f0]
cmp byte [0x14005c086], 0
je 0x140007e70
movss xmm7, dword [0x1400547c4]
jmp 0x140007e74
movaps xmm7, xmm14
movzx r8d, byte [0x14005c091]
lea r9, [rbp + 0x1f0]
cmp r10, 0x10
cmovae r9, rdx
lea rcx, [rbp + 0x30]
call fcn.140013820
movaps xmm1, xmm11
movss xmm10, dword [0x140054734]
addss xmm1, xmm10
addss xmm1, xmm7
movaps xmm0, xmm12
addss xmm0, xmm9
mulss xmm0, xmm15
mulss xmm6, xmm15
subss xmm0, xmm6
movss xmm7, dword [0x1400546c4]
subss xmm0, xmm7
movss dword [rbp - 0x18], xmm0
movss dword [rbp - 0x14], xmm1
mov byte [rsp + 0x28], r8b
mov r8d, eax
lea rdx, [rbp - 0x18]
mov rcx, qword [rbp + 0x158]
call fcn.1400355e0
nop
mov rdx, qword [rbp + 0x208]
cmp rdx, 0x10
jb 0x140007f3c
inc rdx
mov rcx, qword [rbp + 0x1f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140007f2c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400087fe
call fcn.14004a434
jmp 0x140007f3c
movss xmm10, dword [0x140054734]
cmp byte [0x14005c086], 0
je 0x140008499
mov rcx, rdi
call fcn.140003890
mov qword [rbp + 0x150], rbx
mov dword [rbp + 0x1ac], ebx
mov ecx, dword [0x14005c830]
mov dword [rbp + 0x1a8], ecx
mov rcx, qword [0x14005c850]
mov qword [rbp + 0x1b8], rcx
add rax, 0x510
mov qword [rbp + 0x1b0], rax
lea rax, [rbp + 0x150]
mov qword [rbp + 0x1c0], rax
mov qword [rbp + 0x1c8], 8
mov eax, 5
mov dword [rbp + 0x160], eax
lea rax, [rbp + 0x1a8]
mov qword [rbp + 0x168], rax
mov dword [rbp + 0x164], 2
mov dword [rsp + 0x48], 0x10
lea rax, [rbp + 0x160]
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], 0x10
lea rax, [rbp + 0x160]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], ebx
lea rax, [rbp + 0x210]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x14005c838]
call fcn.14004a160
mov qword [rbp + 0x1d0], rbx
mov qword [rbp + 0x1e0], rbx
mov qword [rbp + 0x1e8], 0xf
mov byte [rbp + 0x1d0], 0
lea rdx, [rdi + 0x1ee9]
call fcn.140004730
cmp al, 2
jne 0x140008133
lea rdx, [rbp - 0x50]
mov rcx, qword [rbp + 0x150]
call fcn.140007060
mov rbx, rax
lea rax, [rbp + 0x1d0]
cmp rax, rbx
je 0x1400080e2
mov rdx, qword [rbp + 0x1e8]
cmp rdx, 0x10
jb 0x1400080a5
inc rdx
mov rcx, qword [rbp + 0x1d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400080a0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140008805
call fcn.14004a434
xor eax, eax
mov qword [rbp + 0x1e0], rax
mov qword [rbp + 0x1e8], 0xf
mov byte [rbp + 0x1d0], al
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x1d0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x1e0], xmm1
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], 0xf
mov byte [rbx], al
mov rdx, qword [rbp - 0x38]
cmp rdx, 0x10
jb 0x14000811d
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140008118
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140008805
call fcn.14004a434
xor ebx, ebx
mov qword [rbp - 0x40], rbx
mov qword [rbp - 0x38], 0xf
mov byte [rbp - 0x50], bl
jmp 0x14000835f
movsd xmm0, qword [0x14004d9f0]
movsd qword [rsp + 0x58], xmm0
mov eax, dword [0x14004d9f8]
mov dword [rsp + 0x60], eax
movzx eax, word [0x14004d9fc]
mov word [rsp + 0x64], ax
cmp byte [0x14004d9fd], 0
je 0x1400082d3
mov r8d, ebx
cmp r13d, 2
jl 0x140008295
movdqa xmm4, xmmword [0x140054dc0]
mov eax, 5
movd xmm6, eax
mov eax, 0x1f
movd xmm5, eax
movdqa xmm2, xmmword [0x140054910]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140054960]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1400549c0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1400549f0]
movd xmm0, dword [0x14004d9f0]
pxor xmm2, xmm0
movd dword [rsp + 0x58], xmm2
movdqa xmm3, xmmword [0x140054930]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140054960]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1400549c0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1400549f0]
movd xmm0, dword [rsp + 0x5c]
pxor xmm2, xmm0
movd dword [rsp + 0x5c], xmm2
mov r8d, 8
movups xmm8, xmmword [rsp + 0x70]
movss xmm7, dword [0x1400546c4]
mov eax, r8d
lea r9, [rsp + 0x58]
add r9, rax
mov eax, 0x92492493
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x36
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xe
jl 0x1400082a0
mov qword [rbp - 0x70], rbx
mov qword [rbp - 0x60], rbx
mov qword [rbp - 0x58], 0xf
lea rax, [rsp + 0x58]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x1400082f0
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 0x70]
call fcn.1400043a0
mov rdx, qword [rbp + 0x1e8]
cmp rdx, 0x10
jb 0x140008349
inc rdx
mov rcx, qword [rbp + 0x1d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140008344
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000880c
call fcn.14004a434
movups xmm0, xmmword [rbp - 0x70]
movups xmmword [rbp + 0x1d0], xmm0
movups xmm1, xmmword [rbp - 0x60]
movups xmmword [rbp + 0x1e0], xmm1
lea rcx, [rbp + 0x1d0]
mov rdx, qword [rbp + 0x1d0]
mov r10, qword [rbp + 0x1e8]
cmp r10, 0x10
cmovae rcx, rdx
mov rax, qword [0x14005c8f8]
test rcx, rcx
jne 0x14000838e
movaps xmm6, xmm14
jmp 0x1400083f1
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rcx
movss xmm0, dword [0x14005486c]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x140054858]
movss xmm2, dword [rax + 0x3c10]
lea rdx, [rbp - 0x10]
mov rcx, qword [rax + 0x3c08]
call fcn.1400391f0
movss xmm0, dword [rbp - 0x10]
addss xmm0, dword [0x1400546bc]
cvttss2si eax, xmm0
movd xmm6, eax
cvtdq2ps xmm6, xmm6
movss dword [rbp - 0x10], xmm6
mov r10, qword [rbp + 0x1e8]
mov rdx, qword [rbp + 0x1d0]
movzx r8d, byte [0x14005c091]
lea r9, [rbp + 0x1d0]
cmp r10, 0x10
cmovae r9, rdx
lea rcx, [rbp + 0x30]
call fcn.140013820
movaps xmm1, xmm11
addss xmm1, xmm10
movaps xmm0, xmm12
addss xmm0, xmm9
mulss xmm0, xmm15
mulss xmm6, xmm15
subss xmm0, xmm6
subss xmm0, xmm7
movss dword [rbp - 8], xmm0
movss dword [rbp - 4], xmm1
mov byte [rsp + 0x28], r8b
mov r8d, eax
lea rdx, [rbp - 8]
mov rcx, qword [rbp + 0x158]
call fcn.1400355e0
nop
mov rdx, qword [rbp + 0x1e8]
cmp rdx, 0x10
jb 0x140008499
inc rdx
mov rcx, qword [rbp + 0x1d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140008494
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140008813
call fcn.14004a434
cmp byte [0x14005c087], 0
je 0x1400085bc
lea rbx, [0x14004da00]
lea rcx, [rbp + 0x30]
call fcn.140013820
mov edi, eax
lea r12, sub.api_ms_win_crt_heap_l1_1_0.dll_free
nop
mov r9d, dword [rbx]
mov r8, r15
lea rdx, [rbp + 0x1d0]
mov rcx, rsi
call fcn.140005bb0
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0xf0], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x100], xmm1
lea r8, [rbp + 0xf0]
lea rdx, [rbp + 0xa0]
call fcn.140005890
mov r9d, dword [rbx + 4]
mov r8, r15
lea rdx, [rbp + 0x1d0]
mov rcx, rsi
call fcn.140005bb0
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x110], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x120], xmm1
lea r8, [rbp + 0x110]
lea rdx, [rbp + 0x90]
call fcn.140005890
movsd xmm0, qword [rbp + 0x90]
cvtpd2ps xmm0, xmm0
movss dword [rbp], xmm0
movsd xmm1, qword [rbp + 0x98]
cvtpd2ps xmm1, xmm1
movss dword [rbp + 4], xmm1
movsd xmm0, qword [rbp + 0xa0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 8], xmm0
movsd xmm1, qword [rbp + 0xa8]
cvtpd2ps xmm1, xmm1
movss dword [rbp + 0xc], xmm1
movd xmm0, dword [0x14005c094]
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x20], xmm0
mov r9d, edi
lea r8, [rbp]
lea rdx, [rbp + 8]
mov rcx, qword [rbp + 0x158]
call fcn.140034970
add rbx, 8
cmp rbx, r12
jne 0x1400084c0
mov r12, qword [rbp + 0x48]
cmp byte [0x14005c088], 0
je 0x140008690
cmp dword [0x14005c08c], 0
jne 0x14000871f
cmp byte [0x14005c090], 0
je 0x140008640
movaps xmm0, xmmword [0x140054b10]
movups xmmword [rsp + 0x70], xmm0
movss dword [rbp + 0x10], xmm9
movss dword [rbp + 0x14], xmm11
movss dword [rbp + 0x18], xmm12
movss dword [rbp + 0x1c], xmm13
movd xmm6, dword [0x14005c098]
cvtdq2ps xmm6, xmm6
addss xmm6, xmm6
lea rcx, [rsp + 0x70]
call fcn.140013820
mov r9d, eax
movss dword [rsp + 0x30], xmm6
movss dword [rsp + 0x20], xmm14
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x18]
mov rcx, qword [rbp + 0x158]
call fcn.140034ad0
movss dword [rbp + 0x20], xmm9
movss dword [rbp + 0x24], xmm11
movss dword [rbp + 0x28], xmm12
movss dword [rbp + 0x2c], xmm13
movd xmm6, dword [0x14005c098]
cvtdq2ps xmm6, xmm6
lea rcx, [rbp + 0x30]
call fcn.140013820
mov r9d, eax
movss dword [rsp + 0x30], xmm6
movss dword [rsp + 0x20], xmm14
lea r8, [rbp + 0x20]
lea rdx, [rbp + 0x28]
mov rcx, qword [rbp + 0x158]
call fcn.140034ad0
movsd xmm12, qword [0x140054d90]
movss xmm9, dword [0x140054700]
movsd xmm6, qword [0x140054740]
add r14, 0x40
cmp r14, r12
jne 0x1400075c0
mov rcx, qword [rbp + 0x330]
xor rcx, rsp
call fcn.14004a180
lea r11, [rsp + 0x4e0]
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
lea rax, [rbp + 0x158]
mov qword [rbp + 0x150], rax
subss xmm11, xmm13
cmp byte [0x14005c090], 0
je 0x140008799
movaps xmm0, xmmword [0x140054b10]
movaps xmmword [rsp + 0x70], xmm0
movd xmm0, dword [0x14005c098]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x1400546e0]
cvttss2si eax, xmm0
cvttss2si ecx, xmm11
movaps xmm1, xmm9
subss xmm1, xmm12
cvttss2si r9d, xmm1
cvttss2si r8d, xmm13
cvttss2si edx, xmm12
mov dword [rsp + 0x30], eax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x150]
call fcn.140008820
movdqa xmmword [rsp + 0x70], xmm8
cvttss2si ecx, xmm11
subss xmm9, xmm12
cvttss2si r9d, xmm9
cvttss2si r8d, xmm13
cvttss2si edx, xmm12
mov eax, dword [0x14005c098]
mov dword [rsp + 0x30], eax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x150]
call fcn.140008820
jmp 0x140008690
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
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