Function at 0x18006b160
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov dword [rsp + 8], ecx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x258]
sub rsp, 0x358
mov r11, rdx
mov r10, r8
mov edx, ecx
add ecx, 0x733
mov dword [rsp + 0x60], ecx
cmp edx, ecx
jae 0x18006bdf6
mov rdi, qword [rbp - 0x78]
xor eax, eax
mov ebx, dword [rbp + 0x2a0]
mov r13d, dword [rsp + 0x6c]
mov r12d, dword [rbp + 0x2a0]
mov r14, qword [rbp - 0x78]
mov r15d, dword [rbp + 0x2a0]
mov esi, dword [rbp + 0x2a0]
mov dword [rbp - 0x7c], 0x30
lea r8, [0x180000000]
cmp edx, 0x1c2
ja 0x18006bc9f
je 0x18006bc93
cmp edx, 0x100
ja 0x18006b389
je 0x18006b37d
mov eax, edx
sub eax, 0x3e
je 0x18006b348
sub eax, 0x61
je 0x18006b33d
sub eax, 0x17
je 0x18006b243
cmp eax, 0x41
jne 0x18006bdd6
mov eax, dword [r9]
shr eax, 0xb
and eax, 1
mov dword [rbp - 0x80], eax
mov rax, qword [rbp + 0x2c0]
mov rdi, qword [rax]
inc rdi
jmp 0x18006bdd6
lea rax, [rsp + 0x58]
mov byte [rsp + 0x50], 0
lea r9, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov r8d, 0xa0
mov dword [rbp - 0x60], 4
lea rdx, [rbp - 0x60]
mov dword [rsp + 0x58], 5
xor ecx, ecx
call fcn.180074b00
xor ecx, ecx
mov qword [rbp - 0x58], rax
mov qword [rsp + 0x40], rcx
lea r8, [rsp + 0x50]
mov qword [rsp + 0x38], rax
mov edx, 0x80
mov word [rsp + 0x50], dx
lea rax, [rsp + 0x78]
lea rdx, [0x18005d930]
mov dword [rsp + 0x30], 0x3d
mov qword [rsp + 0x28], rcx
xor r9d, r9d
mov qword [rsp + 0x78], rdx
lea rdx, [rsp + 0x58]
mov dword [rsp + 0x58], ecx
lea rcx, str.PeekL
mov qword [rsp + 0x20], rax
call fcn.180053e40
mov eax, 0x80
mov qword [rsp + 0x40], 0
mov word [rsp + 0x50], ax
lea rcx, str.PeekM
lea rax, [0x18005dc40]
mov dword [rsp + 0x58], 1
mov qword [rsp + 0x78], rax
mov rax, qword [rbp - 0x58]
mov qword [rsp + 0x38], rax
lea rax, [0x1800dcbc0]
mov dword [rsp + 0x30], 0x3d
lea rdx, [rsp + 0x58]
mov qword [rsp + 0x28], rax
lea r8, [rsp + 0x50]
lea rax, [rsp + 0x78]
xor r9d, r9d
mov qword [rsp + 0x20], rax
call fcn.180053e40
jmp 0x18006bdbe
mov word [rbp - 0x67], 0x57
jmp 0x18006bdd6
mov r8d, 5
lea rdx, [0x1800bbc80]
lea rcx, [rbp - 0x70]
call fcn.18008c750
mov r8d, 4
mov byte [rbp - 0x6b], 0
lea rdx, [0x1800bbcad]
lea rcx, [rbp - 0x70]
call fcn.18008c510
jmp 0x18006bdbe
mov dword [rbp - 0x50], 0x730077
jmp 0x18006bdd8
mov eax, edx
sub eax, 0x117
je 0x18006bbe9
sub eax, 0x41
je 0x18006bae6
sub eax, 9
je 0x18006bad8
cmp eax, 0x58
jne 0x18006bdd6
test ebx, ebx
jne 0x18006b3cb
mov rax, qword [rbp + 0x2c0]
mov dword [r10], 1
mov qword [rax], rdi
jmp 0x18006bdd6
lea eax, [rbx - 0x30]
cmp eax, 0x4a
ja 0x18006bac9
movsxd rax, ebx
movsx r9d, word [r8 + rax*2 + 0xb86e0]
test r9d, r9d
je 0x18006b3fa
mov rax, qword [rbp + 0x2c0]
mov ebx, r9d
mov qword [rax], rdi
jmp 0x18006bdd6
mov ecx, 0x1d
nop
mov eax, ecx
sub eax, 0x1d
je 0x18006baa8
sub eax, 0x77
je 0x18006b432
sub eax, 0x77
je case.0x18006b4a3.0
cmp eax, 0x77
jne 0x18006bab0
mov edx, 0x1b9
mov dword [rbp + 0x2a0], edx
jmp 0x18006bab6
lea eax, [rbx - 0x30]
cmp eax, 0x48
ja case.0x18006b454.55
cdqe
movzx eax, byte [r8 + rax + 0x6be30]
mov ecx, dword [r8 + rax*4 + 0x6be10]
add rcx, r8
jmp rcx
mov dword [r10], 0x25
mov ecx, 0x10b
lea r8, [0x180000000]
jmp 0x18006bab0
mov edx, 5
mov r8d, 0x93
nop dword [rax]
cmp edx, 5
ja case.default.0x18006b4a3
mov eax, edx
lea rcx, [0x180000000]
mov ecx, dword [rcx + rax*4 + 0x6be7c]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
test ebx, ebx
je 0x18006b6ce
test r13d, r13d
je 0x18006b4c2
mov eax, dword [r11]
cmp ebx, eax
jg 0x18006b6b6
sub eax, ebx
lea ebx, [rax + 1]
mov eax, 0xffffffe3
sub eax, ebx
mov ebx, eax
jmp case.default.0x18006b4a3
movzx eax, byte [rdi + 1]
lea r11, [0x180000000]
lea rcx, [rdi + 1]
xor ebx, ebx
test byte [rax + r11 + 0xb9230], 4
mov r11, qword [rbp + 0x2a8]
je case.default.0x18006b4a3
lea r10, [0x180000000]
nop
mov rdi, rcx
lea ecx, [rbx - 6]
lea ecx, [rbx + rcx*4]
movzx eax, byte [rdi]
lea ebx, [rax + rcx*2]
movzx eax, byte [rdi + 1]
lea rcx, [rdi + 1]
test byte [rax + r10 + 0xb9230], 4
jne 0x18006b500
mov r10, qword [rbp + 0x2b0]
test ebx, ebx
jns case.default.0x18006b4a3
mov dword [r10], 0x3d
mov ecx, 0x10b
lea r8, [0x180000000]
jmp 0x18006bab0
movzx eax, byte [rdi + 1]
cmp al, 0x3c
je 0x18006b559
cmp al, 0x27
jne case.default.0x18006b4a3
mov ebx, 0xffffffe5
mov ecx, 0x10b
lea r8, [0x180000000]
jmp 0x18006bab0
test r12d, r12d
je case.default.0x18006b4a3
inc rdi
cmp byte [rdi], 0x7d
je case.default.0x18006b4a3
mov dword [r10], 0x39
mov ecx, 0x10b
lea r8, [0x180000000]
jmp 0x18006bab0
cmp byte [rdi + 1], 0x7b
jne 0x18006b62e
mov ecx, 0xe
nop dword [rax + rax]
mov eax, ecx
sub eax, 0xe
je 0x18006b5c6
sub eax, 0x55
je 0x18006b604
cmp eax, 0x55
jne 0x18006b61f
inc rdi
jmp 0x18006b61f
movzx eax, byte [rdi + 2]
lea r14, [rdi + 2]
test al, al
je 0x18006b61f
cmp al, 0x7d
je 0x18006b61f
cmp al, 0x2d
je 0x18006b5f6
lea r11, [0x180000000]
movzx eax, al
test byte [rax + r11 + 0xb9230], 4
mov r11, qword [rbp + 0x2a8]
je 0x18006b604
movzx eax, byte [r14 + 1]
inc r14
test al, al
jne 0x18006b5d2
jmp 0x18006b61f
movzx eax, byte [r14]
mov ecx, 0x63
test al, al
je 0x18006b619
cmp al, 0x7d
jne 0x18006b6e6
mov r12d, 1
add ecx, 0x55
cmp ecx, 0x10d
jb 0x18006b5b0
xor ecx, ecx
jmp 0x18006b633
xor ecx, ecx
mov r12d, ecx
cmp byte [rdi + 1], 0x2d
jne 0x18006b649
mov r13d, 1
inc rdi
mov dword [rsp + 0x6c], r13d
jmp case.default.0x18006b4a3
mov r13d, ecx
mov dword [rsp + 0x6c], ecx
dec r8d
dec edx
cmp r8d, 0x8d
ja 0x18006b480
lea r8, [0x180000000]
mov rax, qword [rbp + 0x2c8]
cmp dword [rax], 0
jne 0x18006b752
mov edx, 0xd6
nop
mov eax, edx
sub eax, 0xd6
je 0x18006b73c
sub eax, 6
je 0x18006b6fc
cmp eax, 6
jne 0x18006b743
cmp ebx, 0xa
jl 0x18006b777
cmp ebx, dword [r11]
jle 0x18006b777
mov rdi, qword [rbp - 0x38]
jmp 0x18006b743
mov dword [r10], 0xf
mov ecx, 0x10b
lea r8, [0x180000000]
jmp 0x18006bab0
mov dword [r10], 0x3a
mov ecx, 0x10b
lea r8, [0x180000000]
jmp 0x18006bab0
mov ebx, 0xffffffe4
mov ecx, 0x10b
lea r8, [0x180000000]
jmp 0x18006bab0
movzx eax, byte [rdi + 1]
lea rcx, [rdi + 1]
test byte [rax + r8 + 0xb9230], 4
je 0x18006b732
nop
mov rdi, rcx
lea ecx, [rbx - 6]
lea ecx, [rbx + rcx*4]
movzx eax, byte [rdi]
lea ebx, [rax + rcx*2]
movzx eax, byte [rdi + 1]
lea rcx, [rdi + 1]
test byte [rax + r8 + 0xb9230], 4
jne 0x18006b710
test ebx, ebx
js 0x18006b531
jmp 0x18006b743
mov qword [rbp - 0x38], rdi
sub ebx, 0x30
add edx, 6
cmp edx, 0xe8
jb 0x18006b680
movzx ebx, byte [rdi]
cmp ebx, 0x38
jb case.0x18006b454.48
mov ecx, 0x1e
nop
mov eax, ecx
sub eax, 0x1e
je 0x18006b795
sub eax, 1
je 0x18006b791
cmp eax, 1
je case.0x18006b4a3.0
jmp 0x18006b798
mov eax, 0xffffffe3
sub eax, ebx
mov ebx, eax
mov ecx, 0x10b
lea r8, [0x180000000]
jmp 0x18006bab0
xor ebx, ebx
jmp 0x18006b798
dec rdi
inc ecx
cmp ecx, 0x21
jb 0x18006b760
mov r8d, 0x64
cmp r8d, 0x64
je 0x18006b7ba
cmp r8d, 0x12b
je case.0x18006b4a3.0
jmp 0x18006b805
sub ebx, 0x30
cmp r9d, 2
jge 0x18006b7ed
nop dword [rax]
nop word [rax + rax]
movzx edx, byte [rdi + 1]
inc r9d
lea eax, [rdx - 0x30]
cmp al, 7
ja 0x18006b7f0
add ebx, 0xfffffffa
inc rdi
lea ebx, [rdx + rbx*8]
cmp r9d, 2
jl 0x18006b7d0
inc r9d
cmp dword [rbp - 0x80], 0
jne 0x18006b805
cmp ebx, 0xff
jle 0x18006b805
mov dword [r10], 0x33
add r8d, 0xc7
cmp r8d, 0x1f2
jb 0x18006b7a5
cmp byte [rdi + 1], 0x7b
jne 0x18006b8e1
movzx ecx, byte [rdi + 2]
lea rdx, [rdi + 2]
xor eax, eax
mov r8d, eax
mov ebx, eax
lea rax, [0x180000000]
test byte [rcx + rax + 0xb9230], 8
je 0x18006b892
nop
inc rdx
movzx eax, cl
test ebx, ebx
jne 0x18006b84f
cmp eax, 0x30
je 0x18006b86e
inc r8d
lea ecx, [rax - 0x20]
cmp eax, 0x61
cmovb ecx, eax
mov eax, 0x37
cmp ecx, 0x41
cmovl eax, dword [rbp - 0x7c]
shl ebx, 4
sub ebx, eax
add ebx, ecx
movzx eax, byte [rdx]
movzx ecx, al
mov qword [rsp + 0x78], rcx
lea rcx, [0x180000000]
test byte [rax + rcx + 0xb9230], 8
mov rcx, qword [rsp + 0x78]
jne 0x18006b840
movzx ecx, al
cmp cl, 0x7d
jne 0x18006b8e1
mov ecx, 0x3f
nop dword [rax]
mov eax, ecx
sub eax, 0x3f
je 0x18006b8b2
cmp eax, 0x54
je case.0x18006b4a3.0
jmp 0x18006b8d6
test ebx, ebx
js 0x18006b8cc
cmp dword [rbp - 0x80], 0
mov eax, 2
mov edi, 8
cmovne eax, edi
cmp r8d, eax
jle 0x18006b8d3
mov dword [r10], 0x22
mov rdi, rdx
add ecx, 0x54
cmp ecx, 0xe7
jb 0x18006b8a0
xor ebx, ebx
cmp r9d, 2
jge 0x18006b977
nop dword [rax]
movzx eax, byte [rdi + 1]
lea rcx, [0x180000000]
inc r9d
test byte [rax + rcx + 0xb9230], 8
je case.0x18006b4a3.0
mov ecx, 0x6a
lea r13d, [rcx - 0x3a]
cmp ecx, 0x6a
je 0x18006b952
cmp ecx, 0xfe
je 0x18006b941
cmp ecx, 0x192
jne 0x18006b95a
cmp r15d, 0x41
mov eax, 0x37
cmovl eax, r13d
shl ebx, 4
sub ebx, eax
add ebx, r15d
jmp 0x18006b95a
cmp r15d, 0x61
lea eax, [r15 - 0x20]
cmovl eax, r15d
mov r15d, eax
jmp 0x18006b95a
movzx r15d, byte [rdi + 1]
inc rdi
add ecx, 0x94
cmp ecx, 0x226
jb 0x18006b915
mov r13d, dword [rsp + 0x6c]
cmp r9d, 2
jl 0x18006b8f0
inc r9d
mov ecx, 0x10b
lea r8, [0x180000000]
jmp 0x18006bab0
mov edx, 0x9c
mov eax, edx
sub eax, 0x9c
je 0x18006b9a4
cmp eax, 0x78
je case.0x18006b4a3.0
jmp 0x18006ba14
xor ebx, ebx
cmp r9d, 4
jge 0x18006ba11
nop dword [rax]
movzx eax, byte [rdi + 1]
inc r9d
test byte [rax + r8 + 0xb9230], 8
je 0x18006ba14
mov eax, 0x9b
cmp eax, 0x9b
je 0x18006b9f8
cmp eax, 0x4164
jne 0x18006b9ff
cmp esi, 0x61
lea ecx, [rsi - 0x20]
cmovl ecx, esi
mov esi, ecx
mov ecx, 0x37
cmp esi, 0x41
cmovl ecx, dword [rbp - 0x7c]
shl ebx, 4
sub ebx, ecx
add ebx, esi
movzx ebx, bl
jmp 0x18006b9ff
movzx esi, byte [rdi + 1]
inc rdi
add eax, 0x40c9
cmp eax, 0x8192
jbe 0x18006b9c7
cmp r9d, 4
jl 0x18006b9b0
inc r9d
add edx, 0x78
cmp edx, 0x18c
jb 0x18006b990
mov ecx, 0x90
nop dword [rax + rax]
mov eax, ecx
mov edx, ebx
sub eax, 0x8f
je 0x18006ba8b
cmp eax, 1
jne 0x18006ba4b
movzx ebx, byte [rdi + 1]
inc rdi
test ebx, ebx
je 0x18006ba76
dec ecx
cmp ecx, 0x8e
ja 0x18006ba30
mov rax, qword [rbp + 0x2b8]
test byte [rax], 0x40
je case.0x18006b4a3.0
mov dword [r10], 3
mov ecx, 0x10b
lea r8, [0x180000000]
jmp 0x18006bab0
mov dword [r10], 2
mov ecx, 0x10b
lea r8, [0x180000000]
jmp 0x18006bab0
lea eax, [rbx - 0x61]
add ebx, 0xffffffe0
cmp eax, 0x19
cmova ebx, edx
xor ebx, 0x40
mov ecx, 0x10b
lea r8, [0x180000000]
jmp 0x18006bab0
mov rax, qword [rbp - 0x78]
mov qword [rbp - 0x38], rax
mov edx, dword [rbp + 0x2a0]
add ecx, 0x77
cmp ecx, 0x1f9
jb 0x18006b400
mov ecx, dword [rsp + 0x60]
mov rax, qword [rbp + 0x2c0]
mov qword [rax], rdi
jmp 0x18006bdd6
mov eax, 0x32
mov word [rbp - 0x4c], ax
jmp 0x18006bdd6
movzx ebx, byte [rdi]
inc rdi
cmp dword [rbp - 0x80], 0
je 0x18006bbe1
cmp ebx, 0xc0
jb 0x18006bbe1
mov r13d, dword [rsp + 0x64]
lea r11, [0x180000000]
mov r10d, dword [rsp + 0x68]
mov r8d, 0xe1
nop dword [rax]
cmp r8d, 0xe1
je 0x18006bb8a
cmp r8d, 0x181
je 0x18006bb78
cmp r8d, 0x221
jne 0x18006bbb0
mov edx, dword [rsp + 0x64]
test edx, edx
jle 0x18006bb6d
mov ecx, dword [rsp + 0x68]
nop word [rax + rax]
movzx eax, byte [rdi]
sub ecx, 6
and eax, 0x3f
dec edx
shl eax, cl
inc rdi
or ebx, eax
test edx, edx
jg 0x18006bb50
mov dword [rsp + 0x68], ecx
mov r10d, ecx
dec edx
mov dword [rsp + 0x64], edx
mov r13d, edx
jmp 0x18006bbb0
movsxd rax, r13d
mov ecx, r10d
and ebx, dword [r11 + rax*4 + 0xb1c78]
shl ebx, cl
jmp 0x18006bbb0
mov eax, ebx
and eax, 0x3f
movzx r13d, byte [rax + r11 + 0xb1c90]
mov dword [rsp + 0x64], r13d
lea r10d, [r13*2]
add r10d, r13d
add r10d, r10d
mov dword [rsp + 0x68], r10d
add r8d, 0xa0
cmp r8d, 0x2c1
jb 0x18006bb20
mov r13d, dword [rsp + 0x6c]
mov r10, qword [rbp + 0x2b0]
mov r11, qword [rbp + 0x2a8]
mov edx, dword [rbp + 0x2a0]
mov ecx, dword [rsp + 0x60]
dec rdi
jmp 0x18006bdd6
mov qword [rsp + 0x40], 0
lea r8, [rsp + 0x50]
mov eax, 0x80
mov dword [rsp + 0x58], 2
mov word [rsp + 0x50], ax
lea rdx, [rsp + 0x58]
lea rax, [0x18005bcc0]
xor r9d, r9d
mov qword [rsp + 0x78], rax
lea rcx, str.PeekH1
mov rax, qword [rbp - 0x58]
mov qword [rsp + 0x38], rax
lea rax, [0x1800dcbc8]
mov dword [rsp + 0x30], 0x3d
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x78]
mov qword [rsp + 0x20], rax
call fcn.180053e40
mov eax, 0x80
mov qword [rsp + 0x40], 0
mov word [rsp + 0x50], ax
lea rcx, str.PeekH2
lea rax, [0x18005c9b0]
mov dword [rsp + 0x58], 3
mov qword [rsp + 0x78], rax
mov rax, qword [rbp - 0x58]
mov qword [rsp + 0x38], rax
lea rax, [0x1800dcbd0]
jmp 0x18006b30f
mov dword [rbp - 0x4a], 0x33005f
jmp 0x18006bdd8
cmp edx, 0x2e5
ja 0x18006bcfc
je 0x18006bcec
mov eax, edx
sub eax, 0x21a
je 0x18006bce3
sub eax, 9
je 0x18006bcd7
sub eax, 0x58
je 0x18006bdf6
cmp eax, 9
jne 0x18006bdd6
mov eax, 0x64
mov word [rbp - 0x42], ax
jmp 0x18006bdd6
mov dword [rbp - 0x46], 0x2e0032
jmp 0x18006bdd6
mov dword [rsp + 0x70], ebx
jmp 0x18006bdd6
mov dword [rbp - 0x40], 0x6c006c
mov word [rbp - 0x3c], ax
jmp 0x18006bdd8
mov eax, edx
sub eax, 0x346
je 0x18006bd99
sub eax, 0x61
je 0x18006bd43
sub eax, 0x61
je 0x18006bd21
cmp eax, 0x61
je 0x18006bdf6
jmp 0x18006bdd6
mov rdx, qword [rbp + 0x2c0]
xor r8d, r8d
lea ecx, [r8 + 0x50]
call fcn.18003bb50
test al, al
je 0x18006bdf1
mov byte [rsp + 0x70], 1
jmp 0x18006bdbe
mov eax, dword [r11]
lea r9, [rsp + 0x58]
mov dword [rsp + 0x58], eax
lea r8, [rbp - 0x30]
mov eax, dword [r10]
lea rdx, [rsp + 0x50]
mov ecx, 0x39
mov dword [rsp + 0x50], eax
call fcn.180024160
test al, al
je 0x18006bdf1
xor eax, eax
mov dword [rsp + 0x28], 1
lea r9, [rbp - 0x30]
mov dword [rsp + 0x20], eax
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [rbp - 0x78]
mov rcx, qword [rbp + 0x2c0]
mov qword [rcx], rax
jmp 0x18006bdbe
xor eax, eax
lea r8, [rbp - 0x50]
mov qword [rsp + 0x28], rax
lea rdx, [rbp - 0x70]
xor r9d, r9d
mov dword [rsp + 0x20], 0x3c
xor ecx, ecx
call fcn.180038e80
mov qword [rbp - 0x78], rax
mov r10, qword [rbp + 0x2b0]
mov r11, qword [rbp + 0x2a8]
mov edx, dword [rbp + 0x2a0]
mov ecx, dword [rsp + 0x60]
xor eax, eax
add edx, 0x61
mov dword [rbp + 0x2a0], edx
cmp edx, ecx
jae 0x18006bdf6
mov r9, qword [rbp + 0x2b8]
jmp 0x18006b1d8
mov byte [rsp + 0x70], 0
mov eax, dword [rsp + 0x70]
add rsp, 0x358
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret