Function at 0x14007d253
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x2e8
movaps xmmword [rsp + 0x2d0], xmm7
movaps xmmword [rsp + 0x2c0], xmm6
mov rcx, qword [rcx]
mov rax, qword [rcx]
and qword [rcx], 0
test rax, rax
je 0x14007dfda
mov rax, qword [rax]
mov qword [rsp + 0x48], rax
lea rdx, [0x1400d5698]
lea rsi, [rsp + 0xb0]
mov r8d, 0x3b
mov rcx, rsi
call fcn.14007ec6a
lea rax, [rsp + 0x1c0]
and qword [rax], 0
mov rsi, qword [rsi]
mov qword [rsp + 0x20], rax
mov rcx, 0xffffffff80000001
mov rdx, rsi
xor r8d, r8d
mov r9d, 0x20019
call sub.advapi32.dll_RegOpenKeyExW
mov edi, eax
test eax, eax
jne 0x14007d2ea
mov rbx, qword [rsp + 0x1c0]
jmp 0x14007d2f5
mov rbx, rdi
shl rbx, 0x20
or rbx, 2
mov rdx, qword [rsp + 0xb8]
mov rcx, rsi
call fcn.140085aa1
test edi, edi
je 0x14007d319
mov rcx, rbx
call fcn.140040e6a
mov rsi, rax
jmp 0x14007d8c1
lea r8, [0x1400d56d3]
lea rsi, [rsp + 0xb0]
mov rcx, rsi
mov rdx, rbx
call fcn.14007eb42
mov sil, byte [rsi + 0x18]
cmp sil, 0xc
jne 0x14007d34a
mov r14, qword [rsp + 0xb0]
jmp 0x14007d8ae
cmp sil, 4
jne 0x14007d35a
mov rax, qword [rsp + 0xb0]
mov ebp, dword [rax]
lea rcx, [rsp + 0xb0]
call fcn.14007ec51
movabs r14, 0xde00000002
cmp sil, 4
jne 0x14007d8ae
lea r8, [0x1400d56de]
lea rsi, [rsp + 0x1c0]
mov rcx, rsi
mov rdx, rbx
call fcn.14007eb42
movzx r15d, byte [rsi + 0x18]
cmp r15, 0xc
jne 0x14007d3ad
mov r14, qword [rsp + 0x1c0]
jmp 0x14007d8ae
xor esi, esi
cmp r15, 7
ja 0x14007d886
mov eax, 0x86
bt rax, r15
jae 0x14007d886
mov rax, qword [rsp + 0x1c0]
mov rcx, qword [rsp + 0x1d0]
and rcx, 0xfffffffffffffffe
add rcx, rax
lea rdx, [rsp + 0xb0]
mov qword [rdx], rax
mov qword [rdx + 8], rcx
and word [rdx + 0x10], 0
lea rdi, [rsp + 0x70]
mov rcx, rdi
call fcn.1400115b4
mov rsi, qword [rdi]
mov r12, qword [rdi + 0x10]
mov r14, r12
mov rcx, rsi
mov rdx, r14
xor r8d, r8d
call fcn.140019741
test al, al
je 0x14007d4cb
test r14, r14
je 0x14007d492
movzx edx, byte [rsi + r14 - 1]
mov rcx, 0xffffffffffffffff
test dl, dl
jns 0x14007d4c0
movzx r8d, byte [rsi + r14 - 2]
cmp r8b, 0xbf
jg 0x14007d469
movzx r9d, byte [rsi + r14 - 3]
cmp r9b, 0xc0
jge 0x14007d46f
movzx r10d, byte [rsi + r14 - 4]
and r10d, 7
shl r10d, 6
and r9d, 0x3f
or r9d, r10d
jmp 0x14007d473
and r8d, 0x1f
jmp 0x14007d47e
and r9d, 0xf
shl r9d, 6
and r8d, 0x3f
or r8d, r9d
shl r8d, 6
and edx, 0x3f
or edx, r8d
cmp edx, 0x110000
je 0x14007d418
jmp 0x14007d49a
xor r14d, r14d
jmp 0x14007d40a
cmp edx, 0x80
jb 0x14007d4c0
mov rcx, 0xfffffffffffffffe
cmp edx, 0x800
jb 0x14007d4c0
xor ecx, ecx
cmp edx, 0x10000
setb cl
or rcx, 0xfffffffffffffffc
add rcx, r14
mov r12, rcx
jmp 0x14007d407
cmp r15d, 7
jne 0x14007d838
mov dword [rsp + 0x6c], ebp
xorps xmm0, xmm0
lea rcx, [rsp + 0x240]
movups xmmword [rcx + 8], xmm0
mov eax, 1
mov qword [rcx], rax
mov qword [rsp + 0x20], rax
lea r9, [0x1400fbba1]
lea rbp, [rsp + 0xb0]
mov rcx, rbp
mov rdx, rsi
mov qword [rsp + 0x138], r12
mov r8, r12
call fcn.14001bb5d
mov rax, qword [rbp]
mov qword [rsp + 0x160], rax
mov r13, qword [rbp + 8]
mov rax, qword [rbp + 0x18]
mov rcx, qword [rbp + 0x20]
mov qword [rsp + 0x168], rcx
mov r14, qword [rbp + 0x28]
mov r9, qword [rbp + 0x38]
mov r12, qword [rbp + 0x48]
mov r15, qword [rbp + 0x50]
mov rdi, qword [rbp + 0x58]
mov rbp, qword [rbp + 0x60]
lea rcx, [rbp - 1]
mov qword [rsp + 0x170], rcx
mov rcx, rax
and rcx, 0xffffffffffffff00
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x140], rax
mov r10d, eax
xor edx, edx
cmp qword [rsp + 0x160], 0
mov qword [rsp + 0x38], r9
je 0x14007d721
mov qword [rsp + 0xa0], rdx
mov byte [rsp + 0x37], r10b
movzx eax, r10b
or rax, qword [rsp + 0x150]
mov rcx, rbp
mov qword [rsp + 0x158], rax
sub rcx, rax
mov qword [rsp + 0x148], rcx
lea rax, [r13 - 1]
mov qword [rsp + 0x40], rax
mov rax, r9
cmp r13, rax
mov rcx, rax
cmova rcx, r13
cmp r9, 0xffffffffffffffff
cmove rcx, r13
mov r11d, 0
cmovne r11, rax
mov rdx, qword [rsp + 0x170]
add rdx, r14
cmp rdx, r15
jae 0x14007d83f
movzx edx, byte [r12 + rdx]
mov r8, qword [rsp + 0x168]
bt r8, rdx
jae 0x14007d649
lea r9, [r12 + r14]
mov r10, rcx
cmp r10, rbp
jae 0x14007d654
mov rdx, r10
lea r8, [r14 + r10]
cmp r8, r15
jae 0x14007dfda
lea r10, [rdx + 1]
mov r8b, byte [rdi + rdx]
cmp r8b, byte [r9 + rdx]
je 0x14007d616
sub r14, r13
add r14, rdx
inc r14
mov r9, qword [rsp + 0x38]
jmp 0x14007d64c
add r14, rbp
cmp r9, 0xffffffffffffffff
je 0x14007d5e8
jmp 0x14007d6ad
mov rdx, qword [rsp + 0x40]
lea r10, [rdx + 1]
cmp r11, r10
jae 0x14007d6b4
cmp rdx, rbp
jae 0x14007dfda
lea r10, [r14 + rdx]
cmp r10, r15
jae 0x14007dfda
mov r10b, byte [rdi + rdx]
lea r8, [rdx - 1]
cmp r10b, byte [r9 + rdx]
mov rdx, r8
je 0x14007d659
add r14, qword [rsp + 0x158]
mov r9, qword [rsp + 0x38]
cmp r9, 0xffffffffffffffff
je 0x14007d5e8
mov rax, qword [rsp + 0x148]
jmp 0x14007d5cc
xor eax, eax
jmp 0x14007d5cc
cmp qword [rsp + 0x38], 0xffffffffffffffff
mov ecx, 0
cmovne rax, rcx
lea rcx, [r14 + rbp]
mov r8, r14
mov qword [rsp + 0x40], rcx
mov r14, rcx
mov qword [rsp + 0x38], rax
mov rdx, qword [rsp + 0xa0]
add rdx, rsi
add r8, rsi
lea rcx, [rsp + 0x240]
call fcn.1400108e9
lea rcx, [rsp + 0x240]
lea rdx, [0x1400fbba0]
lea r8, [0x1400fbba1]
call fcn.1400108e9
mov rdx, qword [rsp + 0x40]
mov r9, qword [rsp + 0x38]
mov r10b, byte [rsp + 0x37]
jmp 0x14007d57d
test dword [rsp + 0x140], 0xff0000
jne 0x14007d847
test r13, r13
je 0x14007d74e
cmp r13, r15
jae 0x14007d748
cmp byte [r12 + r13], 0xbf
jg 0x14007d74e
jmp 0x14007dfec
jne 0x14007dfec
cmp r13, r15
je 0x14007d7f7
movzx ecx, byte [r12 + r13]
test cl, cl
js 0x14007d764
mov eax, ecx
jmp 0x14007d7b6
mov eax, ecx
and eax, 0x1f
movzx r8d, byte [r12 + r13 + 1]
and r8d, 0x3f
cmp cl, 0xdf
jbe 0x14007d7a8
movzx r9d, byte [r12 + r13 + 2]
shl r8d, 6
and r9d, 0x3f
or r9d, r8d
cmp cl, 0xf0
jb 0x14007d7b0
movzx ecx, byte [r12 + r13 + 3]
and eax, 7
shl eax, 0x12
shl r9d, 6
and ecx, 0x3f
or ecx, r9d
or eax, ecx
jmp 0x14007d7b6
shl eax, 6
or eax, r8d
jmp 0x14007d7b6
shl eax, 0xc
or eax, r9d
test r10b, r10b
jne 0x14007d822
cmp eax, 0x110000
je 0x14007d847
mov ecx, 1
cmp eax, 0x80
jb 0x14007d7ec
mov ecx, 2
cmp eax, 0x800
jb 0x14007d7ec
cmp eax, 0x10000
mov ecx, 4
sbb rcx, 0
add r13, rcx
mov r10b, 1
jmp 0x14007d732
test r10b, r10b
je 0x14007dfde
test r12, r12
je 0x14007dfde
xor r10b, 1
mov byte [rsp + 0x37], r10b
mov r8, r15
mov qword [rsp + 0x40], r15
mov r13, r15
jmp 0x14007d6df
xor r10b, 1
mov byte [rsp + 0x37], r10b
mov r8, r13
mov qword [rsp + 0x40], r13
jmp 0x14007d6df
mov r14, qword [rsp + 0x78]
jmp 0x14007d886
mov rdx, qword [rsp + 0xa0]
add rdx, rsi
mov r8, qword [rsp + 0x138]
add r8, rsi
lea r15, [rsp + 0x240]
mov rcx, r15
call fcn.1400108e9
mov rdi, qword [r15]
mov r14, qword [r15 + 8]
mov r12, qword [r15 + 0x10]
mov rdx, qword [rsp + 0x78]
mov rcx, rsi
call fcn.140010c6f
mov rsi, rdi
mov ebp, dword [rsp + 0x6c]
jmp 0x14007d886
lea rcx, [rsp + 0x1c0]
call fcn.14007ec51
test rsi, rsi
je 0x14007d8ae
mov rcx, rbx
call fcn.1400a1589
mov rcx, 0xffffffff80000001
call fcn.1400a1589
jmp 0x14007d8de
mov rcx, r14
call fcn.140040e6a
mov rsi, rax
mov rcx, rbx
call fcn.1400a1589
mov rcx, 0xffffffff80000001
call fcn.1400a1589
lea rdx, fcn.140035c2c
mov rcx, rsi
call fcn.140016095
xor esi, esi
call fcn.140049eb9
movups xmm6, xmmword [0x1400d4da0]
movaps xmmword [rsp + 0xb0], xmm6
movups xmm7, xmmword [0x1400d4db0]
movaps xmmword [rsp + 0xc0], xmm7
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rdx
lea rdx, [0x1400d568a]
lea rbx, [rsp + 0x1c0]
mov r8d, 0xe
mov rcx, rbx
call fcn.14008a761
cmp byte [rbx + 0x18], 2
jne 0x14007d98e
mov qword [rsp + 0x20], 0xa
lea rdx, [0x1400fb87a]
lea r9, str.HTTP_PROXYhttp_proxyHTTPS_PROXYhttps_proxyREQUEST_METHODSoftwareMicrosoftWindowsCurrentVersionInternet_SettingsProxyEnableProxyServercookie2
lea rcx, [rsp + 0xb0]
mov r8d, 4
call fcn.14007dfff
test al, al
jne 0x14007d9a3
mov qword [rsp + 0x20], 0xa
lea rdx, [0x1400fb87a]
lea r9, [0x1400d566a]
lea rcx, [rsp + 0xb0]
mov r8d, 4
call fcn.14007dfff
jmp 0x14007d9a3
mov rcx, qword [rsp + 0x1c0]
mov rdx, qword [rsp + 0x1c8]
call fcn.140010c6f
mov qword [rsp + 0x20], 0xb
lea rdx, [0x1400fb87e]
lea r9, [0x1400d5674]
lea rcx, [rsp + 0xb0]
mov r8d, 5
call fcn.14007dfff
test al, al
jne 0x14007d9fb
mov qword [rsp + 0x20], 0xb
lea rdx, [0x1400fb87e]
lea r9, [0x1400d567f]
lea rcx, [rsp + 0xb0]
mov r8d, 5
call fcn.14007dfff
movaps xmm0, xmmword [rsp + 0xb0]
movaps xmm1, xmmword [rsp + 0xc0]
movaps xmm2, xmmword [rsp + 0xd0]
movaps xmmword [rsp + 0x1b0], xmm2
movaps xmmword [rsp + 0x1a0], xmm1
movaps xmmword [rsp + 0x190], xmm0
mov r13, qword [rsp + 0x1a8]
test r13, r13
jne 0x14007dc9d
test rsi, rsi
je 0x14007dc9d
mov qword [rsp + 0x178], rsi
mov qword [rsp + 0x180], r14
mov qword [rsp + 0x188], r12
test ebp, ebp
je 0x14007dcdf
call fcn.140049eb9
movaps xmmword [rsp + 0x70], xmm6
movaps xmmword [rsp + 0x80], xmm7
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], rdx
cmp r12, 1
jbe 0x14007dd0e
mov cl, 0x3d
mov rdx, rsi
mov r8, r12
call fcn.140088f91
test rax, rax
je 0x14007dd2d
lea r9, [0x1400d8caa]
lea rcx, [rsp + 0x240]
mov rdx, rsi
mov r8, r12
call fcn.14007e110
lea r15, [rsp + 0x1c0]
lea r12, [rsp + 0xb0]
lea r13, [rsp + 0x50]
lea rcx, [rsp + 0x240]
call fcn.14006ce1b
test rax, rax
je 0x14007de9c
mov r8, rdx
mov rcx, r15
mov rdx, rax
lea r9, [0x1400d8cac]
call fcn.14007e110
mov rcx, r15
call fcn.14006ce1b
test rax, rax
je 0x14007dd70
mov rsi, rax
mov rdi, rdx
mov ecx, 4
call fcn.14009951a
mov rbp, rax
mov qword [rax], rsi
mov qword [rax + 8], rdi
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], 1
mov ecx, 0x10
mov rdi, r12
mov rsi, r15
rep movsq qword [rdi], qword [rsi]
mov ebx, 1
mov r14d, 0x18
mov rcx, r12
call fcn.14006ce1b
test rax, rax
je 0x14007db9c
mov rsi, rax
mov rdi, rdx
cmp rbx, qword [rsp + 0x58]
jne 0x14007db84
mov edx, 1
mov rcx, r13
call fcn.140099575
mov rbp, qword [rsp + 0x50]
mov qword [rbp + r14 - 8], rsi
mov qword [rbp + r14], rdi
inc rbx
mov qword [rsp + 0x60], rbx
add r14, 0x10
jmp 0x14007db58
mov rsi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
cmp rbx, 2
jne 0x14007dd77
lea rax, [rsi + 0x10]
mov qword [rsp + 0xa8], rax
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x18]
call fcn.14007e05b
test rax, rax
je 0x14007dc20
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rax]
mov qword [rsp + 0x38], rcx
mov r14, qword [rax + 8]
mov rcx, r14
call fcn.1400862c7
mov rbx, rax
mov rdi, r15
mov r15, rdx
mov rcx, rax
mov rdx, qword [rsp + 0x38]
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsp + 0x1c0], rbx
mov qword [rsp + 0x1c8], r15
mov r15, rdi
mov qword [rsp + 0x1d0], r14
jmp 0x14007dc79
lea rax, [0x1400d5608]
mov qword [rsp + 0xb0], rax
mov ecx, 1
mov qword [rsp + 0xb8], rcx
and qword [rsp + 0xd0], 0
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x50], rax
lea rax, [0x140098e88]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0xc0], r13
mov qword [rsp + 0xc8], rcx
mov rcx, r15
mov rdx, r12
call fcn.140004b3a
mov rdx, qword [rsi]
mov r8, qword [rsi + 8]
lea rcx, [rsp + 0x70]
mov r9, r15
call fcn.14007e140
mov rcx, rsi
mov rdx, rbp
call fcn.140099645
jmp 0x14007dad6
mov rbp, qword [rsp + 0x190]
mov r15, qword [rsp + 0x198]
mov r12, qword [rsp + 0x1a0]
mov rdi, qword [rsp + 0x1b0]
mov rbx, qword [rsp + 0x1b8]
test rsi, rsi
je 0x14007dcd5
mov rcx, rsi
mov rdx, r14
call fcn.140010c6f
mov rsi, qword [rsp + 0x48]
jmp 0x14007df63
call fcn.140049eb9
mov qword [rsp + 0x38], rax
mov rbx, rdx
mov rcx, rsi
mov rdx, r14
call fcn.140010c6f
lea rbp, [0x1400d4d90]
xor r13d, r13d
xor r12d, r12d
xor r15d, r15d
xor edi, edi
jmp 0x14007dee7
lea rcx, [0x1400d8cac]
mov edx, 1
mov r8, rsi
mov r9, r12
call fcn.14002c2f4
test al, al
jne 0x14007daa7
mov rcx, rsi
mov rdx, r12
call fcn.14007e05b
test rax, rax
je 0x14007dddd
mov r14, rax
mov r15, rdx
lea rbx, [rsp + 0xb0]
mov rcx, rbx
mov rdx, rsi
mov r8, r12
call fcn.14001169a
lea rcx, [rsp + 0x70]
mov rdx, r14
mov r8, r15
mov r9, rbx
jmp 0x14007de97
mov esi, 8
xor ebp, ebp
cmp qword [rsp + 0x88], 0
je 0x14007ddcd
lea rbx, [rsp + 0x70]
mov rcx, rbx
call fcn.140044286
mov rbx, qword [rbx + 8]
test rbx, rbx
je 0x14007dda8
mov rcx, qword [rsp + 0x70]
lea r8, [rbx + 0x11]
mov dl, 0xff
call sub.VCRUNTIME140.dll_memset
and qword [rsp + 0x88], 0
lea rax, [rbx + 1]
shr rax, 3
imul rax, rax, 7
cmp rbx, 8
cmovb rax, rbx
mov qword [rsp + 0x80], rax
mov rcx, rsi
mov rdx, rbp
call fcn.140099645
jmp 0x14007de9c
lea r15, [rsp + 0x178]
lea rsi, [rsp + 0x1c0]
mov qword [rsi], r15
lea r12, [0x1400d5608]
lea rdi, [rsp + 0xb0]
mov qword [rdi], r12
mov r13d, 1
mov qword [rdi + 8], r13
and qword [rdi + 0x20], 0
lea rbp, [0x140004f6b]
mov qword [rsi + 8], rbp
mov qword [rdi + 0x10], rbx
mov qword [rdi + 0x18], r13
lea rbx, [rsp + 0x240]
mov rcx, rbx
mov rdx, rdi
call fcn.140004b3a
lea rdx, [0x1400fb87a]
lea r14, [rsp + 0x70]
mov r8d, 4
mov rcx, r14
mov r9, rbx
call fcn.14007e140
lea rax, [rsp + 0x50]
mov qword [rdi], r12
mov qword [rdi + 8], r13
and qword [rdi + 0x20], 0
mov qword [rax], r15
mov qword [rax + 8], rbp
mov qword [rdi + 0x10], rax
mov qword [rdi + 0x18], r13
lea rdx, [rsp + 0xb0]
mov rcx, rsi
call fcn.140004b3a
lea rdx, [0x1400fb87e]
mov r8d, 5
mov rcx, r14
mov r9, rsi
call fcn.14007e140
mov rbp, qword [rsp + 0x70]
mov r15, qword [rsp + 0x78]
mov r12, qword [rsp + 0x80]
mov r13, qword [rsp + 0x88]
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x38], rax
mov rbx, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x178]
mov rdx, qword [rsp + 0x180]
call fcn.140010c6f
test rbp, rbp
sete dil
call fcn.140049eb9
movaps xmmword [rsp + 0xb0], xmm6
movaps xmmword [rsp + 0xc0], xmm7
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rdx
test dil, dil
je 0x14007df3f
mov rsi, rax
mov r14, rdx
mov rcx, r15
mov rdx, r12
call fcn.140016095
lea rbp, [0x1400d4d90]
xor r15d, r15d
xor r12d, r12d
xor r13d, r13d
mov rdi, rsi
mov rbx, r14
mov rsi, qword [rsp + 0x48]
jmp 0x14007df56
lea rcx, [rsp + 0xb0]
call case.0x140029a00.583
mov rsi, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x38]
lea rcx, [rsp + 0x190]
call case.0x140029a00.583
mov ecx, 0x40
mov edx, 8
call fcn.14008a1fe
mov ecx, 1
mov qword [rax], rcx
mov qword [rax + 8], rcx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], r15
mov qword [rax + 0x20], r12
mov qword [rax + 0x28], r13
mov qword [rax + 0x30], rdi
mov qword [rax + 0x38], rbx
mov rcx, qword [rsi]
mov qword [rsi], rax
mov qword [rsp + 0xb0], rcx
test rcx, rcx
je 0x14007dfb6
lea rcx, [rsp + 0xb0]
call fcn.14004420a
movaps xmm6, xmmword [rsp + 0x2c0]
movaps xmm7, xmmword [rsp + 0x2d0]
add rsp, 0x2e8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
ud2
xor eax, eax
test r10b, r10b
cmovne rdx, rax
jmp 0x14007d847
mov rcx, r12
mov rdx, r15
mov r8, r13
mov r9, r15
call fcn.1400a31d5
ud2