Function at 0x140090280
Capabilities:
Authenticate hmac
Encode data using base64
Encode data using xor

Disassembly:
xchg r8, rcx
mov qword [rsp + 8], r8
xchg r8, rcx
nop
sub rsp, 8
mov qword [rsp], rbp
nop
push 0x70fc811d
mov qword [rsp], rbx
push rsi
push rdi
push r12
mov r11, r11
nop
mov qword [rsp - 8], r13
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], r14
nop
sub rsp, 8
mov qword [rsp], r15
lea rbp, [rsp - 0x138]
sub rsp, 0x5a9e4381
add rsp, 0x5a9e4149
xchg r13, rdx
mov r8, r13
xchg rdx, r13
mov rdi, rcx
xor edx, edx
lea ebx, [rdx + 1]
mov dword [rsp - 0xc], 0x77504c5f
mov ecx, edx
mov eax, 0x7200bc72
sub eax, 0xd26179f
sub eax, 0x1d347907
add eax, 0x31a70997
rol eax, cl
mov r8, r8
lea rcx, [0x140001b00]
xor al, byte [rdx + rcx]
mov byte [rsp + rdx + 0x10], al
mov dword [rsp - 0x44], 0x4a9ed320
add rdx, rbx
cmp rdx, 0x211
jb 0x1400902f0
mov r15, r15
xor dl, dl
lea r11, [rsp + 0x10]
xor r12b, r12b
mov dword [rsp - 0x10], edx
mov byte [rsp + 4], dl
xor eax, eax
mov dword [rsp], r12d
xchg rdi, r13
mov r9, r13
xchg rdi, r13
mov r10b, 0x53
sub r10b, 0x17
add r10b, 0xe
add r10b, 0x10
sub r10b, 0x4a
xchg rdi, r12
mov r12, r8
xchg r12, rdi
lea ecx, [rax + 0x25]
rep stosb byte [rdi], al
mov rbp, rbp
lea esi, [rax + 4]
movzx edi, byte [r9]
add r9, rbx
mov ecx, edi
mov dword [rsp - 0x40], 0x5318261d
cmp edi, 0x65
ja 0x1400903ef
neg ecx
add ecx, 0x26
neg ecx
cmp ecx, 0x3f
mov dword [rsp - 0x1c], esp
ja 0x140090497
movabs rax, 0xc0000000422269e7
xor rax, 0x43f41c5e
add rax, 0x16db3669
add rax, 0x5a5a2ee6
sub rax, 0x720ada07
bt rax, rcx
jae 0x140090497
mov dword [rsp - 0x10], 0xe2b6444
mov byte [r8 + 3], dil
mov al, 0x74
sub al, 1
sub al, 0x36
add al, 3
jmp 0x140090488
sub ecx, 0x66
je 0x140090476
sub ecx, ebx
mov r15, r15
je 0x14009045d
sub ecx, 0x89
je 0x140090449
mov dword [rsp - 0x18], 0x4deb6363
sub ecx, 2
je 0x140090438
cmp ecx, ebx
jne 0x140090497
mov dword [rsp - 0x14], ebp
mov byte [r8 + 1], dil
mov al, sil
jmp 0x140090488
mov byte [r8 + 1], dil
mov al, 0x4c
xor al, 0
sub al, 0x47
xor al, 7
jmp 0x140090488
mov byte [r8 + 2], dil
mov r10, r10
mov al, 0x7e
sub al, 0x5d
add al, 2
sub al, 3
jmp 0x140090488
mov byte [r8 + 5], dil
mov dword [rsp - 0x34], 0x153f2864
mov al, 0x13
add al, 0x36
sub al, 0x2b
sub al, 0xe
jmp 0x140090488
mov byte [r8 + 4], dil
mov dword [rsp - 0x3c], edi
mov al, 0x24
xor al, 0x52
sub al, 0x25
sub al, 0x50
add al, 7
or dl, al
xchg r9, r9
add r10b, 0xff
jne 0x14009037c
movzx eax, dl
mov ecx, ebx
mov dword [rsp - 0x18], 0x32e2e086
movzx r10d, dl
shl r10d, 7
shl r10d, 7
shl r10d, 8
shl r10d, 1
test dl, dl
mov dword [r8 + 0x21], r10d
mov dword [rsp - 0xc], ebp
cmovne ecx, eax
mov al, dil
and al, 0xf0
cmp al, 0x40
mov dword [rsp - 0x20], 0x7ccce186
jne 0x140090570
bts r10d, 0x1e
mov al, dil
shr al, 2
shr al, 1
and al, bl
xchg rbx, rbx
mov dword [r8 + 0x21], r10d
mov byte [r8 + 7], al
je 0x140090516
xchg rbp, rbp
mov al, byte [r9]
and al, 0xf8
movzx r12d, r12b
mov dword [rsp - 0x3c], edi
cmp al, 0xb8
cmove r12d, ebx
mov dword [rsp], r12d
mov r8, r8
mov al, dil
shr al, 2
and al, bl
mov dword [rsp - 0x28], edx
mov byte [r8 + 8], al
mov al, dil
shr al, 1
and dil, bl
xchg rdx, rdx
and al, bl
mov byte [r8 + 0xa], dil
mov byte [r8 + 9], al
mov dil, byte [r9]
mov dword [rsp - 0x24], 0x5bb53a5
add r9, rbx
mov al, dil
and al, 0xf0
cmp al, 0x40
mov rbx, rbx
jne 0x140090570
mov byte [rbp + 0x198], dil
mov sil, cl
mov dword [rsp - 0x20], 0x28109771
jmp 0x140090612
mov byte [r8 + 0xb], dil
mov sil, cl
mov r13, r13
cmp dil, 0xf
jne 0x14009059f
mov dil, byte [r9]
mov dword [rsp - 0x30], ecx
lea r11, [rsp + 0x5a]
mov byte [r8 + 0xc], dil
add r9, rbx
mov r12, r12
jmp 0x1400905dd
cmp dil, 0xa0
mov r15, r15
jb 0x1400905dd
cmp dil, 0xa3
ja 0x1400905dd
add r12b, bl
xchg rcx, rcx
mov dword [rsp], r12d
test cl, 0x10
je 0x1400905d5
or sil, 8
xchg r12, r12
jmp 0x1400905dd
and sil, 0xf7
mov dword [rsp - 0x20], ebx
movzx edx, dil
mov eax, edx
mov byte [rbp + 0x198], dil
xchg rbx, rbx
shr rax, 1
shr rax, 1
and edx, 3
movzx eax, byte [rax + r11]
xchg rsp, rsp
add rax, r11
mov r14b, byte [rdx + rax]
cmp r14b, 0xff
jne 0x140090645
mov rsi, rsi
or r10d, 0x3000
movzx eax, dil
and eax, 0xfffffffd
mov rsi, rsi
mov dword [r8 + 0x21], r10d
xor r14b, r14b
cmp al, 0x24
jne 0x140090645
xchg r11, r11
mov r14b, bl
mov r13b, dil
xor bl, bl
mov rdx, rdx
jmp 0x140090681
xor bl, bl
mov dword [rsp - 0x30], 0x47138af1
mov r13b, dil
test r14b, r14b
jns 0x140090681
movzx eax, r14b
xchg rsp, rsp
and eax, 0x7f
movzx r14d, word [rax + r11]
movzx ebx, r14w
mov dword [rsp - 0xc], 0x7d3f16c0
shr bx, 4
shr bx, 3
shr bx, 1
mov r15b, byte [r8 + 0xc]
mov r11d, r10d
test r15b, r15b
mov r9, r9
je 0x1400906d1
movzx edx, dil
mov eax, edx
and edx, 3
mov r11, r11
shr rax, 2
movzx ecx, byte [rbp + rax + 0x4c]
lea rax, [rbp + 0x4c]
add rax, rdx
mov dword [rsp - 0x30], 0x2fb52
test byte [rax + rcx], sil
je 0x1400906d1
or r11d, 0x3000
mov dword [rsp - 0x14], ecx
mov dword [r8 + 0x21], r11d
test r14b, 1
je 0x140090d2b
or r11d, 1
mov rdx, rdx
mov dword [r8 + 0x21], r11d
mov edi, r11d
mov r12b, byte [r9]
mov dl, r12b
mov dword [rsp - 0x10], 0x3d127dcb
mov byte [r8 + 0xd], r12b
mov cl, r12b
shr dl, 6
and cl, 7
xchg r12, r12
shr r12b, 3
and r12b, 7
mov byte [rbp + 0x190], dl
xchg r15, r15
mov byte [r8 + 0xe], dl
mov byte [rbp + 0x188], cl
mov byte [r8 + 0x10], cl
mov byte [r8 + 0xf], r12b
xchg rsp, rsp
test bl, bl
je 0x140090760
mov cl, r12b
movzx eax, bl
mov dword [rsp - 0x30], 0x6735be0f
shl eax, cl
mov cl, byte [rbp + 0x188]
test al, al
jns 0x140090760
xchg rdi, rdi
or edi, 0x3000
mov dword [r8 + 0x21], edi
mov r10b, byte [rbp + 0x198]
mov eax, edi
mov dword [rsp - 0x2c], 0x53884505
test r15b, r15b
jne 0x1400907fd
cmp r10b, 0xd9
mov dword [rsp - 0x2c], 0x4cc259af
jb 0x1400907fd
cmp r10b, 0xdf
ja 0x1400907fd
lea eax, [r10 + 0x27]
mov dword [rsp - 0x44], esi
movzx r10d, al
cmp dl, 3
jne 0x1400907d0
movzx eax, r12b
xchg rsp, rsp
lea rdx, [rbp + 0x14]
add rdx, rax
mov r10b, byte [rdx + r10*8]
mov dl, byte [rbp + 0x190]
mov dword [rsp - 0x34], 0x6c00c513
jmp 0x1400907dc
mov r10b, byte [rbp + r10 + 0xd]
mov cl, r12b
mov dword [rsp - 0x1c], ebp
shl r10b, cl
mov eax, edi
test r10b, r10b
mov r10b, byte [rbp + 0x198]
xchg r9, r9
jns 0x1400907fd
or eax, 0x3000
mov dword [r8 + 0x21], eax
test sil, 0x20
xchg r11, r11
je 0x1400908b1
cmp dl, 3
jne 0x140090824
or eax, 0x9000
mov rcx, rcx
mov dword [r8 + 0x21], eax
jmp 0x1400908b1
mov dl, r10b
mov rbp, rbp
test r15b, r15b
jne 0x140090836
and dl, 0xfe
test r15b, r15b
mov dword [rsp - 0x28], edi
lea rax, [rbp + 0xe8]
lea rdi, [rbp + 0xd6]
cmovne rdi, rax
xchg rsi, rsi
lea rcx, [rbp + 0xbe]
lea rax, [rbp + 0xd6]
cmovne rcx, rax
mov dword [rsp - 0x24], ecx
jmp 0x14009087c
cmp byte [rcx], dl
xchg rbx, rbx
je 0x140090892
add rcx, 2
cmp rcx, rdi
jne 0x14009086d
mov dword [rsp - 0x10], 0x3ed17d04
jmp 0x1400908a9
movzx eax, byte [rcx + 1]
mov cl, r12b
xchg rdi, rdi
shl eax, cl
test al, al
jns 0x1400908b1
mov rdx, rdx
or dword [r8 + 0x21], 0x9000
movzx ecx, r13b
mov bl, 0x30
xor bl, 0x20
add bl, 0x2e
xor bl, 0x3b
mov edx, ecx
mov r9, r9
test r15b, r15b
je 0x140090970
sub edx, 0x20
xchg rbp, rbp
je 0x140090926
sub edx, 1
je 0x1400908f9
sub edx, 1
mov dword [rsp - 0x44], ebx
je 0x140090926
cmp edx, 1
jne 0x140090988
lea eax, [r12 - 4]
mov dword [rsp - 0x3c], 0x5cb7d1d9
mov r11b, 0x3d
sub r11b, 0x2e
xor r11b, 0x66
sub r11b, 0x66
cmp al, 1
mov dword [rsp - 0x28], ebp
ja 0x140090ae0
jmp 0x140090ad8
mov ecx, 0x7782cdf1
sub ecx, 0x1785d28d
sub ecx, 0x2fa34375
xor ecx, 0x4bf2fbce
sub ecx, 0x7bab4c1d
mov r11b, 4
xor r11b, 0x24
sub r11b, 0x19
sub r11b, 4
cmp r12b, cl
mov rdx, rdx
ja 0x140090ad8
cmp r12b, 1
jne 0x140090ae0
xchg rcx, rcx
jmp 0x140090ad8
sub edx, 0x8c
mov rbx, rbx
je 0x140090ac0
cmp edx, 2
je 0x140090aa7
mov r11b, byte [rbp + 0x190]
mov r13, r13
cmp r11b, 3
jne 0x140090a43
test r15b, r15b
mov dword [rsp - 0x10], 0x6cc5d4b
je 0x1400909d6
lea rdx, [rbp + 0x121]
lea rax, [rbp + 0xf7]
mov r13, r13
lea rcx, [rbp + 0xf7]
cmp rax, rdx
je 0x140090ae0
xchg rbp, rbp
jmp 0x1400909e7
lea rdx, [rbp + 0xf7]
mov rsi, rsi
lea rcx, [rbp + 0xe8]
cmp byte [rcx], r10b
je 0x140090a18
mov dword [rsp - 0x40], 0x2daadb2b
nop
add rcx, 0x3d3be4a8
sub rcx, 0x3d3be4a5
cmp rcx, rdx
xchg rdi, rdi
jne 0x1400909e7
jmp 0x140090ae0
test byte [rcx + 1], sil
je 0x140090ae0
movzx eax, byte [rcx + 2]
mov dword [rsp - 0x34], 0x560d7c6b
mov cl, r12b
shl eax, cl
test al, al
mov r12, r12
jns 0x140090ad8
jmp 0x140090ae0
test r15b, r15b
mov r15, r15
je 0x140090ae0
sub ecx, 0x50
je 0x140090a87
mov dword [rsp - 0x14], ebx
sub ecx, 0x75
je 0x140090ad8
sub ecx, 0x11
je 0x140090a9e
mov dword [rsp - 0x2c], esp
sub ecx, 1
je 0x140090a87
cmp ecx, 0x20
xchg r8, r8
jne 0x140090ae0
test sil, 9
jne 0x140090ad8
mov dword [rsp - 0x14], 0x2f9cb6d1
jmp 0x140090ae0
test sil, 6
jmp 0x140090a8b
mov r11b, byte [rbp + 0x190]
xchg rdx, rdx
cmp r12b, 1
je 0x140090ad8
jmp 0x140090ac7
mov r11b, byte [rbp + 0x190]
cmp r12b, bl
jbe 0x140090ae0
mov dword [rsp - 0x14], 0x10b4fb52
or dword [r8 + 0x21], 0x11000
mov dl, byte [r9 + 1]
nop
sub r9, 0x7347c6df
add r9, 0x7347c6e1
cmp r12b, 1
xchg r14, r14
ja 0x140090b27
cmp r10b, 0xf6
jne 0x140090b16
mov r12, r12
or r14b, 2
jmp 0x140090b27
cmp r10b, 0xf7
mov rbx, rbx
jne 0x140090b27
or r14b, 0x10
mov al, byte [rbp + 0x188]
movzx ecx, r11b
mov dword [rsp - 0x1c], ebp
test r11b, r11b
je 0x140090bd0
sub ecx, 1
je 0x140090ba5
mov rdi, rdi
cmp ecx, 1
pushf
mov ecx, 0x7299102
xor ecx, 0x3d254973
add ecx, 0x1a42841c
sub ecx, 0x3f14a660
sub ecx, 0x153ab629
popf
jne 0x140090c2b
mov dword [rsp - 0x18], ecx
mov dil, 0x77
add dil, 4
sub dil, 8
sub dil, 0x54
sub dil, 0x1d
test sil, 0x10
mov dword [rsp - 0x10], 0x5c5cab3d
jne 0x140090c2f
mov dil, cl
jmp 0x140090c2f
mov dil, 0x16
add dil, 5
xor dil, 0x5c
sub dil, 0x46
mov ecx, 0x194dd21e
xor ecx, 0x72ccb2b7
sub ecx, 0x6b4e5d09
xor ecx, 0x3303a4
jmp 0x140090c2f
mov ecx, 0x2ebba998
add ecx, 0xeaf0de3
add ecx, 0x420a8a1f
sub ecx, 0x7f754196
test sil, 0x10
mov r8, r8
je 0x140090c0e
cmp al, 6
setne dil
dec dil
mov dword [rsp - 0x10], 0x67301fb9
and dil, 2
jmp 0x140090c2f
mov edi, dword [rsp + 4]
xchg r13, r13
cmp al, bl
movzx edi, dil
cmove edi, ecx
mov dword [rsp - 0x30], 0x7cc03f1c
jmp 0x140090c2f
mov edi, dword [rsp + 4]
cmp r11b, 3
mov dword [rsp - 0x40], 0x761cc6ba
je 0x140090ca4
cmp al, cl
jne 0x140090ca4
xchg rsp, rsp
or dword [r8 + 0x21], 2
mov al, dl
shr al, 3
shr al, 2
shr al, 1
inc r9
mov rsp, rsp
mov byte [r8 + 0x12], al
mov al, dl
shr al, 3
mov rdi, rdi
and al, 7
mov byte [r8 + 0x11], dl
and dl, 7
mov dword [rsp - 0x20], 0x7db46f8b
mov byte [r8 + 0x13], al
mov byte [r8 + 0x14], dl
cmp dl, bl
jne 0x140090ca4
mov dword [rsp - 0x1c], 0x32eb9513
test r11b, 1
movzx edi, dil
cmove edi, ecx
xchg r11, r11
dec r9
movzx ecx, dil
sub ecx, 1
je 0x140090d08
mov dword [rsp - 0x44], 0x6bf3e41
sub ecx, 1
je 0x140090cf0
cmp ecx, 2
jne 0x140090d18
mov dword [rsp - 0x40], 0x4b8108e8
bts dword [r8 + 0x21], 8
mov eax, dword [r9]
mov dword [r8 + 0x1d], eax
mov dword [rsp - 0x30], 0x82ab88f
jmp 0x140090d18
bts dword [r8 + 0x21], 7
movzx eax, word [r9]
mov word [r8 + 0x1d], ax
mov dword [rsp - 0x20], ebx
jmp 0x140090d18
or dword [r8 + 0x21], 0x40
mov al, byte [r9]
mov dword [rsp - 0x34], ebp
mov byte [r8 + 0x1d], al
mov r12d, dword [rsp]
movzx eax, dil
mov rcx, rcx
add r9, rax
jmp 0x140090d44
test sil, 0x20
mov dword [rsp - 0x30], edx
je 0x140090d44
or r11d, 0x9000
mov dword [r8 + 0x21], r11d
test r14b, 0x10
mov dword [rsp - 0x3c], 0x4731006f
je 0x140090de2
test r14b, 0x40
je 0x140090db3
test sil, 8
mov dword [rsp - 0x38], ecx
je 0x140090d97
or dword [r8 + 0x21], 0x208
movzx eax, word [r9]
nop
add r9, 0x1415a10a
sub r9, 0x1415a108
mov word [r8 + 0x15], ax
mov dword [rsp - 0x20], edx
jmp 0x140090ecc
mov ecx, 0x1bad1d48
add ecx, 0x6366049f
sub ecx, 0x3506f205
sub ecx, 0x4a0c2fde
jmp 0x140090e49
test r12b, r12b
mov dword [rsp - 0x24], ebp
je 0x140090e63
or dword [r8 + 0x21], 0x20
xchg rdi, rax
mov rdi, qword [r9]
xchg rdi, rax
nop
sub r9, 0x189f8339
add r9, 0x189f8341
mov qword [r8 + 0x15], rax
xchg r11, r11
mov ecx, 0x35162b4
xor ecx, 0x1ccdd372
xor ecx, 0x62ec16e5
sub ecx, 0x2aeb70cb
sub ecx, 0x52853654
test cl, r14b
je 0x140090e21
xchg rbp, rbp
or dword [r8 + 0x21], 8
movzx eax, word [r9]
add r9, 2
mov word [r8 + 0x15], ax
mov dword [rsp - 0x44], edx
test r14b, 2
je 0x140090e3f
or dword [r8 + 0x21], ecx
mov r10, r10
mov al, byte [r9]
inc r9
mov byte [r8 + 0x15], al
xchg r9, r9
test r14b, 0x40
je 0x140090ea9
or dword [r8 + 0x21], 0x210
mov eax, dword [r9]
xchg rsi, rsi
add r9, rcx
mov dword [r8 + 0x15], eax
jmp 0x140090ecc
mov ecx, 0x637a11a1
sub ecx, 0x1a1c309a
sub ecx, 0x279db32b
xor ecx, 0x4ed5e874
xor ecx, 0x6f15c5ac
test sil, 8
jne 0x140090e0b
mov rdi, rdi
or dword [r8 + 0x21], 0x10
mov eax, dword [r9]
add r9, rcx
mov dword [rsp - 0x38], 0x649cf8a7
mov dword [r8 + 0x15], eax
jmp 0x140090dff
test r14b, 0x20
xchg r9, r9
je 0x140090ecc
or dword [r8 + 0x21], 0x204
mov al, byte [r9]
inc r9
mov dword [rsp - 0xc], ebp
mov byte [r8 + 0x15], al
sub r9b, byte [rbp + 0x180]
mov byte [r8], r9b
cmp r9b, 0xf
mov rsi, rsi
jbe 0x140090f12
or dword [r8 + 0x21], 0x5000
mov r9b, 0x36
sub r9b, 0x13
add r9b, 0xb
xor r9b, 0x67
sub r9b, 0x3a
mov byte [r8], 0x49
sub byte [r8], 0x10
xor byte [r8], 7
sub byte [r8], 8
sub byte [r8], 0x27
xor eax, eax
lea rdi, [rsp + 0x10]
xchg rsp, rsp
mov ecx, 0x3842f12e
xor ecx, 0x49d95eb8
sub ecx, 0x419eece0
sub ecx, 0x2ffcc0a5
rep stosb byte [rdi], al
xchg rsi, rsi
movzx eax, r9b
sub rsp, 0x1feb9cc0
add rsp, 0x1feb9ef8
nop
mov r15, qword [rsp]
add rsp, 8
pop r14
nop
mov r13, qword [rsp]
add rsp, 8
nop
mov r12, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rdi, qword [rsp - 8]
nop
mov rsi, qword [rsp]
add rsp, 8
pop rbx
mov r15, r15
pop rbp
ret