Function at 0x1400c2d30
Capabilities:
Encode data using base64
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov qword [rsp + 0x20], rcx
mov r14, qword [rcx]
mov rbx, qword [r14 + 0x208]
test rbx, rbx
je 0x1400c2e30
mov r15, qword [r14 + 0x200]
xor r12d, r12d
nop word cs:[rax + rax]
lea rax, [r12 + r12*4]
mov rcx, qword [r15 + rax*8 + 0x18]
lock dec qword [rcx]
jne 0x1400c2def
lea rdi, [r15 + rax*8]
add rdi, 0x18
mov eax, dword [0x141dd8710]
sub eax, dword [0x141dd8714]
add eax, 0x29c708d4
imul rax, rax, 0x4df871d5
shr rax, 0x3e
add eax, 0x9f7fc97f
cmp eax, 0x3ecfceb9
jae 0x1400c2dc0
mov rcx, rdi
call fcn.140078470
nop word [rax + rax]
mov eax, dword [0x141dd8718]
or eax, dword [0x141dd871c]
imul r13, rax, 0x2e358bfd
shr r13, 0x3d
or r13d, 0xdb00b466
mov rcx, rdi
call fcn.140078470
cmp r13d, 0xa4f6883e
je 0x1400c2dc0
inc r12
nop word cs:[rax + rax]
mov eax, dword [0x141dd8720]
and eax, dword [0x141dd8724]
add eax, 0xa247d046
or eax, 0x1641e19c
cmp eax, 0xf7a0b077
ja 0x1400c2e00
cmp r12, rbx
jne 0x1400c2d70
nop word cs:[rax + rax]
mov eax, dword [0x141dd8728]
imul eax, dword [0x141dd872c]
imul rcx, rax, 0x360bded3
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1e
or eax, 0xe0aa4a6
imul eax, eax, 0xb3aebea9
cmp eax, 0xa8d620ba
ja 0x1400c2e30
cmp qword [r14 + 0x1f8], 0
je 0x1400c2ef0
mov eax, dword [0x141dd8730]
xor edx, edx
div dword [0x141dd8734]
add eax, 0xec4c572
and eax, 0x40bb06bb
cmp eax, 0x9a522e7d
jne 0x1400c2ea0
mov rax, qword [0x141dde6e0]
nop word [rax + rax]
mov eax, dword [0x141dd8738]
add eax, dword [0x141dd873c]
imul eax, eax, 0x521e9e5a
mov r8, qword [r14 + 0x200]
mov rcx, qword [0x141dde6e0]
cmp eax, 0xe711cd08
je 0x1400c2ea0
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop
mov eax, dword [0x141dd8740]
and eax, dword [0x141dd8744]
imul eax, eax, 0xe245d8e2
cmp eax, 0x69022d8c
je 0x1400c2ed0
nop dword [rax]
mov eax, dword [0x141dd8748]
and eax, dword [0x141dd874c]
or eax, 0x2378858c
and eax, 0x23f885bc
cmp eax, 0x15e89970
je 0x1400c2ef0
cmp qword [r14 + 0x1d8], 0
je 0x1400c2f9e
mov rax, qword [r14 + 0x1e0]
mov rdi, qword [rax - 8]
mov rbx, qword [0x141dde6e0]
mov eax, dword [0x141dd8750]
sub eax, dword [0x141dd8754]
and eax, 0x49917b9e
imul rax, rax, 0x3f06b393
shr rax, 0x3c
cmp eax, 0x40a0a05b
je 0x1400c2f8e
mov eax, dword [0x141dd8758]
or eax, dword [0x141dd875c]
imul eax, eax, 0xeb5c60b2
mov r15d, 0x99e24d63
imul r15, rax
shr r15, 0x3e
add r15d, 0x4957974d
mov rcx, rbx
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp r15d, 0x7a646a0a
jbe 0x1400c2f9e
mov rcx, rbx
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1400c2f50
mov rdi, qword [r14 + 0x80]
mov r8, qword [r14 + 0x88]
mov rbx, qword [r14 + 0x100]
and rdi, 0xfffffffffffffffe
and rbx, 0xfffffffffffffffe
nop dword [rax + rax]
mov eax, dword [0x141dd8760]
and eax, dword [0x141dd8764]
imul rax, rax, 0x2e538a6d
shr rax, 0x3b
cmp eax, 0x40ea8c8e
je 0x1400c2fc0
cmp rdi, rbx
je 0x1400c30ad
mov r15, qword [sym.imp.KERNEL32.dll_HeapFree]
nop
mov eax, edi
not eax
test al, 0x7e
jne 0x1400c3082
mov eax, dword [0x141dd8768]
xor eax, dword [0x141dd876c]
or eax, 0x44494d09
and eax, 0xf4694d09
imul eax, eax, 0x7042f6eb
cmp eax, 0xaaf89c37
ja 0x1400c3043
nop
mov eax, dword [0x141dd8770]
imul eax, dword [0x141dd8774]
or eax, 0xc4b3330b
mov r12, qword [r8]
mov rcx, qword [0x141dde6e0]
cmp eax, 0x982a9aa5
jne 0x1400c3050
mov rax, qword [0x141dde6e0]
jmp 0x1400c3020
xor edx, edx
call r15
nop word cs:[rax + rax]
mov eax, dword [0x141dd8778]
xor edx, edx
div dword [0x141dd877c]
or eax, 0xbf7dd8dd
and eax, 0xffffdddf
cmp eax, 0x902a7669
jb 0x1400c3060
mov r8, r12
mov eax, dword [0x141dd8780]
xor eax, dword [0x141dd8784]
imul eax, eax, 0xcf9a23d
add eax, 0x75749ca2
cmp eax, 0x40635a60
jb 0x1400c3082
add rdi, 2
cmp rbx, rdi
jne 0x1400c2ff0
mov rcx, qword [0x141dde6e0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbx, qword [r14 + 0x198]
test rbx, rbx
je 0x1400c323a
mov r15, qword [r14 + 0x190]
xor r12d, r12d
mov r13d, 0xa5c4b771
xor ebp, ebp
nop
mov eax, dword [0x141dd8788]
xor edx, edx
div dword [str._Z_H]
or eax, 0xfd9edcff
add eax, 0x8d1811d0
cmp eax, 0xbada1ee0
ja 0x1400c31d0
nop word cs:[rax + rax]
mov rdi, rbp
shl rdi, 5
mov rax, qword [r15 + rdi]
lock dec qword [rax]
sete al
test r12b, r12b
jne 0x1400c31d0
test al, al
je 0x1400c3218
mov eax, dword [0x141dd8790]
add eax, dword [0x141dd8794]
imul eax, eax, 0xb6f834ac
or eax, 0xfab35630
shr eax, 2
imul rax, rax, 0x22f964d3
shr rax, 0x37
cmp eax, 0xffc298cb
jbe 0x1400c315f
add rdi, r15
nop word cs:[rax + rax]
mov eax, dword [0x141dd8798]
xor eax, dword [0x141dd879c]
imul eax, eax, 0xb087aded
imul rax, rax, 0x6dac2b35
shr rax, 0x3e
xor eax, 0x17b1aad1
cmp eax, 0x66e1ac7c
ja 0x1400c3170
mov eax, dword [0x141dd87a0]
xor edx, edx
div dword [0x141dd87a4]
add eax, 0x931b6f52
xor eax, 0x62d96f0b
imul rax, r13
shr rax, 0x3e
cmp eax, 0x34449939
jbe 0x1400c31f0
jmp 0x1400c3230
mov rax, rbp
shl rax, 5
mov rax, qword [r15 + rax]
lock dec qword [rax]
jmp 0x1400c3110
mov esi, dword [0x141dd87a8]
sub esi, dword [0x141dd87ac]
xor esi, 0xbb992e90
add esi, 0xc77bb0c2
mov rcx, rdi
call fcn.140078470
cmp esi, 0xb2fd2cb2
ja 0x1400c3230
inc rbp
nop dword [rax + rax]
test r12b, r12b
jne 0x1400c3220
cmp rbp, rbx
jne 0x1400c30e0
jmp 0x1400c323a
mov rcx, rdi
call fcn.140078470
jmp 0x1400c31f0
mov rcx, qword [r14 + 0x188]
mov eax, dword [0x141dd87b0]
xor edx, edx
div dword [0x141dd87b4]
nop
mov eax, dword [0x141dd87b8]
xor edx, edx
div dword [0x141dd87bc]
cmp eax, 0x381e22a2
je 0x1400c3250
test rcx, rcx
je 0x1400c32a0
nop word [rax + rax]
mov eax, dword [0x141dd87c0]
imul eax, dword [0x141dd87c4]
imul eax, eax, 0xb8da9b2b
cmp eax, 0xf1d86231
je 0x1400c3270
mov r8, qword [r14 + 0x190]
mov rcx, qword [0x141dde6e0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [0x141dd87c8]
sub eax, dword [0x141dd87cc]
imul eax, eax, 0x30494f26
or eax, 0x136d9d97
cmp eax, 0x4f27dc5e
je 0x1400c32a0
mov rdi, qword [r14 + 0x1a0]
test rdi, rdi
je 0x1400c3449
mov rbx, qword [r14 + 0x1a8]
mov eax, 0xe6389425
nop word [rax + rax]
mov ecx, dword [0x141dd87d0]
imul ecx, dword [0x141dd87d4]
and ecx, 0x8b5a2453
imul ecx, ecx, 0xe12a02d
imul rcx, rax
shr rcx, 0x3e
cmp ecx, 0x6715e8c1
ja 0x1400c32e0
mov rax, qword [rbx]
test rax, rax
je 0x1400c3349
mov rcx, rdi
call rax
mov eax, 0x9f1d04c3
nop dword [rax + rax]
mov ecx, dword [0x141dd87d8]
imul ecx, dword [0x141dd87dc]
imul ecx, ecx, 0x56530731
add ecx, 0x7974016b
imul rcx, rax
shr rcx, 0x3f
cmp ecx, 0x6a641d6c
ja 0x1400c3320
mov eax, dword [0x141dd87e0]
xor edx, edx
div dword [0x141dd87e4]
nop word [rax + rax]
mov eax, dword [0x141dd87e8]
add eax, dword [0x141dd87ec]
or eax, 0x2c0ea2
xor eax, 0x40251aa2
or eax, 0xafd2e15d
cmp eax, 0xbe0105b4
je 0x1400c3360
mov rax, qword [rbx + 8]
nop word cs:[rax + rax]
mov ecx, dword [0x141dd87f0]
imul ecx, dword [0x141dd87f4]
imul ecx, ecx, 0x32b5cc30
cmp ecx, 0xa1a4f610
je 0x1400c3390
nop dword [rax + rax]
mov ecx, dword [0x141dd87f8]
sub ecx, dword [0x141dd87fc]
imul ecx, ecx, 0xf7e07ad4
add ecx, 0x5a0b66c0
cmp ecx, 0x341cf54e
ja 0x1400c33b0
test rax, rax
je 0x1400c3449
mov rax, qword [rbx + 0x10]
nop dword [rax]
mov ecx, dword [0x141dd8800]
sub ecx, dword [0x141dd8804]
add ecx, 0x2f99195e
and ecx, 0x3c565d63
cmp ecx, 0xfd431885
ja 0x1400c33e0
cmp rax, 0x11
jb 0x1400c3437
nop word cs:[rax + rax]
mov eax, dword [0x141dd8808]
and eax, dword [0x141dd880c]
xor eax, 0x1baf5d84
imul eax, eax, 0x55ebc829
add eax, 0xf2bca421
cmp eax, 0xc5520573
ja 0x1400c3410
mov rdi, qword [rdi - 8]
mov rcx, qword [0x141dde6e0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rdi, qword [r14 + 0x1b0]
mov rbx, qword [r14 + 0x1b8]
nop word [rax + rax]
mov eax, dword [0x141dd8810]
imul eax, dword [0x141dd8814]
imul eax, eax, 0xf8f6081f
xor eax, 0xfc74ac93
cmp eax, 0xc1433c16
ja 0x1400c3460
nop
mov eax, dword [0x141dd8818]
sub eax, dword [0x141dd881c]
xor eax, 0x52835c79
imul eax, eax, 0xf269c10f
and eax, 0x5c5389f0
cmp eax, 0xa386200e
ja 0x1400c3480
test rdi, rdi
je 0x1400c35ba
mov ecx, 0x9d1623e5
nop word cs:[rax + rax]
mov eax, dword [0x141dd8820]
xor edx, edx
div dword [0x141dd8824]
imul rax, rcx
shr rax, 0x3f
or eax, 0xcd0dd64e
cmp eax, 0x20ca0d53
je 0x1400c34c0
nop word cs:[rax + rax]
mov eax, dword [0x141dd8828]
add eax, dword [0x141dd882c]
xor eax, 0x23f3debc
add eax, 0x643eb265
cmp eax, 0xbe982817
ja 0x1400c34f0
mov rax, qword [rbx]
mov ecx, dword [0x141dd8830]
and ecx, dword [0x141dd8834]
imul ecx, ecx, 0x673d1b26
add ecx, 0xc140518
xor ecx, 0x4896b666
cmp ecx, 0x905d2ef3
ja 0x1400c3510
test rax, rax
je 0x1400c3540
mov rcx, rdi
call rax
mov rcx, qword [rbx + 8]
mov rax, qword [rbx + 0x10]
nop dword [rax + rax]
mov edx, dword [0x141dd8838]
and edx, dword [0x141dd883c]
imul edx, edx, 0x1d94f2bc
cmp edx, 0x7a656189
je 0x1400c3550
test rcx, rcx
je 0x1400c35ba
cmp rax, 0x11
jb 0x1400c35a8
mov rdi, qword [rdi - 8]
nop dword [rax]
mov eax, dword [0x141dd8840]
xor eax, dword [0x141dd8844]
and eax, 0x474fff26
add eax, 0x9528ddd4
imul rax, rax, 0x6a228d57
shr rax, 0x3d
cmp eax, 0x5f36ed16
je 0x1400c3580
mov rcx, qword [0x141dde6e0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rdi, qword [r14 + 0x1c0]
nop word cs:[rax + rax]
mov eax, dword [0x141dd8848]
and eax, dword [0x141dd884c]
xor eax, 0x6e3b9bcb
add eax, 0x4d803619
shr eax, 2
imul rax, rax, 0x20b598bd
shr rax, 0x3b
cmp eax, 0xf098310f
ja 0x1400c35d0
test rdi, rdi
je 0x1400c3830
mov rbx, qword [r14 + 0x1c8]
mov eax, dword [0x141dd8850]
xor edx, edx
div dword [0x141dd8854]
nop dword [rax]
mov eax, dword [0x141dd8858]
imul eax, dword [0x141dd885c]
xor eax, 0x1a84e106
cmp eax, 0xb1cc7476
ja 0x1400c3620
nop dword [rax]
mov eax, dword [0x141dd8860]
and eax, dword [0x141dd8864]
or eax, 0xe6923e6c
imul rcx, rax, 0x26eaf799
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1d
xor eax, 0xd216e2ef
cmp eax, 0x881c8e5c
jb 0x1400c3640
mov r14, qword [rbx]
test r14, r14
je 0x1400c36d8
xor eax, eax
test al, al
jne 0x1400c36aa
mov eax, dword [0x141dd8868]
or eax, dword [0x141dd886c]
imul rsi, rax, 0x7828077f
shr rsi, 0x3e
or esi, 0xefeef1fa
mov rcx, rdi
call r14
cmp esi, 0x9809c3b9
jne 0x1400c36c0
mov rcx, rdi
call r14
jmp 0x1400c367f
mov eax, dword [0x141dd8870]
xor eax, dword [0x141dd8874]
and eax, 0x49f0b6fe
cmp eax, 0xf4510de9
je 0x1400c36c0
mov eax, dword [0x141dd8878]
xor edx, edx
div dword [0x141dd887c]
nop word cs:[rax + rax]
mov eax, dword [0x141dd8880]
or eax, dword [0x141dd8884]
or eax, 0x1911b34c
imul eax, eax, 0xd8316dc8
cmp eax, 0x7a571239
je 0x1400c36f0
cmp qword [rbx + 8], 0
je 0x1400c3830
mov rax, qword [rbx + 0x10]
nop dword [rax]
mov ecx, dword [0x141dd8888]
imul ecx, dword [0x141dd888c]
add ecx, 0x7ec8dca1
or ecx, 0x44f722c4
cmp ecx, 0xb64086f8
je 0x1400c3720
nop word cs:[rax + rax]
mov ecx, dword [0x141dd8890]
add ecx, dword [0x141dd8894]
or ecx, 0xef620c08
shr ecx, 2
imul rcx, rcx, 0x1054dddd
shr rcx, 0x39
imul ecx, ecx, 0xfebfd714
cmp ecx, 0x71ce541f
jb 0x1400c3750
cmp rax, 0x11
jb 0x1400c37c1
mov rdi, qword [rdi - 8]
nop dword [rax + rax]
mov eax, dword [0x141dd8898]
or eax, dword [0x141dd889c]
imul rcx, rax, 0x15b64a85
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
xor eax, 0x57c5c9b3
add eax, 0x25d74270
cmp eax, 0xee27c05a
ja 0x1400c3790
mov eax, dword [0x141dd88a0]
xor edx, edx
div dword [0x141dd88a4]
imul eax, eax, 0x175ea873
add eax, 0x26f84aa6
imul rcx, rax, 0x297ffd0d
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1d
cmp eax, 0xdb04e262
je 0x1400c380e
mov rcx, qword [0x141dde6e0]
xor esi, esi
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
test sil, sil
je 0x1400c3830
mov rcx, qword [0x141dde6e0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1400c37f5
mov eax, dword [0x141dd88a8]
or eax, dword [0x141dd88ac]
or eax, 0x7b4c28a8
add eax, 0x80ed5c10
xor eax, 0x825e9264
cmp eax, 0xa5071c03
jb 0x1400c3830
mov rax, qword [rsp + 0x20]
mov rcx, qword [rax]
cmp rcx, 0xffffffffffffffff
je 0x1400c39b2
nop word cs:[rax + rax]
mov eax, dword [0x141dd88b0]
xor edx, edx
div dword [0x141dd88b4]
imul eax, eax, 0x9f5675a3
add eax, 0x7c5d335f
cmp eax, 0x91ee616b
jb 0x1400c3870
mov eax, dword [0x141dd88b8]
xor eax, dword [0x141dd88bc]
add eax, 0xff17b443
xor eax, 0x6a9f6081
add eax, 0x849d0b13
cmp eax, 0xd2ab9110
jae 0x1400c38c0
lock dec qword [rcx + 8]
nop word [rax + rax]
mov eax, dword [0x141dd88c0]
xor edx, edx
div dword [0x141dd88c4]
and eax, 0x8b4880
or eax, 0x7330154e
imul rdx, rax, 0x2f0534c5
shr rdx, 0x3c
mov rax, 0xffffffffffffffff
lock xadd qword [rcx + 8], rax
cmp edx, 0x29682044
je 0x1400c38c0
nop dword [rax + rax]
mov edx, dword [0x141dd88c8]
imul edx, dword [0x141dd88cc]
imul edx, edx, 0x3ea4b7c8
cmp edx, 0x83882850
je 0x1400c3900
cmp rax, 1
jne 0x1400c39b2
mov eax, dword [0x141dd88d0]
add eax, dword [0x141dd88d4]
or eax, 0x381a504
and eax, 0x3a5ad86
xor eax, 0xf3611535
cmp eax, 0x35a598b7
jae 0x1400c3947
mov eax, 0xdef74e21
nop dword [rax]
mov edx, dword [0x141dd88d8]
or edx, dword [0x141dd88dc]
add edx, 0xf10b666a
imul rdx, rax
shr rdx, 0x3b
cmp edx, 0x4cdbb527
ja 0x1400c3950
mov r8, qword [rcx - 8]
mov rcx, qword [0x141dde6e0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop word cs:[rax + rax]
mov eax, dword [0x141dd88e0]
xor eax, dword [0x141dd88e4]
or eax, 0x5b0f84c7
add eax, 0xdafb6f34
and eax, 0xf622040a
cmp eax, 0xe6502b7a
je 0x1400c3990
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret