Function at 0x180058950
Capabilities:
Encode data using base64
Terminate process

Disassembly:
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0x110
lea rbp, [rsp + 0x40]
mov qword [rbp + 0x100], rbx
mov qword [rbp + 0x108], rsi
mov qword [rbp + 0x110], rdi
mov rax, qword [0x1800dbea8]
xor rax, rbp
mov qword [rbp + 0xc0], rax
imul ebx, ecx, 0x220
mov r10, r9
mov qword [rbp + 0x38], r9
mov eax, ecx
mov qword [rbp + 0x28], r8
mov r9, rdx
mov qword [rbp + 0x20], rdx
mov dword [rbp + 8], ecx
mov dword [rbp + 0xc], ebx
cmp ecx, ebx
mov ebx, dword [rbp + 0x50]
mov dword [rbp + 0x60], ecx
ja 0x180058d98
mov edi, dword [rbp + 0x50]
mov r11d, 0x400
mov r13d, dword [rbp + 0x40]
movabs r15, 0xaaaaaaaaaaaaaaab
mov r14, qword [rbp + 0x78]
mov r12, qword [rbp + 0x78]
mov rsi, qword [rbp + 0x120]
mov edx, dword [rbp + 0xc]
mov qword [rbp + 0x88], rdi
mov dword [rbp + 0x10], ebx
nop dword [rax]
cmp eax, 0x2b65
ja 0x1800591bb
je 0x18005909e
cmp eax, 0x1603
ja 0x180058ea3
je 0x180058e5a
sub eax, 0xa1
je 0x180058e30
sub eax, 0x23
je 0x180058e05
sub eax, 0x20
je 0x180058dcf
cmp eax, 0x21
jne 0x180058d87
mov ebx, dword [rsi]
mov dword [rbp], ebx
cmp ebx, 1
jne 0x180058a80
mov r8, qword [rsi + 8]
lea edx, [rbx + 0x14]
mov r15, qword [rbp + 0x130]
mov rcx, r10
mov qword [rsp + 0x30], 0
mov eax, dword [r15]
mov dword [rbp + 0x48], eax
lea rax, [rbp + 0x48]
mov r8, qword [r8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r9
xor r9d, r9d
call fcn.180098300
jmp 0x180058d5f
mov rdi, qword [rbp + 0x120]
mov esi, 0x24
mov dword [rbp + 0x48], esi
nop
mov r15, qword [rbp + 0x130]
cmp esi, 0x24
je 0x180058c63
cmp esi, 0xcf0
jne 0x180058d30
xor ecx, ecx
mov dword [rbp + 0x10], ecx
cmp dword [r15], ecx
jle 0x180058d30
nop word [rax + rax]
mov eax, 0x7d
mov dword [rbp + 0x40], eax
nop dword [rax + rax]
sub eax, 0x7d
je 0x180058c4a
sub eax, 0x6f
je 0x180058c41
sub eax, 0x6f
je 0x180058b3a
cmp eax, 0x6f
jne 0x180058c12
movsxd rdx, dword [rdi]
xor r9d, r9d
mov rax, qword [rbp + 0x128]
mov r8, qword [rdi + 8]
mov dword [rbp + 0x18], r13d
mov qword [rsp + 0x30], 0
mov eax, dword [rax]
mov r8, qword [r8 + rdx*8 - 8]
lea edx, [r9 + 0x15]
imul eax, ecx
movsxd rcx, eax
lea rax, [rbp + 0x18]
mov qword [rsp + 0x28], rax
add rcx, r10
mov qword [rsp + 0x20], r14
call fcn.180098300
jmp 0x180058bfd
mov eax, dword [r8]
mov r8, qword [rdi + 8]
imul eax, ecx
mov qword [rsp + 0x30], 0
mov dword [rbp + 0x18], r13d
mov r8, qword [r8]
movsxd rcx, eax
lea rax, [rbp + 0x18]
add rcx, r9
mov qword [rsp + 0x28], rax
xor r9d, r9d
mov qword [rsp + 0x20], rcx
mov rcx, r14
lea edx, [r9 + 0x15]
call fcn.180098300
lea eax, [rbx - 1]
mov esi, 1
movsxd r15, eax
cmp rsi, r15
jge 0x180058bf6
nop word [rax + rax]
mov ebx, 0xed
mov eax, ebx
sub eax, 0xed
je 0x180058bae
cmp eax, 0x40
jne 0x180058be0
mov rax, r14
mov r14, r12
mov r12, rax
jmp 0x180058be0
mov r8, qword [rdi + 8]
lea rax, [rbp + 0x18]
xor r9d, r9d
mov dword [rbp + 0x18], r13d
mov qword [rsp + 0x30], 0
mov rcx, r12
mov qword [rsp + 0x28], rax
mov r8, qword [r8 + rsi*8]
lea edx, [r9 + 0x15]
mov qword [rsp + 0x20], r14
call fcn.180098300
add ebx, 0x40
cmp ebx, 0x16d
jb 0x180058b95
inc rsi
cmp rsi, r15
jl 0x180058b90
mov ebx, dword [rbp]
mov r15, qword [rbp + 0x130]
mov ecx, dword [rbp + 0x10]
mov r11d, 0x400
mov r9, qword [rbp + 0x20]
mov r10, qword [rbp + 0x38]
mov r8, qword [rbp + 0x28]
mov eax, dword [rbp + 0x40]
add eax, 0x6f
mov dword [rbp + 0x40], eax
cmp eax, 0x239
jb 0x180058ad0
add ecx, r11d
mov dword [rbp + 0x40], r13d
mov dword [rbp + 0x10], ecx
cmp ecx, dword [r15]
jl 0x180058ac0
mov esi, dword [rbp + 0x48]
jmp 0x180058d30
mov r12, qword [rbp + 0x98]
jmp 0x180058c12
mov r13d, dword [r15]
mov r14, qword [rbp + 0xa8]
sub r13d, ecx
cmp r13d, r11d
cmovg r13d, r11d
xor r12d, r12d
jmp 0x180058c12
mov eax, dword [r15]
cmp eax, r11d
cmovg eax, r11d
cdqe
lea rcx, [rax + rax*4]
lea rcx, [rcx*8 + 0x10]
lea rax, [rcx + 0xf]
cmp rax, rcx
ja 0x180058c8e
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1800c0a70
sub rsp, rax
xor r8d, r8d
xor ecx, ecx
lea r9, [rsp + 0x40]
mov qword [rsp + 0x20], 0
lea edx, [r8 + 0x69]
call fcn.1800479d0
mov qword [rbp + 0xa8], rax
mov qword [rbp + 0x98], 0
cmp ebx, 2
jle 0x180058d2a
mov eax, dword [r15]
mov ecx, 0x400
cmp eax, ecx
cmovg eax, ecx
cdqe
lea rcx, [rax + rax*4]
lea rcx, [rcx*8 + 0x10]
lea rax, [rcx + 0xf]
cmp rax, rcx
ja 0x180058cfb
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1800c0a70
sub rsp, rax
xor r8d, r8d
xor ecx, ecx
lea r9, [rsp + 0x40]
mov qword [rsp + 0x20], 0
lea edx, [r8 + 0x69]
call fcn.1800479d0
mov qword [rbp + 0x98], rax
mov r11d, 0x400
mov r9, qword [rbp + 0x20]
add esi, 0xccc
mov r10, qword [rbp + 0x38]
mov r8, qword [rbp + 0x28]
mov dword [rbp + 0x48], esi
cmp esi, 0x1998
jbe 0x180058a90
mov rdi, qword [rbp + 0x88]
mov rsi, qword [rbp + 0x120]
mov ebx, dword [r15]
mov r9, qword [rbp + 0x20]
mov dword [rbp + 0x10], ebx
movabs r15, 0xaaaaaaaaaaaaaaab
mov edx, dword [rbp + 0xc]
mov ecx, dword [rbp + 8]
mov r8, qword [rbp + 0x28]
mov r10, qword [rbp + 0x38]
mov r11d, 0x400
imul eax, ecx, 0x22
add dword [rbp + 0x60], eax
mov eax, dword [rbp + 0x60]
cmp eax, edx
jbe 0x1800589f0
mov eax, ebx
mov rcx, qword [rbp + 0xc0]
xor rcx, rbp
call fcn.1800c0ae0
mov rbx, qword [rbp + 0x100]
mov rsi, qword [rbp + 0x108]
mov rdi, qword [rbp + 0x110]
lea rsp, [rbp + 0xd0]
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
cmp dword [rsi], 2
jl 0x1800593a9
mov r9, qword [r9 + 8]
lea r8, [rbp]
lea rdx, [rbp + 0x50]
mov dword [rbp], r11d
mov ecx, 0x7a
call fcn.18004cf90
mov r9, qword [rbp + 0x20]
mov rdi, rax
mov qword [rbp + 0x88], rax
jmp 0x180058d73
mov rcx, qword [rsi]
cmp dword [rcx], 0x7f2bb70d
jne 0x1800593e0
mov eax, dword [r9]
test eax, eax
je 0x1800593d6
cmp eax, dword [rcx + 0x20]
ja 0x1800593d6
mov ecx, dword [rbp + 8]
jmp 0x180058d87
mov rcx, qword [rsi + 0x10]
mov rax, r15
add rcx, 2
mul rcx
mov rax, rdx
shr rax, 1
shl rax, 2
mov qword [rbp + 0xb0], rax
mov ecx, dword [rbp + 8]
mov edx, dword [rbp + 0xc]
jmp 0x180058d87
mov rdx, qword [rbp + 0xb0]
xor r8d, r8d
mov rcx, r9
call fcn.1800ab630
cmp qword [rsi + 0x18], 0x10
mov qword [rbp + 0x80], rsi
jb 0x180058e84
mov rax, qword [rsi]
mov qword [rbp + 0x80], rax
mov r9, qword [rbp + 0x20]
mov qword [rbp + 0x58], r9
cmp qword [r9 + 0x18], 0x10
jb 0x180058d73
mov rax, qword [r9]
mov qword [rbp + 0x58], rax
jmp 0x180058d73
cmp eax, 0x1acc
je 0x180058ed5
cmp eax, 0x1f2c
je 0x180058ec1
cmp eax, 0x23af
je 0x180058d98
jmp 0x180058d87
test edi, edi
je 0x180058d87
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov eax, dword [r9]
lea r8, [rbp + 0xb8]
mov dword [rbp], eax
lea rdx, [rbp]
mov rax, qword [rsi]
xor r9d, r9d
mov qword [rsp + 0x20], 0
mov rcx, qword [rax + 8]
mov qword [rbp + 0xb8], rcx
mov ecx, 0xa1
call fcn.1800518f0
mov r15, qword [rbp + 0x20]
test eax, eax
je 0x180058f7b
mov eax, dword [r15]
lea r9, [rbp]
mov dword [rbp + 0x18], eax
lea rdx, [rbp + 0x18]
mov rax, qword [rsi]
lea rcx, [rbp + 0x48]
mov r8d, 0x63
mov qword [rbp + 0x48], rax
mov dword [rbp], 2
call fcn.1800892f0
test eax, eax
jne 0x180059435
mov eax, dword [r15]
lea rdx, [rbp]
mov dword [rbp], eax
xor r9d, r9d
mov rax, qword [rsi]
mov r8d, 0xa0
mov dword [rbp + 0x30], 2
mov rcx, qword [rax + 8]
mov qword [rbp + 0x78], rcx
lea rcx, [rbp + 0x78]
call fcn.18007ca70
mov r9, r15
jmp 0x180058d69
mov rcx, qword [rsi]
mov edx, dword [r15]
mov dword [rbp], edx
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x180059040
xor r9d, r9d
mov qword [rbp + 0x18], rax
lea r8, [rbp + 0x18]
mov qword [rsp + 0x20], 0
lea rdx, [rbp]
mov ecx, 0xa1
call fcn.1800518f0
test eax, eax
je 0x18005901e
mov eax, dword [r15]
lea r9, [rbp]
mov dword [rbp], eax
lea r8, [rbp + 0x30]
mov rax, qword [rsi]
lea rdx, [rbp + 0x18]
xor ecx, ecx
mov qword [rbp + 0x18], rax
mov dword [rsp + 0x20], 0xa0
call fcn.180075470
mov eax, dword [rbp + 0x30]
lea r9, [rbp]
inc eax
lea rdx, [rbp + 0x18]
mov dword [rbp + 0x30], eax
lea rcx, [rbp + 0x48]
mov dword [rbp], eax
mov r8d, 0x63
mov eax, dword [r15]
mov dword [rbp + 0x18], eax
mov rax, qword [rsi]
mov qword [rbp + 0x48], rax
call fcn.1800892f0
test eax, eax
jne 0x180059435
mov r9, r15
jmp 0x180058d69
mov eax, 0x2a
cmp eax, 0x2a
je 0x1800593ea
add eax, 0x3c6
cmp eax, 0x3c6
jbe 0x180059023
mov r9, r15
jmp 0x180058d69
mov qword [rbp + 0x18], rcx
lea r9, [rbp]
xor ecx, ecx
mov dword [rsp + 0x20], 0xa0
lea r8, [rbp + 0x30]
lea rdx, [rbp + 0x18]
call fcn.180075470
mov eax, dword [rbp + 0x30]
lea r9, [rbp]
inc eax
lea rdx, [rbp + 0x18]
mov dword [rbp + 0x30], eax
lea rcx, [rbp + 0x48]
mov dword [rbp], eax
mov r8d, 0x63
mov eax, dword [r15]
mov dword [rbp + 0x18], eax
mov rax, qword [rsi]
mov qword [rbp + 0x48], rax
call fcn.1800892f0
test eax, eax
jne 0x180059435
mov r9, r15
jmp 0x180058d69
mov rax, r15
mul qword [rsi + 0x10]
xor eax, eax
shr rdx, 1
mov qword [rbp + 0xa0], rax
lea rcx, [rdx + rdx*2]
test rcx, rcx
je 0x180058e4f
mov rdi, qword [rbp + 0x58]
dec rcx
mov r9, qword [rbp + 0x80]
mov rax, r15
mul rcx
shr rdx, 1
inc rdx
lea rax, [rdx + rdx*2]
mov qword [rbp + 0xa0], rax
nop dword [rax]
nop word [rax + rax]
mov r8d, 0x5c
mov eax, r8d
sub eax, 0x5c
je 0x180059109
cmp eax, 0x29
jne 0x18005917b
add r9, 3
jmp 0x18005917b
mov rax, qword [0x1800e2200]
movzx ecx, byte [r9]
shr rcx, 2
movzx ecx, byte [rcx + rax]
mov byte [rdi], cl
movzx ecx, byte [r9]
movzx eax, byte [r9 + 1]
and ecx, 3
shl ecx, 4
shr eax, 4
add ecx, eax
mov rax, qword [0x1800e2200]
movzx ecx, byte [rcx + rax]
mov byte [rdi + 1], cl
movzx ecx, byte [r9 + 1]
movzx eax, byte [r9 + 2]
and ecx, 0xf
shr eax, 6
lea ecx, [rax + rcx*4]
mov rax, qword [0x1800e2200]
movzx ecx, byte [rcx + rax]
mov byte [rdi + 2], cl
movzx ecx, byte [r9 + 2]
mov rax, qword [0x1800e2200]
and ecx, 0x3f
movzx ecx, byte [rcx + rax]
mov byte [rdi + 3], cl
add rdi, 4
add r8d, 0x29
cmp r8d, 0xae
jb 0x1800590f6
mov qword [rbp + 0x80], r9
mov qword [rbp + 0x58], rdi
sub rdx, 1
jne 0x1800590f0
mov rdi, qword [rbp + 0x88]
mov r9, qword [rbp + 0x20]
mov r8, qword [rbp + 0x28]
mov ecx, dword [rbp + 8]
mov edx, dword [rbp + 0xc]
jmp 0x180058d87
cmp eax, 0x4edc
ja 0x180059387
je 0x180059360
cmp eax, 0x34d4
je 0x18005931b
cmp eax, 0x3d74
je 0x1800592fe
cmp eax, 0x40c7
jne 0x180058d87
mov r11, qword [rbp + 0xa0]
cmp r11, qword [rsi + 0x10]
jae 0x180058d81
mov rdi, qword [rbp + 0x58]
mov r8d, 0xb7
mov r9, qword [rbp + 0x80]
mov r10d, dword [rbp + 0x70]
mov ebx, dword [rbp + 0x68]
mov r13d, dword [rbp + 0x90]
nop dword [rax]
mov eax, r8d
sub eax, 0xb4
je 0x1800592bf
sub eax, 1
je 0x180059291
sub eax, 1
je 0x180059272
cmp eax, 1
jne 0x1800592c5
movzx ebx, byte [r9]
lea rax, [r11 + 1]
cmp rax, qword [rsi + 0x10]
jae 0x180059256
movzx r10d, byte [r9 + 1]
jmp 0x180059259
xor r10d, r10d
mov rax, qword [0x1800e2200]
xor r13d, r13d
mov rcx, rbx
shr rcx, 2
movzx ecx, byte [rcx + rax]
mov byte [rdi], cl
jmp 0x1800592c2
mov ecx, ebx
mov eax, r10d
and ecx, 3
shr eax, 4
shl ecx, 4
add ecx, eax
mov rax, qword [0x1800e2200]
movzx ecx, byte [rcx + rax]
mov byte [rdi], cl
jmp 0x1800592c2
lea rax, [r11 + 1]
cmp rax, qword [rsi + 0x10]
jae 0x1800592b9
mov ecx, r10d
mov eax, r13d
and ecx, 0xf
shr eax, 6
lea ecx, [rax + rcx*4]
mov rax, qword [0x1800e2200]
movzx edx, byte [rcx + rax]
mov byte [rdi], dl
jmp 0x1800592c2
mov dl, 0x3d
mov byte [rdi], dl
jmp 0x1800592c2
mov byte [rdi], 0x3d
inc rdi
dec r8d
cmp r8d, 0xb3
ja 0x180059220
mov r9, qword [rbp + 0x20]
mov dword [rbp + 0x90], r13d
mov r13d, dword [rbp + 0x40]
mov dword [rbp + 0x68], ebx
mov ebx, dword [rbp + 0x10]
mov qword [rbp + 0x58], rdi
mov rdi, qword [rbp + 0x88]
mov dword [rbp + 0x70], r10d
jmp 0x180058d73
mov r8d, dword [rbp + 0x50]
lea rcx, str.Lack_of_disk_space_on_drive_
mov rdx, qword [r9 + 8]
call fcn.1800c03a0
mov r9, qword [rbp + 0x20]
jmp 0x180058d73
mov rax, qword [rsi]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x180058e28
mov eax, dword [r9]
xor r8d, r8d
mov dword [rbp], eax
xor r9d, r9d
lea rax, [rbp + 0x18]
mov qword [rbp + 0x18], rcx
mov qword [rsp + 0x28], rax
lea rcx, [rbp]
xor edx, edx
mov dword [rsp + 0x20], 5
call fcn.1800818e0
mov r9, qword [rbp + 0x20]
jmp 0x180058d73
test r8, r8
je 0x18005937d
mov ecx, dword [rbp + 0x30]
mov ebx, 0xffdc
cmp ecx, ebx
movzx eax, cx
mov ecx, dword [rbp + 8]
cmova ax, bx
mov word [r8], ax
xor ebx, ebx
mov dword [rbp + 0x10], ebx
jmp 0x180058d87
cmp eax, 0x5bbc
je 0x18005937d
cmp eax, 0x68e4
je 0x180058d98
cmp eax, 0x7a04
je 0x180058d98
jmp 0x180058d87
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r15, qword [rbp + 0x20]
lea rdx, str.attrs__0
mov rcx, rax
mov r8, qword [r15]
call fcn.1800c02b0
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov eax, 0x7f2bb747
jmp 0x180058d9a
mov eax, 0x7f2bb70d
jmp 0x180058d9a
mov eax, dword [r15]
xor r9d, r9d
mov dword [rbp + 0x68], eax
xor r8d, r8d
mov rax, qword [rsi]
xor edx, edx
mov rcx, qword [rax + 8]
lea rax, [rbp + 0x78]
mov qword [rbp + 0x78], rcx
lea rcx, [rbp + 0x68]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 5
call fcn.1800818e0
mov rcx, qword [rbp + 0x28]
test rcx, rcx
je 0x18005942e
mov eax, 1
mov word [rcx], ax
xor eax, eax
jmp 0x180058d9a
mov eax, 0x7f2bb746
jmp 0x180058d9a