Function at 0x14012be9a
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x338
mov r12, r8
mov r14, rdx
mov rbx, rcx
lea rax, [rsp + 0x278]
mov qword [rax], r8
lea r13, [0x140006df0]
mov qword [rax + 8], r13
lea rdx, [rsp + 0x1d0]
mov qword [rdx], 0
lea rcx, [0x14036e9b8]
mov qword [rdx + 0x10], rcx
mov qword [rdx + 0x18], 2
mov qword [rdx + 0x20], rax
mov qword [rdx + 0x28], 1
lea rbp, [rsp + 0x170]
mov rcx, rbp
call fcn.140030660
mov rdx, qword [rbp + 8]
mov r8, qword [rbp + 0x10]
lea rsi, [rsp + 0x1d0]
mov rcx, rsi
xor r9d, r9d
call fcn.140151c10
cmp dword [rsi], 2
jne 0x14012bf48
mov rax, qword [rsp + 0x1d8]
mov qword [rsp + 0x280], rax
mov qword [rsp + 0x278], 2
jmp 0x14012bf69
lea r15, [rsp + 0x278]
lea rsi, [rsp + 0x1d0]
mov ecx, 9
mov rdi, r15
rep movsq qword [rdi], qword [rsi]
cmp qword [r15], 2
jne 0x14012bf95
lea rcx, [rsp + 0x280]
call fcn.14006467d
mov byte [rbx], 0x13
cmp qword [rsp + 0x170], 0
je 0x14012ca14
mov r8, qword [rsp + 0x178]
jmp 0x14012ca05
mov qword [rsp + 0x278], rbp
mov qword [rsp + 0x280], r13
lea rax, [0x140371928]
lea rcx, [rsp + 0x1d0]
mov qword [rcx + 0x10], rax
mov qword [rcx + 0x18], 2
mov qword [rcx], 0
mov qword [rcx + 0x20], r15
mov qword [rcx + 0x28], 1
call fcn.140153c30
lea rsi, [rsp + 0x318]
mov rcx, rsi
call fcn.14014d260
movups xmm0, xmmword [rsi + 8]
movups xmmword [rsp + 0xb8], xmm0
mov rcx, qword [rsp + 0x178]
mov rdx, qword [rsp + 0x180]
call fcn.140151aa0
test rax, rax
je 0x14012ca44
mov rcx, rax
call fcn.140156590
test rax, rax
je 0x14012ca54
mov qword [rsp + 0x30], rbx
mov rcx, rax
call fcn.140167460
test rax, rax
je 0x14012ca64
add r14, 0x18
lea rsi, [rsp + 0x80]
mov qword [rsi], rax
mov qword [rsi + 8], rdx
mov qword [rsp + 0x278], r14
mov qword [rsp + 0x280], r13
mov qword [rsp + 0x288], rsi
lea r14, [0x140037710]
mov qword [rsp + 0x290], r14
xor ebp, ebp
lea rdi, [rsp + 0x1d0]
mov qword [rdi], rbp
lea rax, [0x14036e8d0]
mov qword [rdi + 0x10], rax
mov eax, 2
mov qword [rdi + 0x18], rax
mov qword [rdi + 0x20], r15
mov qword [rdi + 0x28], rax
lea rbx, [rsp + 0xd0]
mov rcx, rbx
mov rdx, rdi
call fcn.140030660
mov rdx, qword [rbx + 8]
mov r8, qword [rbx + 0x10]
mov rcx, rsi
call fcn.140030a50
lea rax, [0x14036d125]
mov qword [rdi], rax
mov rcx, qword [rdi]
movabs rax, 0xdb340257f3ebf077
mov qword [rdi], rax
mov rdx, qword [rdi]
call fcn.140008a14
movabs rcx, 0x73a8dbf38d36e119
xor rcx, qword [rax]
lea rax, [rsp + 0x70]
mov qword [rax], rcx
lea rcx, [rsp + 0x190]
mov qword [rcx], rax
mov qword [rcx + 8], 8
lea rax, [rsp + 0xb8]
mov qword [rsp + 0x278], rax
lea rax, [0x140156ba0]
mov qword [rsp + 0x280], rax
mov qword [rsp + 0x288], rsi
mov qword [rsp + 0x290], r13
mov qword [rsp + 0x298], rcx
mov qword [rsp + 0x2a0], r14
mov qword [rdi], rbp
lea rax, [0x14036e8a0]
mov qword [rdi + 0x10], rax
mov eax, 3
mov qword [rdi + 0x18], rax
mov qword [rdi + 0x20], r15
mov qword [rdi + 0x28], rax
lea rcx, [rsp + 0x40]
lea rdx, [rsp + 0x1d0]
call fcn.140030660
cmp qword [rsi], rbp
je 0x14012c195
mov r8, qword [rsp + 0x88]
mov rcx, qword [0x1403ce198]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0xd0], 0
je 0x14012c1b7
mov r8, qword [rsp + 0xd8]
mov rcx, qword [0x1403ce198]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov r15, qword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
mov rax, qword [rsp + 0x180]
lea rdx, [rsp + 0x1d0]
mov qword [rdx + 0x10], rax
movups xmm0, xmmword [rsp + 0x170]
movaps xmmword [rdx], xmm0
lea rbx, [rsp + 0x278]
mov rcx, rbx
mov r8, r14
mov r9, rdi
call fcn.14012d9d3
cmp qword [rbx], 0
je 0x14012c226
mov rax, qword [rsp + 0x280]
lea rcx, [rsp + 0x1d0]
mov qword [rcx], rax
call fcn.14006467d
mov rax, qword [rsp + 0x30]
mov byte [rax], 0x17
jmp 0x14012c9db
mov rcx, rdi
xor edx, edx
call fcn.140034043
mov rbx, rax
mov rbp, rdx
mov rcx, rdx
mov rdx, r14
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
lea rdx, [rsp + 0x80]
mov qword [rdx], rbx
mov qword [rdx + 8], rbp
mov qword [rdx + 0x10], rdi
mov byte [rdx + 0x18], 1
mov eax, dword [rsp + 0x189]
mov ecx, dword [rsp + 0x18c]
mov dword [rdx + 0x19], eax
mov dword [rdx + 0x1c], ecx
lea rdi, [rsp + 0x1d0]
mov rcx, rdi
call fcn.14012caac
mov bl, byte [rdi + 0x98]
cmp bl, 3
jne 0x14012c2e3
movups xmm0, xmmword [rsp + 0x1d0]
movups xmm1, xmmword [rsp + 0x1e0]
movups xmm2, xmmword [rsp + 0x1f0]
movups xmm3, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0x100], xmm3
movaps xmmword [rsp + 0xf0], xmm2
movaps xmmword [rsp + 0xe0], xmm1
movaps xmmword [rsp + 0xd0], xmm0
mov rax, qword [rsp + 0x30]
movups xmmword [rax + 0x30], xmm3
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
jmp 0x14012c9db
lea rdi, [rsp + 0xd0]
lea rsi, [rsp + 0x1d0]
mov r8d, 0x98
mov rcx, rdi
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [rsi + 0x99]
mov ecx, dword [rsi + 0x9c]
lea rbp, [rsp + 0x278]
mov dword [rbp + 0x99], eax
mov dword [rbp + 0x9c], ecx
mov r8d, 0x98
mov rcx, rbp
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbp + 0x98], bl
lea rax, [0x140367f4c]
mov qword [rsi], rax
mov rcx, qword [rsi]
movabs rax, 0x114206cb52e66350
mov qword [rsi], rax
mov rdx, qword [rsi]
call fcn.1400093fb
xorps xmm0, xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x90], xmm0
mov rcx, 0xfffffffffffffff8
lea rdx, [0x14036eac8]
mov rbp, qword [rcx + rdx + 8]
xor rbp, qword [rax + rcx + 8]
mov qword [rsp + rcx + 0x88], rbp
add rcx, 8
cmp rcx, 0x18
jb 0x14012c37e
cmp qword [rsp + 0x278], 0
jne 0x14012ca7e
lea rdi, [rsp + 0x278]
mov qword [rdi], 0xffffffffffffffff
mov rdx, qword [rdi + 8]
mov qword [rsp + 0x20], 0x20
lea rbx, [rsp + 0x1d0]
lea r9, [rsp + 0x80]
mov rcx, rbx
mov r8, rdi
call fcn.14010edca
inc qword [rdi]
mov rax, qword [rbx + 0x40]
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movups xmm2, xmmword [rbx + 0x20]
movups xmm3, xmmword [rbx + 0x30]
movaps xmmword [rsp + 0xd0], xmm0
movaps xmmword [rsp + 0xe0], xmm1
movaps xmmword [rsp + 0xf0], xmm2
movaps xmmword [rsp + 0x100], xmm3
test rax, rax
je 0x14012c48f
movaps xmm0, xmmword [rsp + 0xd0]
movaps xmm1, xmmword [rsp + 0xe0]
movaps xmm2, xmmword [rsp + 0xf0]
movaps xmm3, xmmword [rsp + 0x100]
movaps xmmword [rsp + 0x200], xmm3
movaps xmmword [rsp + 0x1f0], xmm2
movaps xmmword [rsp + 0x1e0], xmm1
movaps xmmword [rsp + 0x1d0], xmm0
mov qword [rsp + 0x210], rax
mov rcx, qword [rsp + 0x200]
call fcn.1401d92c8
test eax, eax
je 0x14012c4c8
cdqe
mov rcx, qword [rsp + 0x30]
mov byte [rcx], 0x11
mov qword [rcx + 8], 0
mov qword [rcx + 0x10], rax
jmp 0x14012c9c1
movaps xmm0, xmmword [rsp + 0xd0]
movaps xmm1, xmmword [rsp + 0xe0]
movaps xmm2, xmmword [rsp + 0xf0]
movaps xmm3, xmmword [rsp + 0x100]
mov rax, qword [rsp + 0x30]
movups xmmword [rax + 0x30], xmm3
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
jmp 0x14012c9ce
mov rsi, r15
mov rax, qword [rsp + 0x30]
add rax, 8
mov qword [rsp + 0x1b8], rax
lea r13, [rsp + 0x1c0]
mov qword [r13], rbx
mov qword [r13 + 8], 0
lea rbx, [rsp + 0xd1]
lea rbp, [rsp + 0xd0]
mov rcx, rbp
mov rdx, r13
call fcn.1401324db
mov al, byte [rsp + 0xd0]
cmp al, 0x13
jne 0x14012c582
mov rax, qword [rsp + 0xd8]
test rax, rax
je 0x14012c682
mov rdx, qword [rax]
mov rcx, rbp
call fcn.140111adc
mov al, byte [rsp + 0xd0]
mov ecx, dword [rbx]
mov edx, dword [rbx + 3]
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x2b], edx
mov rdi, qword [rsp + 0xd8]
mov r15, qword [rsp + 0xe0]
movups xmm0, xmmword [rbx + 0x17]
movups xmm1, xmmword [rbx + 0x27]
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x50], xmm1
cmp al, 0x14
je 0x14012c682
cmp al, 0x13
jne 0x14012c62f
test r15, r15
je 0x14012c500
jmp 0x14012c6bb
mov ecx, dword [rbx]
mov edx, dword [rbx + 3]
mov dword [rsp + 0x73], edx
mov dword [rsp + 0x70], ecx
mov rdi, qword [rsp + 0xd8]
movups xmm0, xmmword [rbx + 0xf]
movups xmm1, xmmword [rbx + 0x1f]
movups xmm2, xmmword [rbx + 0x2f]
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x90], xmm1
movaps xmmword [rsp + 0xa0], xmm2
mov byte [rsp + 0xd0], al
mov ecx, dword [rsp + 0x70]
mov edx, dword [rsp + 0x73]
mov dword [rbx + 3], edx
mov dword [rbx], ecx
mov qword [rsp + 0xd8], rdi
movaps xmm0, xmmword [rsp + 0x80]
movaps xmm1, xmmword [rsp + 0x90]
movaps xmm2, xmmword [rsp + 0xa0]
movups xmmword [rbx + 0x2f], xmm2
movups xmmword [rbx + 0x1f], xmm1
movups xmmword [rbx + 0xf], xmm0
mov ecx, dword [rsp + 0x70]
mov edx, dword [rsp + 0x73]
mov dword [rsp + 0x2b], edx
mov dword [rsp + 0x28], ecx
mov r15, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0x108]
movups xmm0, xmmword [rbx + 0x17]
movups xmm1, xmmword [rbx + 0x27]
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x50], xmm1
jmp 0x14012c637
mov rcx, qword [rsp + 0x108]
mov byte [rsp + 0xd0], al
mov eax, dword [rsp + 0x28]
mov edx, dword [rsp + 0x2b]
mov dword [rbx + 3], edx
mov dword [rbx], eax
mov qword [rsp + 0xd8], rdi
mov qword [rsp + 0xe0], r15
movaps xmm0, xmmword [rsp + 0x40]
movaps xmm1, xmmword [rsp + 0x50]
movups xmmword [rbx + 0x27], xmm1
movups xmmword [rbx + 0x17], xmm0
mov qword [rsp + 0x108], rcx
mov rcx, rbp
call fcn.140004d50
jmp 0x14012c500
xor eax, eax
mov rcx, qword [rsp + 0x30]
mov qword [rcx + 8], rax
mov qword [rcx + 0x10], 8
mov qword [rcx + 0x18], rax
mov rax, qword [rsp + 0x1c0]
test rax, rax
mov r15, rsi
je 0x14012c9b9
mov rcx, qword [rax + 0x30]
call fcn.1401d9af4
jmp 0x14012c9b9
movaps xmm0, xmmword [rsp + 0x40]
movaps xmm1, xmmword [rsp + 0x50]
movaps xmmword [rsp + 0x1a0], xmm1
movaps xmmword [rsp + 0x190], xmm0
mov ecx, 4
xor edx, edx
call fcn.140006441
movaps xmm0, xmmword [rsp + 0x190]
movaps xmm1, xmmword [rsp + 0x1a0]
lea r13, [rsp + 0xd0]
movaps xmmword [r13 + 0x10], xmm1
movaps xmmword [r13], xmm0
mov qword [rdx], rdi
mov qword [rdx + 8], r15
movaps xmm0, xmmword [r13]
movaps xmm1, xmmword [r13 + 0x10]
movups xmmword [rdx + 0x20], xmm1
movups xmmword [rdx + 0x10], xmm0
lea rcx, [rsp + 0xb8]
mov qword [rcx], rax
mov qword [rsp + 0xb0], rdx
mov qword [rcx + 8], rdx
mov qword [rcx + 0x10], 1
movups xmm0, xmmword [rsp + 0x1c0]
lea rax, [rsp + 0x70]
mov r15, rax
movups xmmword [rax], xmm0
mov eax, 1
mov qword [rsp + 0x68], rax
mov rcx, r13
mov rdx, r15
call fcn.1401324db
mov al, byte [rsp + 0xd0]
cmp al, 0x13
jne 0x14012c852
mov rax, qword [rsp + 0xd8]
test rax, rax
je 0x14012c984
mov rdx, qword [rax]
mov rcx, r13
call fcn.140111adc
mov al, byte [rsp + 0xd0]
mov ecx, dword [rbx]
mov edx, dword [rbx + 3]
mov dword [rsp + 0x38], ecx
mov dword [rsp + 0x3b], edx
mov rbp, qword [rsp + 0xd8]
mov rdi, qword [rsp + 0xe0]
movups xmm0, xmmword [rbx + 0x17]
movups xmm1, xmmword [rbx + 0x27]
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x50], xmm1
cmp al, 0x14
je 0x14012c984
cmp al, 0x13
jne 0x14012c8ff
test rdi, rdi
je 0x14012c758
movaps xmm0, xmmword [rsp + 0x40]
movaps xmm1, xmmword [rsp + 0x50]
movaps xmmword [rsp + 0x1a0], xmm1
movaps xmmword [rsp + 0x190], xmm0
mov rdx, qword [rsp + 0x68]
cmp rdx, qword [rsp + 0xb8]
je 0x14012c952
lea rax, [rdx + rdx*2]
shl rax, 4
mov rcx, qword [rsp + 0xb0]
mov qword [rcx + rax], rbp
mov qword [rcx + rax + 8], rdi
movaps xmm0, xmmword [rsp + 0x190]
movaps xmm1, xmmword [rsp + 0x1a0]
movups xmmword [rcx + rax + 0x10], xmm0
movups xmmword [rcx + rax + 0x20], xmm1
inc rdx
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0xc8], rdx
jmp 0x14012c758
mov ecx, dword [rbx]
mov edx, dword [rbx + 3]
mov dword [rsp + 0x2b], edx
mov dword [rsp + 0x28], ecx
mov rbp, qword [rsp + 0xd8]
movups xmm0, xmmword [rbx + 0xf]
movups xmm1, xmmword [rbx + 0x1f]
movups xmm2, xmmword [rbx + 0x2f]
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x90], xmm1
movaps xmmword [rsp + 0xa0], xmm2
mov byte [rsp + 0xd0], al
mov ecx, dword [rsp + 0x28]
mov edx, dword [rsp + 0x2b]
mov dword [rbx + 3], edx
mov dword [rbx], ecx
mov qword [rsp + 0xd8], rbp
movaps xmm0, xmmword [rsp + 0x80]
movaps xmm1, xmmword [rsp + 0x90]
movaps xmm2, xmmword [rsp + 0xa0]
movups xmmword [rbx + 0x2f], xmm2
movups xmmword [rbx + 0x1f], xmm1
movups xmmword [rbx + 0xf], xmm0
mov ecx, dword [rsp + 0x28]
mov edx, dword [rsp + 0x2b]
mov dword [rsp + 0x3b], edx
mov dword [rsp + 0x38], ecx
mov rdi, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0x108]
movups xmm0, xmmword [rbx + 0x17]
movups xmm1, xmmword [rbx + 0x27]
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x50], xmm1
jmp 0x14012c907
mov rcx, qword [rsp + 0x108]
mov byte [rsp + 0xd0], al
mov eax, dword [rsp + 0x38]
mov edx, dword [rsp + 0x3b]
mov dword [rbx + 3], edx
mov dword [rbx], eax
mov qword [rsp + 0xd8], rbp
mov qword [rsp + 0xe0], rdi
movaps xmm0, xmmword [rsp + 0x40]
movaps xmm1, xmmword [rsp + 0x50]
movups xmmword [rbx + 0x27], xmm1
movups xmmword [rbx + 0x17], xmm0
mov qword [rsp + 0x108], rcx
mov rcx, r13
call fcn.140004d50
jmp 0x14012c758
mov r8d, 1
lea rcx, [rsp + 0xb8]
mov rdx, qword [rsp + 0x68]
call fcn.1402a59ba
mov rdx, qword [rsp + 0x68]
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0xb0], rax
jmp 0x14012c80a
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x14012c997
mov rcx, qword [rax + 0x30]
call fcn.1401d9af4
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x1b8]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0xb8]
movups xmmword [rcx], xmm0
mov r15, rsi
mov rax, qword [rsp + 0x30]
mov byte [rax], 0x1a
lea rcx, [rsp + 0x1d0]
call fcn.14012cfff
lea rcx, [rsp + 0x278]
call fcn.14012ccb7
test r15, r15
je 0x14012c9f2
mov rcx, qword [0x1403ce198]
xor edx, edx
mov r8, r14
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x318], 0
je 0x14012ca14
mov r8, qword [rsp + 0x320]
mov rcx, qword [0x1403ce198]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [r12], 0
je 0x14012ca2f
mov r8, qword [r12 + 8]
mov rcx, qword [0x1403ce198]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
nop
add rsp, 0x338
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, str.srcchromiumdumper.rs
jmp 0x14012ca72
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, str.srcchromiumdumper.rs
jmp 0x14012ca72
lea rcx, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
lea r8, str.srcchromiumdumper.rs
mov edx, 0x2b
call fcn.1402a6560
ud2
lea rax, str.C:UsersBraVera.cargo_registry_srcgithub.com_1ecc6299db9ec823_rusqlite_0.28.0_srclib.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x14037bbec]
lea r9, [0x14036dda0]
lea r8, [rsp + 0x1d0]
mov edx, 0x10
call fcn.1402a68e0
ud2