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

Disassembly:
mov qword [rsp + 8], rcx
nop
sub rsp, 8
mov qword [rsp], rbp
push rbx
push rsi
mov rsi, rsi
nop
sub rsp, 8
mov qword [rsp], rdi
push r12
mov r15, r15
nop
mov qword [rsp - 8], r13
sub rsp, 8
push r14
mov dword [rsp - 0x14], 0x12c95a57
nop
sub rsp, 8
mov qword [rsp], r15
lea rbp, [rsp - 0x138]
sub rsp, 0x238
mov dword [rsp - 0x44], 0x4b35eb3a
mov r8, rdx
xchg rdi, rcx
mov rcx, rdi
xchg rcx, rdi
xor edx, edx
mov dword [rsp - 0x3c], 0x7594e9c4
lea ebx, [rdx + 1]
mov ecx, edx
mov eax, 0x2f3efa15
xor eax, 0x3030e6ca
xor eax, 0x61cea660
sub eax, 0x4321508a
rol eax, cl
lea rcx, [0x14000b710]
mov rbp, rbp
xor al, byte [rdx + rcx]
mov byte [rsp + rdx + 0x10], al
add rdx, rbx
xchg rsi, rsi
cmp rdx, 0x211
jb 0x1400819e6
xor dl, dl
mov dword [rsp - 0x2c], ebx
lea r11, [rsp + 0x10]
xor r12b, r12b
mov byte [rsp + 4], dl
mov dword [rsp - 0x30], ebp
xor eax, eax
mov dword [rsp], r12d
xchg rdx, rdi
mov r9, rdx
xchg rdx, rdi
mov r10b, 0x62
xor r10b, 0x2e
sub r10b, 0x30
add r10b, 0x46
xor r10b, 0x72
xchg rdi, r8
mov r8, rdi
xchg rdi, r8
lea ecx, [rax + 0x25]
mov dword [rsp - 0x14], 0x48dbdcf7
rep stosb byte [rdi], al
lea esi, [rax + 4]
movzx edi, byte [r9]
add r9, rbx
mov dword [rsp - 0x34], esp
mov ecx, edi
cmp edi, 0x65
ja 0x140081aec
mov dword [rsp - 0x24], esi
nop
sub ecx, 0xac615287
add ecx, 0xac615261
cmp ecx, 0x3f
mov dword [rsp - 0x44], 0x4b1f6842
ja 0x140081b86
movabs rax, 0xc00000007fc51dc1
xor rax, 0x4ab5c9b5
xor rax, 0x5ab506a6
xor rax, 0x6e62d18e
sub rax, 0xa6025b
bt rax, rcx
mov dword [rsp - 0x24], esi
jae 0x140081b86
mov byte [r8 + 3], dil
mov al, 0x29
xor al, 0x1b
xor al, 0x54
sub al, 0x26
jmp 0x140081b77
sub ecx, 0x66
mov dword [rsp - 0x3c], edi
je 0x140081b69
sub ecx, ebx
je 0x140081b58
mov dword [rsp - 0x34], ebp
sub ecx, 0x89
je 0x140081b45
sub ecx, 2
je 0x140081b34
xchg rsi, rsi
cmp ecx, ebx
jne 0x140081b86
mov byte [r8 + 1], dil
mov al, sil
xchg r8, r8
jmp 0x140081b77
mov byte [r8 + 1], dil
mov al, 0x46
sub al, 7
add al, 0x3d
sub al, 0x7a
jmp 0x140081b77
mov byte [r8 + 2], dil
mov al, 0x38
add al, 0xb
add al, 0x28
xor al, 0x66
add al, 0x13
jmp 0x140081b77
mov byte [r8 + 5], dil
mov al, 0xf
xor al, 0x6f
sub al, 0x19
sub al, 0x37
jmp 0x140081b77
mov byte [r8 + 4], dil
mov al, 0x14
add al, 0x51
sub al, 0x25
add al, 3
sub al, 0x3b
or dl, al
add r10b, 0xff
xchg rbp, rbp
jne 0x140081a73
movzx eax, dl
mov ecx, ebx
movzx r10d, dl
mov dword [rsp - 0xc], 0x433e3268
shl r10d, 0xe
shl r10d, 7
shl r10d, 1
shl r10d, 1
test dl, dl
mov dword [r8 + 0x21], r10d
cmovne ecx, eax
mov dword [rsp - 0x38], esi
mov al, dil
and al, 0xf0
cmp al, 0x40
jne 0x140081c55
mov dword [rsp - 0x38], 0x49848a37
bts r10d, 0x1e
mov al, dil
shr al, 3
and al, bl
xchg r11, r11
mov dword [r8 + 0x21], r10d
mov byte [r8 + 7], al
je 0x140081c03
mov r9, r9
mov al, byte [r9]
and al, 0xf8
movzx r12d, r12b
cmp al, 0xb8
mov dword [rsp - 0x40], 0x23f5c3f6
cmove r12d, ebx
mov dword [rsp], r12d
mov al, dil
xchg r11, r11
shr al, 1
shr al, 1
and al, bl
mov byte [r8 + 8], al
mov dword [rsp - 0x2c], edx
mov al, dil
shr al, 1
and dil, bl
xchg rcx, rcx
and al, bl
mov byte [r8 + 0xa], dil
mov byte [r8 + 9], al
mov dil, byte [r9]
mov dword [rsp - 0x1c], ebp
add r9, rbx
mov al, dil
and al, 0xf0
cmp al, 0x40
xchg rdx, rdx
jne 0x140081c55
mov byte [rbp + 0x198], dil
mov sil, cl
jmp 0x140081cfe
mov byte [r8 + 0xb], dil
mov sil, cl
mov dword [rsp - 0x24], 0x54749cb8
cmp dil, 0xf
jne 0x140081c8a
mov dil, byte [r9]
lea r11, [rsp + 0x5a]
mov dword [rsp - 0x34], 0x40f9c1e6
mov byte [r8 + 0xc], dil
add r9, rbx
jmp 0x140081cc9
cmp dil, 0xa0
mov r8, r8
jb 0x140081cc9
cmp dil, 0xa3
ja 0x140081cc9
add r12b, bl
mov r11, r11
mov dword [rsp], r12d
test cl, 0x10
je 0x140081cc5
mov dword [rsp - 0x2c], 0x2b2a6e0c
or sil, 8
jmp 0x140081cc9
and sil, 0xf7
movzx edx, dil
mov eax, edx
xchg rsp, rsp
mov byte [rbp + 0x198], dil
shr rax, 2
and edx, 3
mov dword [rsp - 0x3c], esi
movzx eax, byte [rax + r11]
add rax, r11
mov r14b, byte [rdx + rax]
cmp r14b, 0xff
mov dword [rsp - 0x24], esi
jne 0x140081d37
or r10d, 0x3000
movzx eax, dil
mov dword [rsp - 0x1c], 0x2dfd63a9
and eax, 0xfffffffd
mov dword [r8 + 0x21], r10d
xor r14b, r14b
mov dword [rsp - 0x44], ebx
cmp al, 0x24
jne 0x140081d37
mov r14b, bl
mov rsi, rsi
mov r13b, dil
xor bl, bl
jmp 0x140081d71
xor bl, bl
mov rsi, rsi
mov r13b, dil
test r14b, r14b
jns 0x140081d71
movzx eax, r14b
mov dword [rsp - 0x40], 0x4244af20
and eax, 0x7f
movzx r14d, word [rax + r11]
movzx ebx, r14w
shr bx, 2
shr bx, 1
shr bx, 1
shr bx, 3
shr bx, 1
mov r15b, byte [r8 + 0xc]
mov r11d, r10d
mov dword [rsp - 0x34], 0x5810661b
test r15b, r15b
je 0x140081dc3
movzx edx, dil
mov eax, edx
xchg rsp, rsp
and edx, 3
shr rax, 1
shr rax, 1
movzx ecx, byte [rbp + rax + 0x4c]
mov rbp, rbp
lea rax, [rbp + 0x4c]
add rax, rdx
test byte [rax + rcx], sil
mov dword [rsp - 0x18], ecx
je 0x140081dc3
or r11d, 0x3000
mov dword [r8 + 0x21], r11d
test r14b, 1
mov r10, r10
je 0x140082410
or r11d, 1
mov dword [r8 + 0x21], r11d
mov rcx, rcx
mov edi, r11d
mov r12b, byte [r9]
mov dl, r12b
mov dword [rsp - 0x30], 0x2336f5e6
mov byte [r8 + 0xd], r12b
mov cl, r12b
shr dl, 5
shr dl, 1
and cl, 7
mov dword [rsp - 0xc], esi
shr r12b, 3
and r12b, 7
mov byte [rbp + 0x190], dl
mov rbx, rbx
mov byte [r8 + 0xe], dl
mov byte [rbp + 0x188], cl
mov byte [r8 + 0x10], cl
mov byte [r8 + 0xf], r12b
mov rbp, rbp
test bl, bl
je 0x140081e57
mov cl, r12b
movzx eax, bl
xchg r15, r15
shl eax, cl
mov cl, byte [rbp + 0x188]
test al, al
mov dword [rsp - 0x34], ebx
jns 0x140081e57
or edi, 0x3000
mov dword [r8 + 0x21], edi
mov rdi, rdi
mov r10b, byte [rbp + 0x198]
mov eax, edi
test r15b, r15b
xchg rsp, rsp
jne 0x140081eeb
cmp r10b, 0xd9
jb 0x140081eeb
xchg r13, r13
cmp r10b, 0xdf
ja 0x140081eeb
lea eax, [r10 + 0x27]
movzx r10d, al
mov r9, r9
cmp dl, 3
jne 0x140081eb7
movzx eax, r12b
lea rdx, [rbp + 0x14]
mov rbx, rbx
add rdx, rax
mov r10b, byte [rdx + r10*8]
mov dl, byte [rbp + 0x190]
xchg rsi, rsi
jmp 0x140081ec7
mov r10b, byte [rbp + r10 + 0xd]
mov dword [rsp - 0x10], 0x2b876523
mov cl, r12b
shl r10b, cl
mov eax, edi
xchg r14, r14
test r10b, r10b
mov r10b, byte [rbp + 0x198]
jns 0x140081eeb
mov r15, r15
or eax, 0x3000
mov dword [r8 + 0x21], eax
test sil, 0x20
je 0x140081f9c
mov r8, r8
cmp dl, 3
jne 0x140081f13
or eax, 0x9000
mov dword [r8 + 0x21], eax
mov dword [rsp - 0x34], ebx
jmp 0x140081f9c
mov dl, r10b
test r15b, r15b
mov r12, r12
jne 0x140081f25
and dl, 0xfe
test r15b, r15b
xchg r13, r13
lea rax, [rbp + 0xe8]
lea rdi, [rbp + 0xd6]
cmovne rdi, rax
lea rcx, [rbp + 0xbe]
mov dword [rsp - 0x34], ecx
lea rax, [rbp + 0xd6]
cmovne rcx, rax
jmp 0x140081f67
cmp byte [rcx], dl
je 0x140081f78
mov rbp, rbp
add rcx, 2
cmp rcx, rdi
jne 0x140081f58
mov r13, r13
jmp 0x140081f91
movzx eax, byte [rcx + 1]
mov cl, r12b
shl eax, cl
mov dword [rsp - 0x30], 0x46ac670b
test al, al
jns 0x140081f9c
or dword [r8 + 0x21], 0x9000
xchg r8, r8
movzx ecx, r13b
mov bl, 0x1e
add bl, 0x16
add bl, 0xe
sub bl, 0x3d
mov edx, ecx
test r15b, r15b
je 0x14008205c
mov dword [rsp - 0x30], ecx
sub edx, 0x20
je 0x140082011
sub edx, 1
xchg r12, r12
je 0x140081fe9
sub edx, 1
je 0x140082011
mov dword [rsp - 0x30], 0x3d0bf4f
cmp edx, 1
jne 0x140082074
lea eax, [r12 - 4]
mov dword [rsp - 0x40], edx
mov r11b, 0x22
add r11b, 0x3b
xor r11b, 0x1f
sub r11b, 0x3f
cmp al, 1
ja 0x1400821c4
mov r10, r10
jmp 0x1400821bc
mov ecx, 0x5269e815
sub ecx, 0x34556839
xor ecx, 0x2d7c756f
add ecx, 0x3a64fcb9
sub ecx, 0x6dcd0768
mov r11b, 0x18
add r11b, 0x51
xor r11b, 0xc
sub r11b, 5
sub r11b, 0x5d
cmp r12b, cl
ja 0x1400821bc
xchg r11, r11
cmp r12b, 1
jne 0x1400821c4
jmp 0x1400821bc
sub edx, 0x8c
je 0x1400821a9
cmp edx, 2
xchg r11, r11
je 0x14008218b
mov r11b, byte [rbp + 0x190]
cmp r11b, 3
jne 0x140082121
xchg rbp, rbp
test r15b, r15b
je 0x1400820b8
lea rdx, [rbp + 0x121]
lea rax, [rbp + 0xf7]
mov dword [rsp - 0x30], ecx
lea rcx, [rbp + 0xf7]
cmp rax, rdx
je 0x1400821c4
jmp 0x1400820c6
lea rdx, [rbp + 0xf7]
lea rcx, [rbp + 0xe8]
cmp byte [rcx], r10b
xchg rsp, rsp
je 0x1400820f3
nop
sub rcx, 0x408050d1
add rcx, 0x408050d4
cmp rcx, rdx
mov dword [rsp - 0x1c], edx
jne 0x1400820c6
jmp 0x1400821c4
test byte [rcx + 1], sil
mov r11, r11
je 0x1400821c4
movzx eax, byte [rcx + 2]
mov cl, r12b
mov dword [rsp - 0x20], 0x64a6d32a
shl eax, cl
test al, al
jns 0x1400821bc
xchg rbp, rbp
jmp 0x1400821c4
test r15b, r15b
mov dword [rsp - 0x3c], ebp
je 0x1400821c4
sub ecx, 0x50
je 0x14008216b
mov dword [rsp - 0x34], edx
sub ecx, 0x75
je 0x1400821bc
sub ecx, 0x11
je 0x14008217e
mov dword [rsp - 0x3c], 0x7b85bb22
sub ecx, 1
je 0x14008216b
cmp ecx, 0x20
mov dword [rsp - 0x40], edi
jne 0x1400821c4
test sil, 9
jne 0x1400821bc
mov dword [rsp - 0x3c], edi
jmp 0x1400821c4
test sil, 6
mov dword [rsp - 0x20], ebx
jmp 0x14008216f
mov r11b, byte [rbp + 0x190]
cmp r12b, 1
je 0x1400821bc
mov dword [rsp - 0x18], 0x27c756b7
jmp 0x1400821b0
mov r11b, byte [rbp + 0x190]
cmp r12b, bl
mov r11, r11
jbe 0x1400821c4
or dword [r8 + 0x21], 0x11000
mov dl, byte [r9 + 1]
xchg r12, r12
neg r9
add r9, 0xfffffffffffffffe
neg r9
cmp r12b, 1
mov dword [rsp - 0x30], ebp
ja 0x14008220f
cmp r10b, 0xf6
jne 0x1400821fe
or r14b, 2
mov dword [rsp - 0x3c], 0x2e818ef4
jmp 0x14008220f
cmp r10b, 0xf7
xchg r13, r13
jne 0x14008220f
or r14b, 0x10
mov al, byte [rbp + 0x188]
movzx ecx, r11b
mov dword [rsp - 0x44], ebx
test r11b, r11b
je 0x1400822c1
sub ecx, 1
mov dword [rsp - 0x24], 0x5c895543
je 0x14008228c
cmp ecx, 1
pushf
mov ecx, 0x56faf3b2
add ecx, 0x49919c3
xor ecx, 0x77953abc
add ecx, 0x1da9953e
sub ecx, 0x49aacd03
popf
jne 0x140082312
xchg rsi, rsi
mov dil, 1
xor dil, 0x60
add dil, 2
sub dil, 0x28
sub dil, 0x39
test sil, 0x10
xchg rsp, rsp
jne 0x140082316
mov dil, cl
jmp 0x140082316
mov dil, 0x19
xor dil, 0x14
add dil, 0x11
add dil, 0x2b
xor dil, 0x48
mov ecx, 0x5ff04f3a
xor ecx, 0x5c470588
xor ecx, 0x1f025c19
add ecx, 0xc2477d4
xor ecx, 0x28d98e7b
jmp 0x140082316
mov ecx, 0x302fc4df
add ecx, 0x28c945f8
sub ecx, 0x92f01b3
sub ecx, 0x60f11e0
xor ecx, 0x49baf740
test sil, 0x10
je 0x1400822fd
cmp al, 6
mov r10, r10
setne dil
dec dil
and dil, 2
jmp 0x140082316
mov edi, dword [rsp + 4]
cmp al, bl
mov rcx, rcx
movzx edi, dil
cmove edi, ecx
jmp 0x140082316
mov edi, dword [rsp + 4]
cmp r11b, 3
mov rcx, rcx
je 0x140082385
cmp al, cl
jne 0x140082385
mov dword [rsp - 0x40], 0x41bff45a
or dword [r8 + 0x21], 2
mov al, dl
shr al, 1
shr al, 4
shr al, 1
inc r9
xchg rsi, rsi
mov byte [r8 + 0x12], al
mov al, dl
shr al, 2
shr al, 1
and al, 7
mov dword [rsp - 0x18], 0xf4a8ea1
mov byte [r8 + 0x11], dl
and dl, 7
mov byte [r8 + 0x13], al
mov byte [r8 + 0x14], dl
mov dword [rsp - 0x3c], ebp
cmp dl, bl
jne 0x140082385
test r11b, 1
movzx edi, dil
xchg r15, r15
cmove edi, ecx
dec r9
movzx ecx, dil
sub ecx, 1
mov dword [rsp - 0xc], 0x705c078e
je 0x1400823e9
sub ecx, 1
je 0x1400823d1
mov dword [rsp - 0x2c], 0x1fb38841
cmp ecx, 2
jne 0x1400823fd
bts dword [r8 + 0x21], 8
mov eax, dword [r9]
mov dword [rsp - 0x24], 0x5a6783ce
mov dword [r8 + 0x1d], eax
jmp 0x1400823fd
bts dword [r8 + 0x21], 7
movzx eax, word [r9]
mov dword [rsp - 0x40], ebp
mov word [r8 + 0x1d], ax
jmp 0x1400823fd
or dword [r8 + 0x21], 0x40
mov al, byte [r9]
mov byte [r8 + 0x1d], al
mov dword [rsp - 0x1c], 0x13d3f7f8
mov r12d, dword [rsp]
movzx eax, dil
add r9, rax
xchg r8, r8
jmp 0x140082428
test sil, 0x20
je 0x140082428
or r11d, 0x9000
xchg rcx, rcx
mov dword [r8 + 0x21], r11d
test r14b, 0x10
je 0x1400824bb
test r14b, 0x40
mov dword [rsp - 0x38], 0x2924c4ed
je 0x14008248b
test sil, 8
je 0x14008246f
mov dword [rsp - 0x28], esp
or dword [r8 + 0x21], 0x208
movzx eax, word [r9]
sub r9, 0xfffffffffffffffe
xchg r13, r13
mov word [r8 + 0x15], ax
jmp 0x1400825a7
mov ecx, 0x60e06320
add ecx, 0x1a4db3c8
sub ecx, 0x1c87b042
sub ecx, 0x5ea666a2
jmp 0x14008252c
test r12b, r12b
je 0x140082547
or dword [r8 + 0x21], 0x20
mov dword [rsp - 0x14], 0x8b3ea9d
mov rax, qword [r9]
nop
sub r9, 0x2934eaa2
add r9, 0x2934eaaa
xchg r12, rax
mov qword [r8 + 0x15], r12
xchg r12, rax
mov ecx, 0x4d0db58c
sub ecx, 0x322033ae
add ecx, 0x5151df8
xor ecx, 0x5a7b4880
xor ecx, 0x7a79d752
test cl, r14b
je 0x1400824ff
xchg r14, r14
or dword [r8 + 0x21], 8
movzx eax, word [r9]
neg r9
add r9, 0xfffffffffffffffe
neg r9
mov word [r8 + 0x15], ax
xchg r13, r13
test r14b, 2
je 0x14008251a
or dword [r8 + 0x21], ecx
mov al, byte [r9]
xchg rdi, rdi
inc r9
mov byte [r8 + 0x15], al
test r14b, 0x40
mov dword [rsp - 0x20], 0x1f8c66a2
je 0x140082583
or dword [r8 + 0x21], 0x210
mov eax, dword [r9]
mov dword [rsp - 0x18], esp
add r9, rcx
mov dword [r8 + 0x15], eax
jmp 0x1400825a7
mov ecx, 0x60c4409
add ecx, 0x10a21062
add ecx, 0x62d4c1fd
xor ecx, 0x7983166c
test sil, 8
mov rbx, rbx
jne 0x1400824e4
or dword [r8 + 0x21], 0x10
mov eax, dword [r9]
mov dword [rsp - 0x3c], esi
add r9, rcx
mov dword [r8 + 0x15], eax
jmp 0x1400824d8
test r14b, 0x20
je 0x1400825a7
or dword [r8 + 0x21], 0x204
mov dword [rsp - 0x38], 0x43f44433
mov al, byte [r9]
inc r9
mov byte [r8 + 0x15], al
sub r9b, byte [rbp + 0x180]
xchg r9, r9
mov byte [r8], r9b
cmp r9b, 0xf
jbe 0x1400825ed
mov dword [rsp - 0x34], esp
or dword [r8 + 0x21], 0x5000
mov r9b, 0x24
xor r9b, 0x51
xor r9b, 0x74
add r9b, 0x36
sub r9b, 0x28
mov byte [r8], 0x6a
sub byte [r8], 0x3c
add byte [r8], 0x2b
sub byte [r8], 0x4a
xor eax, eax
mov dword [rsp - 0x28], 0x1f46ecf6
lea rdi, [rsp + 0x10]
mov ecx, 0x430e30d6
sub ecx, 0x8c06dbe
xor ecx, 0x416cf81b
sub ecx, 0x7b2138f2
rep stosb byte [rdi], al
mov rdi, rdi
movzx eax, r9b
sub rsp, 0xfffffffffffffdc8
nop
add rsp, 8
mov r15, qword [rsp - 8]
pop r14
nop
add rsp, 8
mov r13, qword [rsp - 8]
nop
mov r12, qword [rsp]
add rsp, 8
pop rdi
nop
mov rsi, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rbx, qword [rsp - 8]
pop rbp
xchg r12, r12
ret