Function at 0x180062790
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xd0]
sub rsp, 0x1d0
lea ebx, [r8 + 0xb]
mov dword [rsp + 0x70], r8d
xor r11d, r11d
mov dword [rsp + 0x50], ebx
mov rsi, rcx
mov r12, r9
lea rcx, [0x180000000]
mov r14, rdx
cmp r8d, ebx
jae 0x180062cf8
movups xmm2, xmmword [rbp + 0x48]
lea edi, [r8 - 0x7e]
mov rbx, qword [rbp - 0x48]
movsd xmm1, qword [rbp + 0x68]
lea edx, [r11 + 0x4f]
mov r15, qword [rbp - 0x50]
lea r10d, [r11 + 0x4d]
mov r13d, dword [rbp + 0x120]
movabs r9, 0x4c4b4a49484746
mov eax, dword [rsp + 0x50]
movups xmmword [rbp], xmm2
mov dword [rbp - 0x80], edi
movsd qword [rbp - 0x60], xmm1
cmp edi, 0x1a
ja case.default.0x18006283f
mov ecx, dword [rcx + rdi*4 + 0x633c4]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
movzx eax, word [0x18006a0dc]
mov dword [0x1800704c2], 0x454443
mov word [0x1800704c0], ax
mov qword [0x1800704c5], r9
jmp case.0x18006283f.3
cmp dword [r12 + 0x28], 0
je 0x180062a40
mov esi, 0xc2
nop word [rax + rax]
mov eax, esi
sub eax, 0xc2
je 0x180062a02
cmp eax, 0x1f
jne 0x180062a31
mov edi, 0xbe
nop dword [rax + rax]
mov eax, edi
sub eax, 0xbe
je 0x180062991
sub eax, 1
je 0x18006290d
sub eax, 1
je 0x1800628c5
cmp eax, 1
jne 0x1800629d9
jmp 0x1800629d5
mov eax, dword [r14]
lea rcx, [rbp - 0x40]
add r15, 4
mov dword [rbp - 0x40], eax
mov rdx, r15
mov r8d, 0x96
call fcn.180045d60
mov dword [rsp + 0x68], eax
lea rdx, [rsp + 0x60]
mov eax, dword [r12 + 0x14]
lea rcx, [rsp + 0x68]
mov r8d, 0xb6
mov dword [rsp + 0x60], eax
call fcn.180035700
mov dword [r12 + 0x14], eax
jmp 0x1800629d9
mov eax, dword [r14]
lea rcx, [rsp + 0x68]
mov r8d, 0x96
mov dword [rsp + 0x68], eax
mov rdx, r15
call fcn.180045d60
mov dword [rbp - 0x68], eax
lea rdx, [rsp + 0x60]
mov eax, dword [r12 + 0xc]
lea rcx, [rbp - 0x68]
mov r8d, 0xb6
mov dword [rsp + 0x60], eax
call fcn.180035700
mov dword [r12 + 0xc], eax
lea rcx, [rbp - 0x68]
mov eax, dword [r14]
add r15, 4
mov rdx, r15
mov dword [rbp - 0x68], eax
mov r8d, 0x96
call fcn.180045d60
mov dword [rsp + 0x60], eax
lea rdx, [rsp + 0x68]
mov eax, dword [r12 + 0x10]
lea rcx, [rsp + 0x60]
mov r8d, 0xb6
mov dword [rsp + 0x68], eax
call fcn.180035700
mov dword [r12 + 0x10], eax
jmp 0x1800629d9
mov eax, dword [r14]
lea r15, [r12 + 0x18]
mov rdx, r15
mov dword [rbp - 0x38], eax
mov r8d, 0x96
lea rcx, [rbp - 0x38]
call fcn.180045d60
mov dword [rsp + 0x60], eax
lea rdx, [rsp + 0x68]
mov eax, dword [r12 + 8]
lea rcx, [rsp + 0x60]
mov r8d, 0xb6
mov dword [rsp + 0x68], eax
call fcn.180035700
mov dword [r12 + 8], eax
add r15, 4
inc edi
cmp edi, 0xc2
jb 0x1800628a0
mov eax, 0x10
mov qword [rbp - 0x50], r15
sub eax, dword [r12 + 0x28]
add rbx, rax
xor r11d, r11d
mov dword [r12 + 0x28], r11d
jmp 0x180062a31
mov ecx, dword [r12 + 0x28]
lea rdx, [rsp + 0x68]
mov r8, qword [rbp + 0x130]
mov eax, 0x10
sub eax, ecx
mov r9d, 0x55
add rcx, 0x18
mov qword [rsp + 0x68], rax
add rcx, r12
call fcn.18005d0f0
add esi, 0x1f
cmp esi, 0x100
jb 0x180062880
mov rcx, qword [rbp - 0x58]
lea rax, [rcx - 0x10]
mov qword [rbp - 0x78], rax
cmp rbx, rax
ja 0x180062c6d
mov r15d, dword [rsp + 0x78]
mov esi, 0x1c
mov dword [rsp + 0x60], esi
cmp esi, 0x5b0
ja 0x180062c22
je 0x180062ab3
cmp esi, 0x1c
je 0x180062aa5
cmp esi, 0x1f8
je 0x180062a97
cmp esi, 0x3d4
jne 0x180062c4f
mov ecx, dword [r12 + 0x10]
mov dword [rbp - 0x70], ecx
jmp 0x180062c4f
mov ecx, dword [r12 + 0xc]
mov dword [rsp + 0x58], ecx
jmp 0x180062c4f
mov r13d, dword [r12 + 8]
mov qword [rbp + 0x10], rax
jmp 0x180062c4f
mov r12d, dword [r12 + 0x14]
mov esi, dword [rsp + 0x58]
nop dword [rax]
mov edi, 0x109
nop word [rax + rax]
mov eax, edi
sub eax, 0x109
je 0x180062bb1
sub eax, 0x53
je 0x180062b2e
sub eax, 0x53
je 0x180062b37
sub eax, 0x53
je 0x180062b2e
cmp eax, 0x53
jne 0x180062bea
mov eax, dword [r14]
lea rcx, [rbp - 0x30]
mov r8d, 0x96
mov dword [rbp - 0x30], eax
mov rdx, rbx
call fcn.180045d60
mov r8d, 0xb6
mov dword [rsp + 0x58], eax
lea rdx, [rsp + 0x68]
mov dword [rsp + 0x68], r12d
lea rcx, [rsp + 0x58]
call fcn.180035700
mov r12d, eax
add rbx, 4
jmp 0x180062bea
mov eax, dword [r14]
lea rcx, [rsp + 0x68]
mov r8d, 0x96
mov dword [rsp + 0x68], eax
mov rdx, rbx
call fcn.180045d60
mov r8d, 0xb6
mov dword [rsp + 0x78], eax
lea rdx, [rsp + 0x58]
mov dword [rsp + 0x58], esi
lea rcx, [rsp + 0x78]
call fcn.180035700
mov esi, eax
lea rcx, [rbp - 0x28]
mov eax, dword [r14]
add rbx, 4
mov rdx, rbx
mov dword [rbp - 0x28], eax
mov r8d, 0x96
call fcn.180045d60
mov dword [rsp + 0x58], eax
lea rdx, [rsp + 0x68]
mov eax, dword [rbp - 0x70]
lea rcx, [rsp + 0x58]
mov r8d, 0xb6
mov dword [rsp + 0x68], eax
call fcn.180035700
mov dword [rbp - 0x70], eax
jmp 0x180062bea
mov eax, dword [r14]
lea rcx, [rbp - 0x20]
mov r8d, 0x96
mov dword [rbp - 0x20], eax
mov rdx, rbx
call fcn.180045d60
mov r8d, 0xb6
mov dword [rsp + 0x58], eax
lea rdx, [rsp + 0x68]
mov dword [rsp + 0x68], r13d
lea rcx, [rsp + 0x58]
call fcn.180035700
mov r13d, eax
add edi, 0x53
cmp edi, 0x2a8
jb 0x180062ad0
mov dword [rsp + 0x58], esi
mov dword [rsp + 0x78], r12d
cmp rbx, qword [rbp + 0x10]
jbe 0x180062ac0
mov r12, qword [rbp + 0x128]
mov esi, dword [rsp + 0x60]
mov r15d, dword [rsp + 0x78]
mov rax, qword [rbp - 0x78]
jmp 0x180062c4f
cmp esi, 0x78c
je 0x180062c39
cmp esi, 0x968
jne 0x180062c4f
mov dword [r12 + 0x14], r15d
jmp 0x180062c4f
mov ecx, dword [rsp + 0x58]
mov dword [r12 + 0xc], ecx
mov ecx, dword [rbp - 0x70]
mov dword [r12 + 0x10], ecx
mov dword [r12 + 8], r13d
add esi, 0x1dc
mov dword [rsp + 0x60], esi
cmp esi, 0xb28
jbe 0x180062a63
mov r15, qword [rbp - 0x50]
mov rcx, qword [rbp - 0x58]
cmp rbx, rcx
jae 0x180062c9e
mov rax, rcx
lea rdx, [rbp - 0x78]
sub rax, rbx
lea rcx, [r12 + 0x18]
mov r9d, 0x55
mov qword [rbp - 0x78], rax
mov r8, rbx
call fcn.18005d0f0
mov rax, qword [rbp - 0x58]
sub eax, ebx
mov dword [r12 + 0x28], eax
mov rsi, qword [rbp + 0x110]
mov edi, dword [rbp - 0x80]
movsd xmm1, qword [rbp - 0x60]
movups xmm2, xmmword [rbp]
mov r8d, dword [rsp + 0x70]
mov r10d, 0x4d
movabs r9, 0x4c4b4a49484746
lea edx, [r10 + 2]
mov eax, dword [rsp + 0x50]
lea rcx, [0x180000000]
inc r8d
inc edi
mov dword [rsp + 0x70], r8d
mov r11d, 0
mov dword [rbp - 0x80], edi
cmp r8d, eax
jb 0x180062825
mov r8d, dword [rbp + 0x120]
lea eax, [r8 - 0xc]
cmp r8d, eax
jbe case.0x18006283f.16
mov r9, qword [0x180070508]
lea r12d, [r8 - 0x73]
mov rdi, qword [rbp - 0x48]
mov r13d, 0xc
mov rbx, qword [rbp - 0x48]
movabs rdx, 0xaaaaaaaaaaaaaaab
mov r14d, dword [rbp + 0x120]
mov esi, dword [rbp + 0x120]
mov r15d, dword [rbp + 0x120]
lea r8d, [r13 + 0x44]
mov qword [rbp - 0x58], r13
cmp r12d, 0xb
ja case.default.0x180062d60
mov ecx, dword [rcx + r12*4 + 0x63430]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
xor r9d, r9d
mov qword [rsp + 0x20], r11
xor edx, edx
lea rcx, [rbp + 0xa0]
mov r8d, 0x92
call fcn.18005ca40
mov edx, 3
lea r9, [rsp + 0x68]
mov r8d, 0x37
movups xmm0, xmmword [rax + 0x10]
movsd xmm1, qword [rax + 0x20]
movups xmm2, xmmword [rax]
mov rax, qword [rbp + 0x138]
movups xmmword [rbp + 0x30], xmm0
movsd qword [rbp + 0x40], xmm1
mov ecx, dword [rax]
movd eax, xmm2
mov dword [rsp + 0x68], ecx
cmp ecx, eax
mov eax, 0
mov qword [rbp - 0x78], rax
lea rcx, [rbp + 0x20]
cmovge edx, eax
mov rax, qword [rbp + 0x140]
mov dword [rbp - 0x18], edx
lea rdx, [rbp - 0x60]
mov rax, qword [rax]
mov qword [rbp - 0x60], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x20], rax
call fcn.180058a90
movups xmm0, xmmword [rbp + 0x30]
movups xmm2, xmmword [rbp + 0x20]
movsd xmm1, qword [rbp + 0x40]
movups xmmword [rbp + 0x58], xmm0
mov dword [rbp + 0x64], 1
movups xmmword [rbp], xmm2
movsd qword [rbp - 0x60], xmm1
jmp 0x180062cb1
mov eax, dword [rbp - 0x18]
lea r9, [rbp + 0x18]
movups xmm0, xmmword [rbp + 0x58]
mov dword [rbp - 0x10], eax
lea r8, [rbp - 0x48]
mov rax, qword [rbp + 0x140]
mov rdx, r14
mov rcx, r12
movaps xmmword [rbp + 0x70], xmm2
movaps xmmword [rbp + 0x80], xmm0
movsd qword [rbp + 0x90], xmm1
mov rax, qword [rax]
mov qword [rbp - 0x48], rax
mov rax, qword [rsi]
mov qword [rbp + 0x18], rax
lea rax, [rbp - 0x10]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x70]
mov qword [rsp + 0x38], rax
mov rax, qword [rbp + 0x130]
mov dword [rsp + 0x30], 2
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r11
call fcn.180024510
mov qword [rbp - 8], rax
jmp 0x180062ca8
mov dword [rbp - 8], r11d
jmp case.0x18006283f.3
mov word [0x1800704ce], dx
jmp case.0x18006283f.3
mov rcx, qword [rbp + 0x130]
mov rbx, rcx
add rcx, qword [rsi]
mov qword [rbp - 0x58], rcx
jmp case.0x18006283f.3
mov eax, dword [rsi]
mov ecx, r11d
add dword [r12], eax
mov eax, r11d
cmp dword [r12], 0x10
setae cl
cmp qword [rsi], 0x10
setae al
or ecx, eax
mov eax, dword [r12 + 0x28]
or dword [r12 + 4], ecx
add rax, qword [rsi]
cmp rax, 0x10
jae case.0x18006283f.3
mov edi, 0xe
nop dword [rax]
cmp edi, 0xe
je 0x180062f03
cmp edi, 0x2bc
je case.0x18006283f.16
jmp 0x180062f3a
mov ecx, dword [r12 + 0x28]
lea rdx, [rbp - 0x78]
mov rax, qword [rsi]
add rcx, 0x18
mov r8, qword [rbp + 0x130]
add rcx, r12
mov r9d, 0x55
mov qword [rbp - 0x78], rax
call fcn.18005d0f0
mov eax, dword [rsi]
add dword [r12 + 0x28], eax
mov dword [rbp - 8], 0
add edi, 0x2ae
cmp edi, 0x55c
jbe 0x180062ef0
jmp 0x180062ca5
mov eax, 0x4e
mov word [0x1800704cc], r10w
mov word [0x1800704cd], ax
jmp case.0x18006283f.3
movzx eax, word [0x18006a0e0]
lea rcx, [0x1800704c0]
mov word [0x1800704da], ax
dec rcx
movzx eax, byte [0x18006a0e2]
mov byte [0x1800704dc], al
nop dword [rax + rax]
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x180062f90
mov eax, dword [str.cdefg]
mov dword [rcx], eax
movzx eax, word [0x18006a0e8]
mov word [rcx + 4], ax
jmp case.default.0x180062d60
movzx eax, word [0x18006a0ec]
lea rdx, [0x1800693fc]
mov word [0x1800704fd], ax
lea rcx, [0x1800704ff]
movzx eax, byte [0x18006a0ee]
mov r8d, 2
mov byte [0x1800704ff], al
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
lea r9, [0x1800704c0]
mov qword [0x180070508], r9
jmp case.default.0x180062d60
mov r8d, 3
lea rdx, [0x18006a0f0]
lea rcx, [0x1800704c0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
mov r9, qword [0x180070508]
mov eax, 0x79
mov word [0x1800704f2], ax
jmp case.default.0x180062d60
mov eax, dword [str.WXYZ]
mov dword [0x1800704d6], eax
movzx eax, byte [0x18006a0f8]
mov byte [0x1800704da], al
jmp case.default.0x180062d60
mov eax, dword [str.hijk]
mov dword [0x1800704e1], eax
movzx eax, byte [0x18006a100]
mov byte [0x1800704e5], al
jmp case.default.0x180062d60
mov r8d, 0xa
mov dword [0x1800704f3], 0x31307a
lea rdx, [0x1800704f6]
mov ecx, 0x5ba0
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__ultoa]
mov r8d, 0xa
lea rdx, [0x1800704fb]
lea ecx, [r8 + 0x44]
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__ltoa]
mov r9, qword [0x180070508]
jmp case.default.0x180062d60
lea rcx, [0x1800704c0]
dec rcx
nop word [rax + rax]
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x1800630c0
movzx eax, word [0x180067778]
mov word [rcx], ax
movzx eax, byte [0x18006777a]
mov byte [rcx + 2], al
movzx eax, word [0x18006a104]
mov dword [0x1800704ea], 0x737271
mov word [0x1800704ed], ax
movzx eax, byte [0x18006a106]
mov byte [0x1800704ef], al
jmp case.default.0x180062d60
lea rcx, [0x1800704c0]
dec rcx
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x180063112
mov eax, dword [0x18006a108]
mov dword [rcx], eax
jmp case.default.0x180062d60
mov rax, qword [rbp + 0x128]
xor r8d, r8d
mov rcx, qword [rax + 0x10]
mov rax, rdx
add rcx, 2
mul rcx
mov rcx, qword [rbp + 0x130]
shr rdx, 1
shl rdx, 2
call fcn.180063830
mov rax, qword [rbp + 0x128]
mov rdi, rax
cmp qword [rax + 0x18], 0x10
jb 0x180063168
mov rdi, qword [rax]
mov r9, qword [0x180070508]
jmp case.default.0x180062d60
mov eax, dword [str.QRSTUV]
mov word [0x1800704cf], r8w
mov dword [0x1800704d0], eax
movzx eax, word [0x18006a110]
mov word [0x1800704d4], ax
movzx eax, byte [0x18006a112]
mov byte [0x1800704d6], al
jmp case.default.0x180062d60
mov rax, qword [rbp + 0x130]
mov rbx, rax
cmp qword [rax + 0x18], 0x10
jb 0x1800631bc
mov rbx, qword [rax]
mov rcx, qword [rbp + 0x128]
mov rax, rdx
mul qword [rcx + 0x10]
shr rdx, 1
lea rax, [rdx + rdx*2]
mov qword [rbp - 0x78], rax
jmp case.default.0x180062d60
mov rax, qword [rbp - 0x78]
mov r10, r11
test rax, rax
je 0x18006329c
lea rcx, [rax - 1]
mov rax, rdx
mul rcx
shr rdx, 1
inc rdx
lea r10, [rdx + rdx*2]
nop
mov r8d, 0xb1
cmp r8d, 0xb1
je 0x18006326d
cmp r8d, 0x8622
je 0x180063252
cmp r8d, 0x10b93
jne 0x18006327e
movzx eax, byte [rdi + 2]
movzx ecx, byte [rdi + 1]
shr eax, 6
and ecx, 0xf
lea eax, [rax + rcx*4]
movzx eax, byte [rax + r9]
mov byte [rbx], al
movzx eax, byte [rdi + 2]
and eax, 0x3f
movzx eax, byte [rax + r9]
mov byte [rbx + 1], al
add rbx, 2
add rdi, 3
jmp 0x18006327e
movzx ecx, byte [rdi]
movzx eax, byte [rdi + 1]
and ecx, 3
shl ecx, 4
shr eax, 4
add ecx, eax
movzx ecx, byte [rcx + r9]
mov byte [rbx], cl
jmp 0x18006327b
movzx eax, byte [rdi]
shr rax, 2
movzx eax, byte [rax + r9]
mov byte [rbx], al
inc rbx
add r8d, 0x8571
cmp r8d, 0x19053
jbe 0x180063206
sub rdx, 1
jne 0x180063200
mov rax, qword [rbp + 0x128]
cmp r10, qword [rax + 0x10]
jae case.default.0x180062d60
mov edx, 0x121
mov r13, rax
nop word [rax + rax]
cmp edx, 0x121
je 0x180063349
cmp edx, 0xc8f2
je 0x18006331d
cmp edx, 0x190c3
je 0x1800632f0
cmp edx, 0x25894
jne 0x180063363
mov byte [rbx], 0x3d
inc rbx
jmp 0x180063363
lea rax, [r10 + 1]
cmp rax, qword [r13 + 0x10]
jae 0x180063314
mov eax, r15d
mov ecx, esi
shr eax, 6
and ecx, 0xf
lea eax, [rax + rcx*4]
movzx eax, byte [rax + r9]
mov byte [rbx], al
inc rbx
jmp 0x180063363
mov al, 0x3d
mov byte [rbx], al
inc rbx
jmp 0x180063363
mov ecx, r14d
mov eax, r14d
shr rax, 2
and ecx, 3
shl ecx, 4
movzx eax, byte [rax + r9]
mov byte [rbx], al
mov eax, esi
shr eax, 4
add ecx, eax
movzx ecx, byte [rcx + r9]
mov byte [rbx + 1], cl
add rbx, 2
jmp 0x180063363
movzx r14d, byte [rdi]
lea rax, [r10 + 1]
cmp rax, qword [r13 + 0x10]
jae 0x18006335d
movzx esi, byte [rdi + 1]
jmp 0x180063360
mov esi, r11d
mov r15d, r11d
add edx, 0xc7d1
cmp edx, 0x31f44
jbe 0x1800632c0
mov r13, qword [rbp - 0x58]
mov r8d, 0x50
lea rcx, [0x180000000]
dec r12d
movabs rdx, 0xaaaaaaaaaaaaaaab
sub r13, 1
mov qword [rbp - 0x58], r13
lea r11d, [r8 - 0x50]
jne 0x180062d44
mov rax, qword [rbp - 8]
mov rbx, qword [rsp + 0x218]
add rsp, 0x1d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret