Function at 0x14011f9c0
Capabilities:
Authenticate hmac
Encode data using base64
Execute anti-debugging instructions

Disassembly:
xadd r9d, ebp
movsxd rbx, ebx
lea rax, [rcx + rdx - 0x5b6be9db]
adc r8, rbx
btc r9, rdi
mov rax, qword [rsi + rcx - 0x1ba9c]
jae 0x14014de3c
xor r10b, dl
cwde
bts di, 0xe
lea rbx, [rbp - 0x7a412177]
lea rsi, [rsi + rcx - 0xfeb3]
bt rbx, 0x81
neg al
mov word [rsi + rbp*2 - 0x30345400], dx
xor cx, bx
jae 0x1401419bd
mov r9d, 0x29b0b912
inc r9
mov ebp, r9d
mov edx, dword [r11 + r9 - 0x29b0b913]
lea r11, [r11 + rbp*2 - 0x53617222]
call fcn.14011ff3e
bts bx, 0x9c
lea rsi, [rsi + rbp*2 - 0x1fa]
btr bx, cx
sar dil, 0x84
mov dword [rsi + rcx*2 + 0x68fbfd5c], r9d
xchg ecx, edx
jae fcn.140146e5c
lea r11, [r11 + rdx*2 - 0x7f09a776]
or rdi, rdi
xor eax, r10d
btc bx, bx
movsx ebp, di
lea r9, [rdx*2 + 0x350f91bc]
ror eax, 1
not edx
lea rcx, [rdi + rdi*2 + 0x45ae9dbc]
xor edx, edx
xor eax, 0x8199378b
dec eax
shl rdi, cl
xadd rbp, rdx
xor eax, 0xf3859995
push rcx
neg eax
ror eax, 1
inc rcx
or rdx, rdi
mov qword [rsp], r10
ror bp, 0x4e
sub dl, bl
xor dword [rsp], eax
xor bp, r9w
ror bl, 0x27
bts di, cx
pop r10
setae bl
inc r9
not cx
movsxd rax, eax
inc rcx
adc r8, rax
ror ebx, 0x90
or dil, bpl
mov rsi, qword [rsi + rbx - 0x6f01d861]
inc bl
ja fcn.140146e5c
mov edx, 0xe8016106
sar dl, 0x22
movzx ebp, dl
mov bp, word [rsi + rbp*2 - 2]
movsx ecx, dl
mov ax, word [rsi + rcx + 1]
movzx r9d, cx
mov cl, byte [rsi + rcx*2 + 2]
movsx ebx, r9w
push rbx
lea rsi, [r9 + rsi + 3]
shld bp, ax, cl
mov word [rsi + r9*8 - 8], bp
not byte [rsp + r9 + 5]
mov edx, dword [r11 + r9*2 - 2]
movzx edi, word [rsp + r9*4 - 1]
call fcn.14015906e
mov r9d, dword [r11]
mov eax, 0x6a1d96b8
mov edi, eax
push rdi
lea r11, [rax + r11 - 0x6a1d96b4]
xor r9d, r10d
add byte [rsp + rdi - 0x6a1d96b2], 0x22
inc eax
shl qword [rsp + rdi - 0x6a1d96b8], 0x47
bswap r9d
mov byte [rsp + rax - 0x6a1d96b6], al
call fcn.14011f977
lea r11, [r11 + rcx*2 - 0x71727342]
call fcn.140114f0d
mov dword [rsi + rdx - 0x3a90980b], ecx
mov qword [rsp + rdx - 0x3a9097ef], 0xffffffffb92e20a3
call fcn.140140de9
xadd dx, di
rol r9w, 1
jmp 0x14013c734
dec ecx
cbw
mov qword [rsp + rbx*4 - 0x1b440], r10
jmp 0x140152295
xor bl, r10b
push rax
jmp 0x140151da9
xor ecx, r10d
mov edi, edx
dec r9w
sub ecx, 0xb9a9c484
xor ecx, 0x4341f27
and qword [rsp + rbx - 0x46], rax
xchg bx, ax
adc al, bh
rol ecx, 1
lea rbp, [rdi + rdx*2 + 0x193cff94]
shl qword [rsp + rbx - 0x6d0d], 0x69
cqo
bswap ecx
adc r9w, word [rsp + rbx*2 - 0xda13]
jnp 0x140123f93
xor ebp, r10d
shl bl, 0x87
inc ebp
and rbx, rcx
call fcn.140142b50
rol cl, 1
dec di
xor ax, 0xa8d
dec dil
dec cl
movzx r9d, bx
xor cl, 0x19
shl dword [rsp + rax*2 - 0x152c], 0x19
jbe 0x140133670
mov eax, dword [r11]
mov ecx, 0xc7957f2b
lea rbp, [rcx*8 - 0x66f83fee]
add r11, 4
jmp 0x14014b658
push r10
xor bl, bh
or rax, rbp
sub eax, ebx
xor dword [rsp + rcx - 0x2e386344], edx
movsx r9d, dil
movsx r10d, r9w
pop r10
jmp 0x14013bdfb
dec rdx
xor di, r10w
xor di, ax
rol rcx, cl
setb cl
cwde
sbb di, ax
cbw
dec bpl
rol di, 1
add di, 0x8504
push r9
or dword [rsp + rbp*2 - 0x1a7b3], 0xbc93c237
bswap ecx
xor r10w, di
lea rdi, [rsp + rdi + 8]
mov r9, qword [rcx + rdi]
bswap rcx
and byte [rsp + rcx*8], bpl
mov rdx, r9
call fcn.14011e094
mov edi, 0x42118c39
mov eax, edi
mov ecx, dword [r11 + rax - 0x42118c39]
movsx ebp, al
bts eax, eax
lea r11, [r11 + rdi - 0x42118c35]
xor ecx, r10d
inc rbp
bswap eax
lea ecx, [rcx + rbp*4 - 0x4aa12e06]
mov ebx, edi
lea r9, [rbp + rbx*8 - 0x2fd38fc4]
and r9, rbp
ror ecx, 1
shr bx, 0xe8
dec ecx
bts ax, 0x8c
mov edx, edi
or r9d, r9d
ror ecx, 2
xor rax, rax
or bl, 0x99
not al
push r10
setnp al
lea r9, [rbx + r9*2 + 0x6bdb33c]
shr rdx, 0xfc
xor dword [rsp + rax*2 - 2], ecx
jmp 0x14015adfe
xadd edi, eax
rol cl, 1
shr bp, 0xe8
dec cl
add bx, 0xc210
movsx edx, bl
neg cl
lea rbx, [r9 + 0x4783008e]
jmp 0x140154466
dec al
lea r11, [r9 + r11 - 0x401a7d33]
mov ecx, r9d
rol cx, 0x88
and r9b, 0x9b
xor ebp, r10d
or rcx, rax
sbb ebp, 0xdda97390
not ecx
xchg r9b, dil
not al
not ebp
movzx edx, ax
shr rdx, 0xf6
bswap ebp
not ebp
cbw
neg ebp
not ebp
sub edx, ecx
bswap ebp
shr r9d, 0x9d
push r10
cdqe
movzx r10d, cl
xor dword [rsp + r9 - 2], ebp
ror r10, 0xca
pop r10
and r9b, 0x80
adc edx, ebx
setne al
movsxd rbp, ebp
sal r9, 0xc5
ror eax, 0x45
adc r8, rbp
xor al, ch
cwd
ja fcn.140146e5c
movsx ebp, cl
mov qword [rsp + rdx - 0xd7], r10
mov r10, qword [rsp + 0x20]
add r10, 0xffffffffffff97ff
jmp r10
movsxd rdx, edx
sal bpl, 0x22
add r8, rdx
sal r9b, cl
inc cx
movzx ebx, byte [r11 + rcx - 0x2e386341]
add ebp, edi
cmovo rbp, rcx
lea r11, [rcx + r11 - 0x2e386340]
jle 0x140124582
push rcx
bts ebp, ebp
not dl
adc dl, 0xb1
xchg dword [rsp + rbp*4 - 0x769bd483], eax
xor dl, 8
shl r9b, 0x65
movsx edi, bp
xor r10b, dl
bts cx, 0x3f
mov word [rsi + rax*4 - 0x769bd6], dx
mov qword [rsp + rbp - 0x1da6f521], rcx
rol byte [rsp + rbp*4 - 0x769bd482], 0x82
xchg qword [rsp + rbp - 0x1da6f521], rcx
mov ebp, dword [r11 + rbp*2 - 0x3b4dea41]
btc r9d, 0x26
cbw
cmovae ax, di
xor ebp, r10d
cqo
sub dx, ax
setle r9b
sbb ebp, 0x8a03e783
cwd
xor ebp, 0x30394d13
add edx, eax
inc ebp
xor ebp, 0xbf84ce98
cwd
and di, dx
cmovle rax, rdx
mov qword [rsp + rax - 0x1effff], r10
xor dword [rsp + rax*2 - 0x3dfffe], ebp
bt di, di
movzx r10d, cx
pop r10
ror cl, 5
btr edi, edx
movsxd rbp, ebp
push rdi
add r8, rbp
and r9, qword [rsp + rax*2 - 0x3dfffe]
seta dil
lea r9, [rdi - 0x77c15ae1]
movzx eax, byte [r11 + rax*2 - 0x3dfff9]
movzx ebp, cl
shr rdx, cl
lea r11, [r11 + r9 - 0x83e9a1a]
xor al, r10b
movsx ebx, byte [rsp + r9*2 - 0x107d343c]
shr cl, cl
and ebx, ecx
sbb al, 0x21
ror al, 1
and word [rsp + r9*2 - 0x107d343e], 0x83ab
btr r9w, bp
or bp, di
xor al, dl
xor ebp, dword [rsp + r9*4 - 0x20fa687d]
adc al, dil
dec r9w
neg al
sub rdi, rbx
pop rbx
and ebx, r9d
adc al, dil
call fcn.14011a55e
mov ebp, 0x1eb5041d
lea rcx, [rbp*8 + 0x58ba3e2d]
movzx eax, bpl
mov rdi, qword [rsi + rbp*4 - 0x7ad41074]
mov r9w, word [rdi + rbp*4 - 0x7ad41074]
mov ebx, ecx
lea rsi, [rbp + rsi - 0x1eb50417]
xadd al, bpl
mov word [rsi + rbp - 0x1eb5041d], r9w
mov r9d, dword [rbp + r11 - 0x1eb5041d]
xor ax, cx
lea rdx, [rbp + rbp*4 + 0x44231a06]
lea r11, [r11 + rbp*4 - 0x7ad41070]
xor r9d, r10d
neg edx
not r9d
ror bpl, 0x21
sal ax, 0x23
not bpl
neg r9d
jmp 0x14014b492
sar rdi, cl
xadd word [rsp + rcx + 0x347d05b4], bp
inc r9w
xadd ax, cx
ror r9w, 1
shr rdi, 0xd4
neg r9w
rol dil, 0xa4
inc r9w
sal ebx, 0x1e
shl dl, 0xa1
pop rbx
neg r9w
xadd cx, dx
xor r10w, r9w
shr dx, 0xc8
ja 0x14011f1c0
lea rax, [r9*4 - 0x306fa380]
mov ecx, dword [r11 + rbx - 0x52]
lea r11, [rbx + r11 - 0x4e]
cmovbe rdx, qword [rsp + rbx*8 - 0x280]
jnp 0x140126989
lea edx, [rax + rdx + 0x6b91eac8]
mov byte [rsp + rax*2 - 0xa88], dil
pop rdi
or dil, cl
rol edx, 1
push r10
inc eax
push r9
xor dword [rsp + rax*2 - 0xa86], edx
mov r10, qword [rsp + rax - 0x53f]
bt ebx, eax
not ax
movsxd rdx, edx
jb 0x1401576c7
ror ecx, 1
rol eax, 0x8c
sar rdi, 0xe2
cqo
bswap ecx
not ecx
mov r9d, edi
sar rdx, 0xb9
sar r9w, 0xa1
ror ecx, 2
rol eax, 0xc3
push r10
sbb r9b, 0xac
sub bl, r9b
btr edx, r9d
xor dword [rsp + rdx], ecx
pop r10
movsxd rcx, ecx
or rbp, rdi
shl bx, 0x65
jne 0x1401584f0
inc ebp
jne fcn.140146e5c
xor r9d, 0x4b161b8f
sub al, 0xbc
sar ebx, 0xf9
inc rcx
bswap r9d
xadd rcx, rax
push r10
xor dword [rsp + rbp - 0x1eb50471], r9d
not dl
pop r10
btc cx, cx
movsxd r9, r9d
and al, al
shr bpl, 0x44
setns bpl
adc r8, r9
call fcn.140140a4b
or di, 0xfeaa
mov qword [rsp + rcx*8 - 0x48880], r8
ret 8
xor eax, r10d
ror ebp, 0x1a
mov ebx, 0x241f540e
bswap eax
jb 0x1401368cf
inc ebx
xor eax, 0xd0212002
sal rbx, 2
add cl, 0x87
ror eax, 3
not eax
movzx r9d, bl
push r10
movsx edi, cl
bts r9w, bx
btr di, cx
xor dword [rsp + r9 - 0x103c], eax
movsx r10d, di
pop r10
movsxd rax, eax
movsx edx, bl
shl edx, cl
btc r9d, ebp
adc r8, rax
push rdx
sar qword [rsp + rbp - 0x6cee5ab5], 0xac
mov rcx, qword [rsi + rbp - 0x6cee5ab5]
lea rsi, [rsi + rbp - 0x6cee5aad]
movzx eax, byte [rsp + r9*4 - 0x8040f0]
xadd byte [rsp + rbp - 0x6cee5ab1], bpl
ror dword [rsp + r9*2 - 0x402074], 0x41
xor al, byte [r11 + r9*2 - 0x402078]
jmp 0x140155715
bswap rdx
mov edi, dword [rsi + rcx*2 - 0x37530]
movzx ebx, dl
lea rsi, [rcx + rsi - 0x1ba90]
bt rcx, rbx
mov dword [rcx + rax - 0x1ba9c], edi
cmovb dx, bx
or rbx, r8
jmp rbx
sub bl, 0x82
neg bl
sar dil, cl
neg dword [rsp + rcx - 0x2e386341]
bts ebp, ecx
not bl
movzx edx, dil
xadd dword [rsp + rcx - 0x2e386341], ebp
ror bl, 1
xor r10b, bl
lea rbx, [rsp + rbx + 8]
jmp 0x1401210d2
and ebp, ebx
cdqe
xor dword [rsp + rbx*4 - 0x1b440], ecx
btr dx, ax
not word [rsp + rbx*2 - 0xda1a]
mov r10, qword [rsp + rbx - 0x6d04]
sal r9d, 0xc9
movsxd rcx, ecx
inc r9w
lea rdi, [r9 + r9 + 0x48392a0e]
neg ax
add r8, rcx
mov qword [rsp + rdx*8], r8
ret 0x10
call fcn.140159ce0
xor ebp, 0x83136e3a
sbb cl, 0x3e
or rbx, qword [rsp + rbx - 0x4783c141]
xor r10b, cl
and ebx, eax
sbb dil, 0x31
add word [rsp + rbx*2 - 0xd01722e], bp
lea rsi, [rsi + rbx*2 - 0xd017234]
mov dword [rsi + rbx*4 - 0x1a02e460], ecx
sbb byte [rsp + rbx*2 - 0xd01722a], dil
or qword [rsp + rbx*2 - 0xd017230], rbx
adc ebp, r9d
mov edx, dword [r11 + rbx*2 - 0xd017230]
lea r11, [r11 + rbx*2 - 0xd01722c]
neg dword [rsp + rbx*2 - 0xd01722f]
sub word [rsp + rbx*4 - 0x1a02e45e], ax
xor edx, r10d
neg r9b
ror bl, 0x24
bswap edx
cwde
inc edx
xor word [rsp + rbx*4 - 0x1a02e5fe], 0x5688
jne 0x140132a62
call fcn.140120a59
bswap ebx
not cx
not ebx
cbw
dec rdi
shl dx, 0x86
inc ebx
add rcx, rcx
shr rax, 0xb4
mov ebp, 0xb0af8026
not ebx
sets dl
rol rax, cl
push r10
and dil, dl
lea rdi, [rdx + 0x1da09224]
xor dword [rsp + rcx - 0x1ba9c], ebx
add rax, rdx
pop r10
jae 0x140114470
cqo
sar rdx, 0x57
movsxd rbx, ebx
sub rax, rdi
call fcn.14012047e
lea ebx, [rbx + rcx*2 + 0x1c4e49c6]
ror dword [rsp + rcx - 0x27a1d324], 0x64
add dword [rsp + rcx - 0x27a1d321], edi
mov eax, dword [rsp + rcx - 0x27a1d324]
rol ebx, 1
cwde
mov qword [rsp + rcx*2 - 0x4f43a648], r10
movsx r10d, bp
cdq
xor dword [rsp + rcx - 0x27a1d324], ebx
xor al, dh
inc edi
not eax
pop r10
movsxd rbx, ebx
sal edx, cl
xchg edx, edi
neg bpl
add r8, rbx
or di, word [r11 + rcx - 0x27a1d320]
lea r11, [r11 + rcx*2 - 0x4f43a642]
jmp 0x14012f264
lea r11, [r11 + r9 - 0x20103b]
not byte [rsp + r9*2 - 0x402078]
or dword [rsp + r9 - 0x201038], r9d
ror byte [rsp + r9 - 0x201037], 0xc1
xor al, r10b
xchg word [rsp + rbp - 0x6cee59fc], r9w
xor al, 0x22
add r9w, word [rsp + rbp - 0x6cee5a00]
sub dx, word [rsp + rbp - 0x6cee59fc]
and ebp, edx
ror al, 1
shr edi, 0x9f
sar edi, 0xc6
rol rbp, 0x48
dec al
and qword [rsp + r9*2 - 0x4012fa], rbx
jae 0x14015e91e
mov ebx, 0xa6164891
or bl, dil
not al
and r9b, al
bts rcx, 0x93
not ebx
mov word [rsi + rdx*2 - 0x770d837c], r9w
rol bp, cl
mov edx, dword [rdx + r11 - 0x3b86c1bf]
shr rbx, cl
sar ebx, 0x2f
xor edx, r10d
inc bl
lea edx, [rcx + rdx + 0x28cbb5e3]
movzx eax, di
rol edx, 1
bswap ebx
lea edx, [rdx + rbp*8 - 0x57a0de39]
not edx
jmp 0x14012b75f
sbb bx, 0x76a4
mov qword [rsp + rbp - 0x40004605], rbx
add r8, rdx
inc bpl
jns 0x14015272d
adc r8, rcx
add rdx, r8
jmp rdx
neg dl
btr rax, r9
pop r10
movsxd rcx, ecx
and bl, bh
or ebx, ebx
adc r8, rcx
btc r9w, dx
rdtsc
movsx ecx, bpl
bts cx, bp
lea rsi, [rsi + rbp*2 - 0x7c]
rol r9b, 0x26
mov dword [rsi + rdi - 0x42118c35], eax
inc ecx
mov dword [rsi + rbp - 0x3a], edx
setnp cl
call fcn.1401519b9
mov r9d, 0xa681689e
mov rdi, qword [rsi + riz]
neg r9b
inc r9b
mov rax, qword [rsi + riz + 8]
mov cl, byte [rsi + riz + 0x10]
movzx ebp, r9b
call fcn.140155a73
mov edi, dword [r11]
mov ebp, 0x131ff2b9
movzx edx, bp
lea r11, [r11 + rbp*4 - 0x4c7fcae0]
xor edi, r10d
ror dl, 0x46
bswap edi
movsx r9d, dl
xor edi, 0x9a8dafba
lea edi, [rdi + rbp*8 + 0x1116c25c]
inc bpl
shl r9b, 1
movsx ecx, bp
bswap edi
push r10
movsx ebx, bpl
lea r10, [rcx*8 - 0x50662dd8]
xor dword [rsp + rbp*2 - 0x263fe574], edi
rol r9w, 0xc7
setb bpl
pop r10
call fcn.140124d88
xor dword [rsp + rdx*2 - 0xb49d82], ebx
sar di, 0x81
neg rdx
pop r10
or rbp, 0x181a2a23
movsxd rbx, ebx
dec bp
sbb cx, 0x3a2a
adc r8, rbx
sal rcx, 0xd0
dec cx
cqo
adc dl, byte [rdx + r11]
lea r11, [r11 + r9*2 - 0x1fd61]
xor dl, r10b
lea rcx, [rbp + 0x6113860e]
xor al, 0x26
shl ecx, cl
rol dl, 1
bts di, bp
xchg r9, rcx
btc edi, edi
neg dl
btr ax, ax
ror dl, 1
add dl, bpl
sub dil, al
sar bpl, 0x27
jbe 0x14011c3a1
setp r9b
xor ax, 0x626
sub ax, di
not rbx
xor r10w, ax
inc edi
or r9w, di
bts edx, ebp
add rax, rsp
rol di, 0xae
and bl, 0x14
mov rbx, qword [rax + rdi*4 - 0x20000]
call fcn.14012369b
movzx eax, word [rdi + r11 - 0x19a0cb99]
movzx ecx, dil
movzx ebx, dil
lea r11, [r11 + rdi - 0x19a0cb97]
dec bx
movsx ebp, cl
add bpl, dil
xor ax, r10w
sub ax, 0xa8b
movsx r9d, bx
movzx edx, bx
neg ebp
neg ax
neg rdx
rol ax, 1
pop rcx
add rcx, 0x1bc8d
jmp rcx
pop rdi
not al
not dl
sub dl, dl
xor al, 0x11
not di
neg al
neg ebx
push rbp
xor r10b, al
lea rax, [rsp + rax + 8]
add rbx, qword [rsp + rbx - 0x6f82afc4]
mov qword [r9 + rax - 0x20097d], rcx
push rdi
sbb word [rsp + r9 - 0x20097d], r9w
btc bx, di
mov qword [rsp + r9*4 - 0x8025f4], r8
ret 8