Function at 0x1400081d0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x70]
sub rsp, 0x170
movaps xmmword [rsp + 0x160], xmm6
mov rbx, rcx
xor edi, edi
mov dword [rbp + 0xb8], edi
lea rax, [0x1400baf70]
mov qword [rsp + 0x50], rax
mov qword [rbp + 8], rdi
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], rdi
mov dword [rbp + 0xb8], 1
lea r13, [0x1400baf78]
mov qword [rbp], r13
mov dword [rbp - 4], 0x98
mov qword [rsp + 0x58], rdi
xor r8d, r8d
lea rdx, [rsp + 0x60]
lea rcx, [rbp]
call fcn.14000cbb0
nop
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
lea r12, [0x1400bafc0]
mov qword [rsp + rcx + 0x50], r12
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0x4c], edx
lea rcx, [rsp + 0x60]
call fcn.14000b720
nop
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x40], rdi
mov r14d, 0xf
mov qword [rsp + 0x48], r14
mov byte [rsp + 0x30], dil
mov dword [rbp + 0xb0], edi
mov dword [rsp + 0x20], 0xb386df99
mov dword [rsp + 0x24], 0x958a9c8b
mov dword [rsp + 0x28], 0x9d9d9bdf
xor eax, eax
mov byte [rsp + 0x2c], al
mov edx, edi
movsxd rcx, edx
lea eax, [rdx - 0x17]
xor byte [rsp + rcx + 0x20], al
inc edx
cmp edx, 0xc
jb 0x1400082c1
mov byte [rsp + 0x2c], 0
lea rcx, [rsp + 0x20]
call fcn.140007880
mov r8d, 1
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.14000b670
mov esi, 6
lea r15d, [rsi - 4]
test rax, rax
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
lea rcx, [rsp + rcx + 0x50]
je 0x14000831f
mov edx, 4
cmp qword [rcx + 0x48], 0
cmovne edx, edi
jmp 0x14000832d
mov edx, esi
cmp qword [rcx + 0x48], 0
cmovne edx, r15d
or edx, dword [rcx + 0x10]
xor r8d, r8d
call fcn.140007690
mov dword [rbx + 0xa0], 0x24
mov ecx, edi
mov rdx, qword [0x140125ab0]
mov rax, qword [0x140125aa8]
cmp rax, rdx
je 0x14000836b
cmp word [rax], 0x24
jne 0x140008360
mov dword [rbx + 0x9c], ecx
inc ecx
add rax, 0x28
cmp rax, rdx
jne 0x140008354
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
test byte [rsp + rcx + 0x60], sil
jne 0x140008820
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
lea rdx, [rbx + 4]
mov rcx, rax
call fcn.14000d750
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
mov ecx, dword [rbx + 0x28]
mov dword [rbp + 0xb8], ecx
lea rdx, [rbp + 0xb8]
mov rcx, rax
call fcn.14000d5d0
mov eax, dword [rbp + 0xb8]
mov dword [rbx + 0x28], eax
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
mov ecx, dword [rbx + 0x18]
mov dword [rbp + 0xb8], ecx
lea rdx, [rbp + 0xb8]
mov rcx, rax
call fcn.14000d5d0
mov eax, dword [rbp + 0xb8]
mov dword [rbx + 0x18], eax
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
lea rdx, [rbx + 0xc]
mov rcx, rax
call fcn.14000d2d0
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
lea rdx, [rbx + 0x10]
mov rcx, rax
call fcn.14000d750
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
lea rdx, [rbx + 8]
mov rcx, rax
call fcn.14000d2d0
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
lea rdx, [rbx + 0x20]
mov rcx, rax
call fcn.14000d2d0
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
lea rdx, [rbx + 0x24]
mov rcx, rax
call fcn.14000d2d0
movss xmm1, dword [rbx + 0x20]
movss xmm0, dword [0x1400bd428]
comiss xmm0, xmm1
ja 0x14000849c
comiss xmm1, dword [0x1400bd4c0]
jbe 0x1400084a3
mov dword [rbx + 0x20], 0x3f800000
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
lea rdx, [rbx + 0x2c]
mov rcx, rax
call fcn.14000d750
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
lea rdx, [rbx + 0x2d]
mov rcx, rax
call fcn.14000d750
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
lea rdx, [rbx + 0x2f]
mov rcx, rax
call fcn.14000d750
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
lea rdx, [rbx + 0x31]
mov rcx, rax
call fcn.14000d750
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
lea rdx, [rbx + 0x32]
mov rcx, rax
call fcn.14000d750
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
lea rdx, [rbx + 0x98]
mov rcx, rax
call fcn.14000d2d0
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
lea rdx, [rbp + 0xb0]
mov rcx, rax
call fcn.14000d450
mov ecx, dword [rbp + 0xb0]
movzx eax, cl
xorps xmm3, xmm3
cvtsi2ss xmm3, rax
movss xmm6, dword [0x1400bd384]
mulss xmm3, xmm6
mov eax, ecx
shr eax, 8
movzx eax, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm6
mov eax, ecx
shr eax, 0x10
movzx eax, al
xorps xmm1, xmm1
cvtsi2ss xmm1, rax
mulss xmm1, xmm6
shr ecx, 0x18
mov eax, ecx
xorps xmm2, xmm2
cvtsi2ss xmm2, rax
mulss xmm2, xmm6
shufps xmm3, xmm3, 0xe1
movss xmm3, xmm0
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm1
shufps xmm3, xmm3, 0x27
movss xmm3, xmm2
shufps xmm3, xmm3, 0x39
movups xmmword [rbx + 0x38], xmm3
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
lea rdx, [rbp + 0xb0]
mov rcx, rax
call fcn.14000d450
mov ecx, dword [rbp + 0xb0]
movzx eax, cl
xorps xmm3, xmm3
cvtsi2ss xmm3, rax
mulss xmm3, xmm6
mov eax, ecx
shr eax, 8
movzx eax, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm6
mov eax, ecx
shr eax, 0x10
movzx eax, al
xorps xmm1, xmm1
cvtsi2ss xmm1, rax
mulss xmm1, xmm6
shr ecx, 0x18
mov eax, ecx
xorps xmm2, xmm2
cvtsi2ss xmm2, rax
mulss xmm2, xmm6
shufps xmm3, xmm3, 0xe1
movss xmm3, xmm0
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm1
shufps xmm3, xmm3, 0x27
movss xmm3, xmm2
shufps xmm3, xmm3, 0x39
movups xmmword [rbx + 0x58], xmm3
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
lea rdx, [rbp + 0xb0]
mov rcx, rax
call fcn.14000d450
mov ecx, dword [rbp + 0xb0]
movzx eax, cl
xorps xmm3, xmm3
cvtsi2ss xmm3, rax
mulss xmm3, xmm6
mov eax, ecx
shr eax, 8
movzx eax, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm6
mov eax, ecx
shr eax, 0x10
movzx eax, al
xorps xmm1, xmm1
cvtsi2ss xmm1, rax
mulss xmm1, xmm6
shr ecx, 0x18
mov eax, ecx
xorps xmm2, xmm2
cvtsi2ss xmm2, rax
mulss xmm2, xmm6
shufps xmm3, xmm3, 0xe1
movss xmm3, xmm0
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm1
shufps xmm3, xmm3, 0x27
movss xmm3, xmm2
shufps xmm3, xmm3, 0x39
movups xmmword [rbx + 0x78], xmm3
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.1400123e0
lea rdx, [rbp + 0xb0]
mov rcx, rax
call fcn.14000d450
mov ecx, dword [rbp + 0xb0]
movzx eax, cl
xorps xmm3, xmm3
cvtsi2ss xmm3, rax
mulss xmm3, xmm6
mov eax, ecx
shr eax, 8
movzx eax, al
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mulss xmm0, xmm6
mov eax, ecx
shr eax, 0x10
movzx eax, al
xorps xmm1, xmm1
cvtsi2ss xmm1, rax
mulss xmm1, xmm6
shr ecx, 0x18
mov eax, ecx
xorps xmm2, xmm2
cvtsi2ss xmm2, rax
mulss xmm2, xmm6
shufps xmm3, xmm3, 0xe1
movss xmm3, xmm0
shufps xmm3, xmm3, 0xc6
movss xmm3, xmm1
shufps xmm3, xmm3, 0x27
movss xmm3, xmm2
shufps xmm3, xmm3, 0x39
movups xmmword [rbx + 0x68], xmm3
mov edx, edi
mov r8, qword [0x140125ab0]
mov rcx, qword [0x140125aa8]
cmp rcx, r8
je 0x1400087e5
mov r9d, dword [rbx + 0xa0]
nop dword [rax]
movzx eax, word [rcx]
cmp eax, r9d
jne 0x1400087ae
mov dword [rbx + 0x9c], edx
inc edx
add rcx, 0x28
cmp rcx, r8
jne 0x1400087a0
mov r8, qword [0x140125ab0]
mov rcx, qword [0x140125aa8]
cmp rcx, r8
je 0x1400087e5
mov edx, dword [rbx + 0x18]
nop
movzx eax, word [rcx]
cmp eax, edx
jne 0x1400087da
mov dword [rbx + 0x1c], edi
inc edi
add rcx, 0x28
cmp rcx, r8
jne 0x1400087d0
lea rcx, [rsp + 0x60]
call fcn.14000b580
test rax, rax
jne 0x14000881b
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
lea rax, [rsp + 0x50]
add rcx, rax
cmp qword [rcx + 0x48], 0
cmovne esi, r15d
or esi, dword [rcx + 0x10]
xor r8d, r8d
mov edx, esi
call fcn.140007690
mov r14, qword [rsp + 0x48]
cmp r14, 0x10
jb 0x14000885a
lea rdx, [r14 + 1]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140008854
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400088db
call fcn.14007a00c
nop
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x50], r12
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0x4c], edx
lea rcx, [rsp + 0x60]
call fcn.140009540
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x50], r13
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rsp + rcx + 0x4c], edx
lea rax, vtable.std::ios_base.0
mov qword [rbp], rax
lea rcx, [rbp]
call fcn.14007932c
nop
mov rbx, qword [rsp + 0x1c0]
movaps xmm6, xmmword [rsp + 0x160]
add rsp, 0x170
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140089c44
nop
int3