Function at 0x14047f3a6
Capabilities:
Encode data using base64
Encrypt data using speck
Write file on windows

Disassembly:
push rbp
movzx ebp, cx
xor bpl, r8b
bsf bp, bp
push rbx
push rsi
xadd rsi, rsi
push rdi
btc bp, 0x1a
push r12
movsxd rsi, ecx
shl ebx, cl
movsx rbx, di
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x78
adc bl, 0xd
sub edi, edi
and r15b, spl
rol r14, cl
mov r14d, r8d
movsx bx, r12b
setns sil
btc bx, 0x18
movsxd r15, ecx
mov rbx, r9
sal esi, cl
btr rsi, 0x95
and si, 0xa220
mov rsi, rdx
cmp r14b, 3
cmc
clc
test r8d, r8d
jmp 0x14047f415
je 0x14047f962
test rdx, rdx
jmp 0x14047f423
jne 0x14047f489
mov byte [r9 + 0x38], 1
xor r8d, r8d
mov dword [r9 + 0x34], edi
xor edx, edx
cmp rbx, 0x3319ba9
stc
mov byte [r9 + 0x30], 1
test bh, 0xa5
jmp 0x14047f44c
sub ecx, ecx
clc
mov dword [r9 + 0x2c], 0x16
stc
jmp 0x14047f460
sub r9d, r9d
jmp 0x14047f468
mov qword [rsp + 0x28], rbx
jmp 0x14047f472
mov qword [rsp + 0x20], rdi
jmp 0x14047f47c
call fcn.140467208
or eax, 0xffffffff
jmp 0x14047f971
mov rax, r15
sbb ecx, edx
movsx cx, sil
lea rcx, [0x1400db290]
bts r12, r11
dec r12
bt r13w, 0x15
and eax, 0x3f
movzx r12w, spl
rcl r12b, cl
mov r12, r15
sar r12, 6
mov qword [rbp - 0x18], r12
mov r13w, r12w
not r13b
movzx r13w, r9b
lea r13, [rax + rax*8]
mov rcx, qword [rcx + r12*8]
xchg al, al
inc al
mov al, byte [rcx + r13*8 + 0x39]
jmp 0x14047f4df
mov byte [rbp - 0x48], al
dec al
test r9b, 0x1b
cmp al, 1
jmp 0x14047f4ef
ja 0x14047f50d
mov eax, r14d
cmp cl, 0x24
test r12b, r9b
not eax
test al, 1
jmp 0x14047f507
je 0x14047f429
test byte [rcx + r13*8 + 0x38], 0x20
jmp 0x14047f518
je 0x14047f53f
xor edx, edx
movsx ecx, di
mov cx, 0x1c22
mov ecx, r15d
movsx r8, r8w
xchg r8b, r8b
lea r8d, [rdx + 2]
jmp 0x14047f53a
call fcn.1400880c4
mov ecx, r15d
jmp 0x14047f547
mov qword [rbp - 0x30], rdi
jmp 0x14047f550
call fcn.140485e4b
lea rdx, [0x1400db290]
test eax, eax
jmp 0x14047f563
je 0x14047f758
mov rax, qword [rdx + r12*8]
cmp esi, 0x45a4b599
cmp byte [rax + r13*8 + 0x38], dil
jge 0x14047f758
cmp byte [rbx + 0x28], dil
jmp 0x14047f587
jne 0x14047f5a8
mov rcx, rbx
jmp 0x14047f595
call fcn.14046b003
lea rdx, [0x1400db290]
inc eax
cmp bp, cx
sar al, cl
mov rax, qword [rbx + 0x18]
jmp 0x14047f5b2
cmp qword [rax + 0x138], rdi
jne 0x14047f5d5
mov rax, qword [rdx + r12*8]
cmp dl, al
cmp byte [rax + r13*8 + 0x39], dil
jmp 0x14047f5cf
je 0x14047f758
mov rcx, qword [rdx + r12*8]
movsxd rdx, r15d
not dl
movsx dx, bpl
lea rdx, [rbp - 0x20]
jmp 0x14047f5ec
mov rcx, qword [rcx + r13*8 + 0x28]
jmp 0x14047f5f6
call qword [sym.imp.KERNEL32.dll_GetConsoleMode]
test eax, eax
jmp 0x14047f603
je 0x14047f74e
movsx ecx, byte [rbp - 0x48]
clc
test ecx, ecx
je 0x14047f6ff
sub ecx, 1
je 0x14047f62d
cmp ecx, 1
jmp 0x14047f627
jne 0x14047f885
lea r12, [rsi + r14]
rol r15w, 0xbb
sbb r15d, 0xdebf4893
mov qword [rbp - 0x40], rdi
xor r15w, r9w
bt r15w, ax
mov r15, rsi
cmp rsi, r12
jae 0x14047f6f6
mov r14d, dword [rbp - 0x3c]
cdqe
movzx eax, word [r15]
not cl
movsx cx, r13b
movzx ecx, ax
mov word [rbp - 0x48], ax
jmp 0x14047f673
call fcn.1404861b8
movzx ecx, word [rbp - 0x48]
stc
cmp ax, cx
jne 0x14047f6ed
add r14d, 2
cmc
mov dword [rbp - 0x3c], r14d
cmp cx, 0xa
jmp 0x14047f698
jne 0x14047f6d2
mov ecx, 0xd
jmp 0x14047f6a8
call fcn.1404861b8
mov ecx, 0xd
cmc
cmp ax, cx
jne 0x14047f6ed
inc r14d
jmp 0x14047f6c4
mov dword [rbp - 0x3c], r14d
jmp 0x14047f6cd
inc edi
cmp r10b, spl
add r15, 2
test r11w, bp
cmp r15, r12
jmp 0x14047f6e2
jae 0x14047f6f6
jmp 0x14047f65c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x40], eax
mov r12, qword [rbp - 0x18]
jmp 0x14047f876
mov r9d, r14d
cmovo r8, rbx
mov r8b, 0xa2
cwd
mov qword [rsp + 0x20], rbx
cqo
movzx r8w, r9b
movzx r8, r13w
mov r8, rsi
lea rcx, [rbp - 0x40]
setg dl
bswap rdx
cdq
mov edx, r15d
jmp 0x14047f731
call fcn.1400aec78
movsd xmm0, qword [rax]
xchg dil, dil
bswap edi
not edi
mov edi, dword [rax + 8]
jmp 0x14047f749
jmp 0x14047f87e
lea rdx, [0x1400db290]
rcl cx, cl
mov rcx, qword [rdx + r12*8]
cmp r14d, 0xc009bbe
cmp byte [rcx + r13*8 + 0x38], dil
jge 0x14047f809
movsx ecx, byte [rbp - 0x48]
jmp 0x14047f778
test ecx, ecx
jmp 0x14047f77f
je 0x14047f7e3
sub ecx, 1
jmp 0x14047f78d
je 0x14047f7c7
cmp ecx, 1
jmp 0x14047f79b
jne 0x14047f88c
mov r9d, r14d
mov cl, 0xf
jmp 0x14047f7ab
lea rcx, [rbp - 0x40]
mov r8, rsi
movsxd rdx, ebp
mov edx, r15d
jmp 0x14047f7bd
call fcn.1400af1f4
jmp 0x14047f736
mov r9d, r14d
lea rcx, [rbp - 0x40]
movsx dx, r15b
mov r8, rsi
mov edx, r15d
call fcn.1400af310
jmp 0x14047f736
mov r9d, r14d
movsx dx, bpl
lea rcx, [rbp - 0x40]
mov r8, rsi
movsx edx, r12w
cdq
mov edx, r15d
jmp 0x14047f7ff
call fcn.1400af0f0
jmp 0x14047f736
mov rcx, qword [rcx + r13*8 + 0x28]
cmp r13, 0xffffffffee0d8889
lea r9, [rbp - 0x3c]
add r8w, 0x6e3b
bsr r8, rdi
shr r8b, cl
sub eax, eax
mov r8d, r14d
and qword [rsp + 0x20], rax
bswap edx
mov rdx, rsi
jmp 0x14047f83a
mov qword [rbp - 0x40], rax
jmp 0x14047f843
mov dword [rbp - 0x38], eax
jmp 0x14047f84b
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jmp 0x14047f858
jne 0x14047f873
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x40], eax
neg dh
jmp 0x14047f873
mov edi, dword [rbp - 0x38]
movsd xmm0, qword [rbp - 0x40]
setp al
movsd qword [rbp - 0x30], xmm0
xchg ah, dh
lea rdx, [0x1400db290]
mov rax, qword [rbp - 0x30]
test r13b, r10b
shr rax, 0x20
test eax, eax
jmp 0x14047f89e
jne 0x14047f953
mov eax, dword [rbp - 0x30]
clc
test eax, eax
jmp 0x14047f8af
je 0x14047f907
cmp eax, 5
jne 0x14047f8e9
mov byte [rbx + 0x30], 1
jmp 0x14047f8c7
mov dword [rbx + 0x2c], 9
jmp 0x14047f8d3
mov byte [rbx + 0x38], 1
jmp 0x14047f8dc
mov dword [rbx + 0x34], eax
jmp 0x14047f8e4
jmp 0x14047f481
mov ecx, dword [rbp - 0x30]
movsx dx, dl
cmovns dx, r8w
mov rdx, rbx
jmp 0x14047f8fd
call fcn.14047c159
jmp 0x14047f481
mov rax, qword [rdx + r12*8]
test al, 0x3d
test byte [rax + r13*8 + 0x38], 0x40
jmp 0x14047f918
je 0x14047f92c
cmp byte [rsi], 0x1a
jmp 0x14047f926
je 0x14047f962
and dword [rbx + 0x34], 0
jmp 0x14047f935
mov byte [rbx + 0x30], 1
mov dword [rbx + 0x2c], 0x1c
jmp 0x14047f945
mov byte [rbx + 0x38], 1
jmp 0x14047f94e
jmp 0x14047f481
mov eax, dword [rbp - 0x2c]
sub eax, edi
jmp 0x14047f95d
jmp 0x14047f971
xor eax, eax
sar r13w, cl
movsx si, r15b
bt rsi, rbx
add rsp, 0x78
pop r15
not r14b
pop r14
not r12b
pop r13
pop r12
mov sil, 0x8d
not rsi
setbe bl
pop rdi
movzx bx, r12b
movsxd rsi, ebp
movzx rsi, r8w
pop rsi
pop rbx
cmovno bp, sp
pop rbp
ret