Function at 0x14001e6b0
Capabilities:
Decode data using base64 via dword translation table
Encrypt data using dpapi

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x118
mov rsi, rcx
mov rcx, rdx
call fcn.140130760
mov r8, rdx
lea rcx, [rsp + 0xa0]
mov rdx, rax
call fcn.140124640
mov rbx, qword [rsp + 0xa0]
mov rdi, qword [rsp + 0xa8]
movabs r15, 0x8000000000000000
cmp rbx, r15
jne 0x14001e74f
mov eax, edi
and eax, 3
cmp eax, 1
jne 0x14001e74a
mov rbx, qword [rdi - 1]
mov r14, qword [rdi + 7]
mov rax, qword [r14]
test rax, rax
je 0x14001e71f
mov rcx, rbx
call rax
dec rdi
mov rdx, qword [r14 + 8]
test rdx, rdx
je 0x14001e737
mov r8, qword [r14 + 0x10]
mov rcx, rbx
call fcn.140022710
mov edx, 0x18
mov r8d, 8
mov rcx, rdi
call fcn.140022710
mov qword [rsi], r15
jmp 0x14001e7b1
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x80], 0
lea rcx, [rsp + 0xa0]
lea rdx, [rsp + 0x70]
call fcn.140008e00
and dword [rsi - 0x49f00002], 0xa02484
add byte [rax], al
cmp al, 6
jne 0x14001e7c8
lea rcx, [rsp + 0xa8]
call fcn.140019ed0
mov qword [rsi], r15
test rbx, rbx
je 0x14001e7b1
mov r8d, 1
mov rcx, rdi
mov rdx, rbx
call fcn.140022710
invalid
mov rax, rsi
add rsp, 0x118
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop rsp
pop r13
pop r14
pop r15
ret
movups xmm0, xmmword [rsp + 0xa1]
movups xmm1, xmmword [rsp + 0xb0]
movups xmmword [rsp + 0x80], xmm1
movups xmmword [rsp + 0x71], xmm0
mov byte [rsp + 0x70], al
lea rcx, str.os_cryptencrypted_key
lea r8, [rsp + 0x70]
and al, 0x70
mov edx, 8
call fcn.1400a9770
test rax, rax
ror byte [rbx + rcx*4 + 0x35], 0x8f
cmpsd dword [rsi], dword [rdi]
xor al, byte [rax]
cmove rax, r14
lea rcx, [0x1402948c0]
lea ecx, [0x1402948c0]
mov edx, 0xd
mov r8, rax
invalid
call fcn.1400a9770
test rax, rax
cmove rax, r14
cmp byte [rax], 3
cmp byte [rbx], al
jne 0x14001e8fb
mov qword [rsp + 0xe8], rbx
mov rbx, qword [rax + 0x18]
mov rcx, rbx
add rcx, 3
invalid
jb 0x14001f691
mov rbp, qword [rax + 0x10]
mov rax, rcx
shr rax, 2
lea r12, [rax + rax*2]
and al, 0x40
mov r13d, 1
cmp rcx, 4
jb 0x14001e894
test r12, r12
js 0x14001f77e
sldt word [rax]
movzx eax, byte [0x14034bf01]
mov r14d, 1
add byte [rax], al
mov edx, 1
mov rcx, r12
call fcn.140022700
test rax, rax
je 0x14001f781
mov r13, rax
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r13
mov qword [rsp + 0x68], 0
mov rcx, rbp
mov qword [rsp + 0x48], rbx
mov rdx, rbx
call fcn.140022e30
mov ecx, 6
mov qword [rsp + 0x50], rax
mul rcx
jo 0x14001f6a9
mov r15, rax
test rax, rax
test eax, eax
je 0x14001e911
cmp r12, r15
jb 0x14001f23b
xor r14d, r14d
lea r12, [r14 + r13]
lea r8, [r15 - 1]
mov rcx, r12
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov byte [r15 + r12 - 1], 0
add r14, r15
jmp 0x14001e914
mov qword [rsi], r15
movzx eax, byte [rsp + 0x70]
cmp eax, 3
jae 0x14001f30e
jmp case.0x140018e5c.106
xor r14d, r14d
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x68], r14
mov rdx, qword [rsp + 0x48]
mov ecx, edx
and ecx, 7
cmp rcx, 5
mov qword [rsp + 0x38], r14
ja case.default.0x14001e941
lea rax, [0x140294fb0]
movsxd rcx, dword [rax + rcx*4]
add rcx, rax
jmp rcx
mov ecx, 8
jmp 0x14001e95d
mov ecx, 0xa
jmp 0x14001e95d
mov ecx, 0xc
jmp 0x14001e95d
mov ecx, 0xb
mov r14, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x48]
xor eax, eax
mov r8, rdx
sub r8, rcx
cmovb r8, rax
cmp r8, 0x20
jae 0x14001eaea
xor ecx, ecx
cmp r8, 8
jb 0x14001ef63
add r8, 0xfffffffffffffff8
cmp rax, r8
jae 0x14001ef63
lea r10, [0x140294280]
lea rbx, [rax + 8]
cmp rbx, rdx
ja 0x14001f807
lea r9, [rcx + 8]
cmp rcx, 0xfffffffffffffff7
ja 0x14001f7f8
cmp r9, r14
ja 0x14001f7e4
mov rdx, r8
movzx r8d, byte [rbp + rax]
movzx r9d, byte [r8 + r10]
cmp r9, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + rax + 1]
movzx r11d, byte [r8 + r10]
cmp r11, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + rax + 2]
movzx r14d, byte [r8 + r10]
cmp r14, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + rax + 3]
movzx r15d, byte [r8 + r10]
cmp r15, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + rax + 4]
movzx r12d, byte [r8 + r10]
cmp r12, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + rax + 5]
movzx r8d, byte [r8 + r10]
cmp r8, 0xff
je case.0x14001e941.1
movzx r13d, byte [rbp + rax + 6]
movzx r13d, byte [r13 + r10]
cmp r13, 0xff
je case.0x14001e941.1
movzx eax, byte [rbp + rax + 7]
movzx eax, byte [rax + r10]
cmp rax, 0xff
je case.0x14001e941.1
shl r9, 0x3a
shl r11, 0x34
or r11, r9
shl r14, 0x2e
shl r15, 0x28
or r15, r14
or r15, r11
shl r12, 0x22
shl r8, 0x1c
or r8, r12
shl r13d, 0x16
or r13, r8
or r13, r15
shl eax, 0x10
or rax, r13
bswap rax
mov r8, qword [rsp + 0x40]
mov qword [r8 + rcx], rax
add rcx, 6
dec qword [rsp + 0x50]
mov rax, rbx
mov r8, rdx
cmp rbx, rdx
mov r14, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x48]
jb 0x14001e99d
jmp 0x14001ef66
lea rax, [r8 - 0x20]
mov qword [rsp + 0x98], rax
xor ecx, ecx
lea rbx, [0x140294280]
xor r11d, r11d
mov qword [rsp + 0x90], r8
lea rax, [r11 + 0x20]
cmp rax, rdx
ja 0x14001f72d
cmp rcx, 0xffffffffffffffe5
ja 0x14001f715
lea rdx, [rcx + 0x1a]
cmp rdx, r14
ja 0x14001f701
movzx edx, byte [rbp + r11]
movzx edx, byte [rdx + rbx]
cmp rdx, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 1]
movzx r15d, byte [r8 + rbx]
cmp r15, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 2]
movzx r14d, byte [r8 + rbx]
cmp r14, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 3]
movzx r12d, byte [r8 + rbx]
cmp r12, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 4]
movzx r13d, byte [r8 + rbx]
cmp r13, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 5]
movzx r9d, byte [r8 + rbx]
cmp r9, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 6]
movzx r8d, byte [r8 + rbx]
cmp r8, 0xff
je case.0x14001e941.1
movzx r10d, byte [rbp + r11 + 7]
movzx r10d, byte [r10 + rbx]
cmp r10, 0xff
je case.0x14001e941.1
shl rdx, 0x3a
shl r15, 0x34
or r15, rdx
shl r14, 0x2e
shl r12, 0x28
or r12, r14
or r12, r15
shl r13, 0x22
shl r9, 0x1c
or r9, r13
shl r8d, 0x16
or r8, r9
or r8, r12
shl r10d, 0x10
or r10, r8
bswap r10
mov rdx, qword [rsp + 0x40]
mov qword [rdx + rcx], r10
movzx edx, byte [rbp + r11 + 8]
movzx edx, byte [rdx + rbx]
cmp rdx, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 9]
movzx r15d, byte [r8 + rbx]
cmp r15, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 0xa]
movzx r14d, byte [r8 + rbx]
cmp r14, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 0xb]
movzx r12d, byte [r8 + rbx]
cmp r12, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 0xc]
movzx r13d, byte [r8 + rbx]
cmp r13, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 0xd]
movzx r8d, byte [r8 + rbx]
cmp r8, 0xff
je case.0x14001e941.1
movzx r9d, byte [rbp + r11 + 0xe]
movzx r9d, byte [r9 + rbx]
cmp r9, 0xff
je case.0x14001e941.1
movzx r10d, byte [rbp + r11 + 0xf]
movzx r10d, byte [r10 + rbx]
cmp r10, 0xff
je case.0x14001e941.1
shl rdx, 0x3a
shl r15, 0x34
or r15, rdx
shl r14, 0x2e
shl r12, 0x28
or r12, r14
or r12, r15
shl r13, 0x22
shl r8, 0x1c
or r8, r13
shl r9d, 0x16
or r9, r8
or r9, r12
shl r10d, 0x10
or r10, r9
bswap r10
mov rdx, qword [rsp + 0x40]
mov qword [rdx + rcx + 6], r10
movzx edx, byte [rbp + r11 + 0x10]
movzx edx, byte [rdx + rbx]
cmp rdx, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 0x11]
movzx r15d, byte [r8 + rbx]
cmp r15, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 0x12]
movzx r14d, byte [r8 + rbx]
cmp r14, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 0x13]
movzx r12d, byte [r8 + rbx]
cmp r12, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 0x14]
movzx r13d, byte [r8 + rbx]
cmp r13, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 0x15]
movzx r8d, byte [r8 + rbx]
cmp r8, 0xff
je case.0x14001e941.1
movzx r9d, byte [rbp + r11 + 0x16]
movzx r9d, byte [r9 + rbx]
cmp r9, 0xff
je case.0x14001e941.1
movzx r10d, byte [rbp + r11 + 0x17]
movzx r10d, byte [r10 + rbx]
cmp r10, 0xff
je case.0x14001e941.1
shl rdx, 0x3a
shl r15, 0x34
or r15, rdx
shl r14, 0x2e
shl r12, 0x28
or r12, r14
or r12, r15
shl r13, 0x22
shl r8, 0x1c
or r8, r13
shl r9d, 0x16
or r9, r8
or r9, r12
shl r10d, 0x10
or r10, r9
bswap r10
mov rdx, qword [rsp + 0x40]
mov qword [rdx + rcx + 0xc], r10
movzx edx, byte [rbp + r11 + 0x18]
movzx edx, byte [rdx + rbx]
cmp rdx, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 0x19]
movzx r15d, byte [r8 + rbx]
cmp r15, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 0x1a]
movzx r14d, byte [r8 + rbx]
cmp r14, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 0x1b]
movzx r12d, byte [r8 + rbx]
cmp r12, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 0x1c]
movzx r13d, byte [r8 + rbx]
cmp r13, 0xff
je case.0x14001e941.1
movzx r8d, byte [rbp + r11 + 0x1d]
movzx r8d, byte [r8 + rbx]
cmp r8, 0xff
je case.0x14001e941.1
movzx r9d, byte [rbp + r11 + 0x1e]
movzx r9d, byte [r9 + rbx]
cmp r9, 0xff
je case.0x14001e941.1
movzx r10d, byte [rbp + r11 + 0x1f]
movzx r10d, byte [r10 + rbx]
cmp r10, 0xff
je case.0x14001e941.1
shl rdx, 0x3a
shl r15, 0x34
or r15, rdx
shl r14, 0x2e
shl r12, 0x28
or r12, r14
or r12, r15
shl r13, 0x22
shl r8, 0x1c
or r8, r13
shl r9d, 0x16
or r9, r8
or r9, r12
shl r10d, 0x10
or r10, r9
bswap r10
mov rdx, qword [rsp + 0x40]
mov qword [rdx + rcx + 0x12], r10
add rcx, 0x18
add qword [rsp + 0x50], 0xfffffffffffffffc
mov r11, rax
cmp rax, qword [rsp + 0x98]
mov r14, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x90]
jbe 0x14001eb0a
jmp 0x14001e97f
mov rbx, rax
mov rax, qword [rsp + 0x50]
cmp rax, 2
jb 0x14001f186
dec rax
lea r8, [rdx - 7]
mov qword [rsp + 0xf0], r8
mov r8, rbx
neg r8
lea r9, [rdx - 5]
mov qword [rsp + 0xf8], r9
lea r9, [rdx - 3]
mov qword [rsp + 0x100], r9
lea r9, [rdx - 1]
mov qword [rsp + 0x90], r9
cmp rbx, rdx
ja 0x14001f6c1
lea r9, [rcx + 6]
cmp rcx, 0xfffffffffffffff9
ja 0x14001f6d0
cmp r9, r14
ja 0x14001f6df
mov qword [rsp + 0x98], r9
mov qword [rsp + 0x50], rax
cmp rdx, rbx
je 0x14001f6f1
movzx eax, byte [rbp + rbx]
lea rdx, [0x140294280]
movzx eax, byte [rax + rdx]
cmp rax, 0xff
je case.0x14001e941.1
cmp qword [rsp + 0x90], rbx
je 0x14001f73c
movzx r9d, byte [rbp + rbx + 1]
movzx r9d, byte [r9 + rdx]
cmp r9, 0xff
je case.0x14001e941.1
mov rdx, qword [rsp + 0x48]
lea r13, [rdx + r8]
cmp r13, 3
jb 0x14001f752
movzx r10d, byte [rbp + rbx + 2]
lea rdx, [0x140294280]
movzx r10d, byte [r10 + rdx]
cmp r10, 0xff
je case.0x14001e941.1
add byte [rax], al
cmp qword [rsp + 0x100], rbx
je 0x14001f768
movzx r11d, byte [rbp + rbx + 3]
movzx r11d, byte [r11 + rdx]
cmp r11, 0xff
add byte [rax], al
je case.0x14001e941.1
cmp r13, 5
jb 0x14001f78c
add byte [rax], al
movzx r14d, byte [rbp + rbx + 4]
movzx r12d, byte [r14 + rdx]
movzx esp, byte [rsi + rdx]
cmp r12, 0xff
je case.0x14001e941.1
invalid
cmp qword [rsp + 0xf8], rbx
je 0x14001f7a2
test ah, dh
invalid
add byte [rax], al
movzx r14d, byte [rbp + rbx + 5]
movzx r14d, byte [r14 + rdx]
cmp r14, 0xff
je case.0x14001e941.1
cmp r13, 7
jb 0x14001f7b8
movzx r15d, byte [rbp + rbx + 6]
movzx r13d, byte [r15 + rdx]
movzx ebp, byte [rdi + rdx]
cmp r13, 0xff
je case.0x14001e941.1
cmp qword [rsp + 0xf0], rbx
je 0x14001f7ce
test al, bl
invalid
add byte [rax], al
movzx r15d, byte [rbp + rbx + 7]
movzx r15d, byte [r15 + rdx]
cmp r15, 0xff
je case.0x14001e941.1
test bl, al
add dword [rax], eax
invalid
shl rax, 0x3a
shl r9, 0x34
or r9, rax
or ecx, eax
shl r10, 0x2e
or r10, r9
shl r11, 0x28
or r11, r10
shl r12, 0x22
in al, 0x22
or r12, r11
shl r14, 0x1c
shl esi, 0x1c
or r14, r12
shl r13d, 0x16
or r13, r14
shl r15d, 0x10
adc byte [rbp + 9], cl
out dx, eax
bswap r15
mov rax, qword [rsp + 0x40]
mov dword [rax + rcx], r15d
shr r15, 0x20
mov word [rax + rcx + 4], r15w
add rbx, 8
add r8, 0xfffffffffffffff8
mov r13, qword [rsp + 0x98]
mov rcx, r13
mov rax, qword [rsp + 0x50]
dec rax
mov r14, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x48]
jne 0x14001efae
jmp 0x14001f189
mov r13, rcx
cmp rbx, rdx
ja 0x14001f816
invalid
add byte [rax], al
xor r9d, r9d
cmp rbx, rdx
jne 0x14001f1b2
xor r8d, r8d
xor r15d, r15d
inc dword [rbp + 0x31]
test byte [rbp + 0x31], 0xdb
xor r10d, r10d
xor edx, edx
xor eax, eax
jmp 0x14001f2c0
add rdx, rbp
add rbx, rbp
add ebx, ebp
lea r10, [0x140294280]
xor eax, eax
xor r8d, r8d
xor r11d, r11d
xor ebx, ebx
movzx ecx, byte [rbx]
cmp rcx, 0x3d
jne 0x14001f1ea
test r11b, 2
je case.0x14001e941.1
inc rbx
inc r9d
inc r11
cmp rbx, rdx
sal dword [rbp - 0x21], cl
jmp 0x14001f21c
test r9d, r9d
jg case.0x14001e941.1
movzx r14d, byte [rcx + r10]
cmp r14, 0xff
cmp esi, 0xff
je case.0x14001e941.1
inc rax
imul ecx, eax, 0x3a
enter 0x493a, 0xffffffffffffffd3
out 0x48, al
inc ebx
inc r11
or r8, r14
invalid
cmp rbx, rdx
jne 0x14001f1c7
cmp rax, 8
ja case.0x14001f234.1
lea rcx, [0x140294fc8]
movsxd rdx, dword [rcx + rax*4]
add rdx, rcx
jmp rdx
xor r9d, r9d
jmp 0x14001f277
lea rcx, [rsp + 0x58]
xor edx, edx
mov r8, r15
call fcn.1402864b0
mov r13, qword [rsp + 0x60]
mov r14, qword [rsp + 0x68]
jmp 0x14001e8de
test esi, esi
invalid
invalid
mov eax, 0x20
mov r9b, 1
xor r10d, r10d
mov r15b, 1
mov r14b, 1
add dword [rcx - 0x4d], eax
add ebx, ebp
invalid
mov eax, 8
mov r9b, 1
xor r15d, r15d
xor r14d, r14d
jmp 0x14001f2a5
mov eax, 0x28
mov r9b, 1
xor edx, edx
mov r15b, 1
mov r14b, 1
mov r11b, 1
mov r10b, 1
jmp 0x14001f2c0
mov eax, 0x10
mov r9b, 1
xor r14d, r14d
mov r15b, 1
xor r11d, r11d
jmp 0x14001f2bb
mov eax, 0x18
mov r9b, 1
xor r11d, r11d
mov r15b, 1
mov r14b, 1
xor r10d, r10d
xor edx, edx
mov r12, r8
mov ecx, eax
shl r12, cl
test r12, r12
je 0x14001f430
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x14001f2eb
mov r8d, 1
mov rcx, qword [rsp + 0x40]
call fcn.140022710
movabs r9, 0x8000000000000000
mov qword [rsi], r9
mov rbx, qword [rsp + 0xe8]
movzx eax, byte [rsp + 0x70]
cmp eax, 3
jb case.0x140018e5c.106
je 0x14001f341
cmp eax, 4
jne 0x14001f367
lea rcx, [rsp + 0x78]
call fcn.14001bc20
mov rdx, qword [rsp + 0x78]
test rdx, rdx
je case.0x140018e5c.106
mov rcx, qword [rsp + 0x80]
shl rdx, 5
mov r8d, 8
jmp 0x14001f35d
mov rdx, qword [rsp + 0x78]
test rdx, rdx
je case.0x140018e5c.106
mov rcx, qword [rsp + 0x80]
mov r8d, 1
call fcn.140022710
jmp case.0x140018e5c.106
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x14001f3c0
mov rdx, qword [rsp + 0x80]
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0xa8], 0
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0xc8], 0
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xd8], rdx
mov ecx, 1
jmp 0x14001f3c4
xor ecx, ecx
xor eax, eax
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0xe0], rax
lea rcx, [rsp + 0x58]
lea rdx, [rsp + 0xa0]
call fcn.14000be80
cmp qword [rsp + 0x58], 0
je case.0x140018e5c.106
lea r14, [rsp + 0x58]
lea r15, [rsp + 0xa0]
nop word [rax + rax]
mov rcx, r14
call fcn.14000c240
mov rcx, r14
mov rdx, r15
call fcn.14000be80
cmp qword [rsp + 0x58], 0
jne 0x14001f410
jmp case.0x140018e5c.106
test r9b, r9b
je 0x14001f523
mov rcx, r13
cmp r13, qword [rsp + 0x38]
lea r12, [rsp + 0xa0]
mov rbx, qword [rsp + 0x40]
jae 0x14001f825
mov rax, r8
shr rax, 0x38
mov byte [rbx + rcx], al
inc rcx
test r15b, r15b
je 0x14001f53f
cmp rcx, qword [rsp + 0x38]
movabs r9, 0x8000000000000000
jae 0x14001f825
mov rax, r8
shr rax, 0x30
mov rcx, r13
mov byte [rbx + r13 + 1], al
lea rcx, [r13 + 2]
test r14b, r14b
je 0x14001f54e
invalid
mov bl, 0
add byte [rax], al
cmp rcx, qword [rsp + 0x38]
jae 0x14001f825
mov rax, r8
shr rax, 0x28
mov rcx, r13
mov byte [rbx + r13 + 2], al
lea rcx, [r13 + 3]
lea ecx, [rbp + 3]
test r11b, r11b
je 0x14001f54e
cmp rcx, qword [rsp + 0x38]
jae 0x14001f825
mov rax, r8
shr rax, 0x20
mov rcx, r13
mov byte [rbx + r13 + 3], al
lea rcx, [r13 + 4]
test r10b, r10b
je 0x14001f54e
cmp rcx, qword [rsp + 0x38]
jae 0x14001f825
mov eax, r8d
shr eax, 0x18
mov rcx, r13
mov byte [rbx + r13 + 4], al
lea rcx, [r13 + 5]
test dl, dl
je 0x14001f54e
cmp rcx, qword [rsp + 0x38]
jae 0x14001f825
add eax, dword [rax]
invalid
shr r8d, 0x10
mov byte [rbx + r13 + 5], r8b
mov r8, r13
add r8, 6
jmp 0x14001f551
movabs r9, 0x8000000000000000
lea r12, [rsp + 0xa0]
mov rax, qword [rsp + 0x38]
mov eax, dword [rsp + 0x38]
mov r8, r13
jmp 0x14001f556
mov r8, rcx
movabs r9, 0x8000000000000000
invalid
sub bl, 3
mov r8, rcx
mov rax, qword [rsp + 0x38]
cmp rax, r8
jae 0x14001f560
mov r8, qword [rsp + 0x68]
mov r13, qword [rsp + 0x58]
cmp r13, r9
je 0x14001f2f5
cmp r8, 4
jbe 0x14001f836
add r8, 0xfffffffffffffffb
je 0x14001f5b2
js 0x14001f84a
movzx eax, byte [0x14034bf01]
mov r15d, 1
mov edx, 1
mov rbx, r8
mov rcx, r8
call fcn.140022700
test rax, rax
je 0x14001f850
mov r14, rax
mov r8, rbx
jmp 0x14001f5b8
mov r14d, 1
mov r15, qword [rsp + 0x40]
lea rdx, [r15 + 5]
mov rcx, r14
mov rbx, r8
call sub.VCRUNTIME140.dll_memcpy
test r13, r13
je case.0x14001d3fb.45
mov r8d, 1
mov rcx, r15
mov rdx, r13
call fcn.140022710
mov dword [rsp + 0x58], ebx
mov qword [rsp + 0x60], r14
mov dword [rsp + 0xa0], 0
mov qword [rsp + 0xa8], 0
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
lea rcx, [rsp + 0x58]
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call sub.CRYPT32.dll_CryptUnprotectData
mov r15, qword [rsp + 0xa8]
mov r12d, dword [rsp + 0xa0]
test rbx, rbx
je 0x14001f650
mov rdx, rbx
mov r8d, 1
mov rcx, r14
call fcn.140022710
mov qword [rsi], r12
mov qword [rsi + 8], r15
mov qword [rsi + 0x10], r12
mov rbx, qword [rsp + 0xe8]
movzx eax, byte [rsp + 0x70]
cmp eax, 3
jb case.0x140018e5c.106
jmp 0x14001f30e
mov eax, 0x30
mov r9b, 1
mov r15b, 1
mov r14b, 1
mov r11b, 1
mov r10b, 1
mov dl, 1
jmp 0x14001f2c0
lea rcx, str.decoded_length_calculation_overflow
lea r8, [0x140294268]
leave
invalid
invalid
add byte [rdx + 0x23], bh
call fcn.14028eba0
lea rcx, str.Overflow_when_calculating_output_buffer_length
lea r8, [0x140294530]
mov edx, 0x2e
call fcn.14028eba0
lea r8, [0x1402944e8]
mov rcx, rbx
call fcn.14028f080
lea r8, [0x1402944d0]
mov rdx, r9
call fcn.14028f160
lea r8, [0x1402944d0]
mov rcx, r9
mov rdx, r14
call fcn.14028f0f0
lea r8, [0x140294180]
xor ecx, ecx
xor edx, edx
call fcn.14028ed50
lea r8, [0x140294398]
mov rcx, rdx
mov rdx, qword [rsp + 0x38]
call fcn.14028f0f0
lea r8, [0x140294398]
mov edx, 0xa
mov rcx, 0xfffffffffffffff0
call fcn.14028f160
lea r8, [0x140294380]
mov rcx, rax
call fcn.14028f0f0
lea r8, [0x140294198]
mov ecx, 1
mov edx, 1
call fcn.14028ed50
lea r8, [0x1402941b0]
mov ecx, 2
mov edx, 2
call fcn.14028ed50
lea r8, [0x1402941c8]
mov ecx, 3
mov edx, 3
call fcn.14028ed50
cmc
invalid
invalid
xor r14d, r14d
mov rcx, r14
mov rdx, r12
call fcn.14028e990
lea r8, [0x1402941e0]
mov ecx, 4
mov edx, 4
call fcn.14028ed50
lea r8, [0x1402941f8]
mov ecx, 5
mov edx, 5
call fcn.14028ed50
lea r8, [0x140294210]
mov ecx, 6
mov edx, 6
add byte [rax], al
call fcn.14028ed50
lea r8, [0x140294228]
mov ecx, 7
mov edx, 7
invalid
add byte [rax], al
add al, ch
insb byte [rdi], dx
cmc
invalid
invalid
lea r8, [0x1402943c8]
mov rcx, r9
mov rdx, qword [rsp + 0x38]
call fcn.14028f0f0
lea r8, [0x1402943c8]
mov rdx, r9
call fcn.14028f160
lea r8, [0x1402943b0]
mov rcx, rbx
call fcn.14028f0f0
lea r8, [0x1402944b8]
mov rcx, rbx
call fcn.14028f080
lea r8, [0x1402943e0]
mov rdx, qword [rsp + 0x38]
call fcn.14028ed50
mov rdx, r8
lea r8, str.srccrypt.rs
mov ecx, 5
call fcn.14028f080
mov rbx, r8
xor r15d, r15d
mov rcx, r15
mov rdx, rbx
call fcn.14028e990
lea rax, str.Impossible:_must_only_have_0_to_8_input_bytes_in_last_chunk__with_no_invalid_lengths
mov qword [rsp + 0x108], rax
lea rax, [0x140019440]
mov qword [rsp + 0x110], rax
lea rax, str._D__
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xa8], 1
mov qword [rsp + 0xc0], 0
lea rax, [rsp + 0x108]
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xb8], 1
lea rdx, [0x1402944a0]
lea rcx, [rsp + 0xa0]
call fcn.14028ec00
int3