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

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
mov r9, rdx
mov r8, rcx
mov rdi, qword [rcx]
nop word cs:[rax + rax]
mov eax, dword [0x141dc49d8]
add eax, dword [0x141dc49dc]
xor eax, 0x116790cf
imul eax, eax, 0x678f58e5
add eax, 0xd5058a15
cmp eax, 0xaff188dc
jb 0x140042b80
test rdi, rdi
je 0x140043230
and r9d, 0x3f
lea r10, [0x141db41a8]
nop word [rax + rax]
mov eax, dword [0x141dc49e0]
imul eax, dword [0x141dc49e4]
add eax, 0x567fd169
and eax, 0xdbed3231
cmp eax, 0x7224c165
ja 0x140042bc0
movzx r11d, word [r10 + r9*2]
mov esi, r11d
shr esi, 0xb
mov eax, 0x9a0ad1d3
and r11d, 0x7ff
nop word cs:[rax + rax]
mov ecx, dword [0x141dc49e8]
sub ecx, dword [0x141dc49ec]
imul rcx, rax
shr rcx, 0x3d
add ecx, 0xc4ec4b47
cmp ecx, 0x772dc3ce
jb 0x140042c00
nop word cs:[rax + rax]
mov eax, dword [0x141dc49f0]
xor eax, dword [0x141dc49f4]
add eax, 0xb55e2df
imul rax, rax, 0x13aa1015
shr rax, 0x3b
or eax, 0x32406a58
cmp eax, 0x5923b12b
je 0x140042c30
movzx eax, r11w
cmp eax, 0x51d
jae 0x1400433d3
mov eax, dword [0x141dc49f8]
xor edx, edx
div dword [0x141dc49fc]
nop word cs:[rax + rax]
mov eax, dword [0x141dc4a00]
or eax, dword [0x141dc4a04]
imul eax, eax, 0x32440aae
and eax, 0x205020b4
cmp eax, 0x8371db22
ja 0x140042c80
mov eax, dword [0x141dc4a08]
xor edx, edx
div dword [0x141dc4a0c]
lea rcx, [0x141db422a]
add rcx, r11
nop word cs:[rax + rax]
mov eax, dword [0x141dc4a10]
sub eax, dword [0x141dc4a14]
and eax, 0x52080482
xor eax, 0xc75f7a70
cmp eax, 0xbce9f22c
ja 0x140042cc0
movzx r10d, word [r10 + r9*2 + 2]
and r10d, 0x7ff
sub r10, r11
xor r11d, r11d
lea rbx, [0x141db4746]
nop word [rax + rax]
mov eax, dword [0x141dc4a18]
imul eax, dword [0x141dc4a1c]
imul ebp, eax, 0xef46ca0e
test r10, r10
sete al
cmp rcx, rbx
sete dl
cmp ebp, 0x8d0be979
je 0x140042d00
or al, dl
jne 0x140042f79
nop
mov eax, dword [0x141dc4a20]
and eax, dword [0x141dc4a24]
and eax, 0x491cb3c2
imul rax, rax, 0xed2419f
shr rax, 0x38
add eax, 0xe34d45ef
cmp eax, 0x22b06dba
jb 0x140042d30
lea r15, [rcx + 1]
mov r14, r11
or r14, 1
nop word cs:[rax + rax]
mov eax, dword [0x141dc4a28]
mov edx, dword [0x141dc4a2c]
add eax, edx
add eax, 0x55806944
or eax, 0x638012f1
and eax, 0x7f895ff5
cmp eax, 0xb02b471a
je 0x140042d70
movzx ebp, byte [rcx]
nop word [rax + rax]
mov eax, dword [0x141dc4a30]
mov edx, dword [0x141dc4a34]
add eax, edx
add eax, 0xe129d2b7
and eax, 0xc55f77b9
add eax, 0xc69b75a2
cmp eax, 0x94552ab5
ja 0x140042da0
cmp r11, rdi
je 0x140042f45
cmp r11, 0x300
je 0x1400433d3
mov eax, dword [0x141dc4a40]
xor edx, edx
div dword [0x141dc4a44]
nop dword [rax + rax]
mov eax, dword [0x141dc4a48]
xor eax, dword [0x141dc4a4c]
or eax, 0xc800420c
and eax, 0xdd48475f
add eax, 0xd7dcda38
cmp eax, 0x60a3f0da
jb 0x140042df0
movzx eax, byte [r8 + r11 + 8]
cmp al, bpl
jne 0x140042f3c
mov eax, dword [0x141dc4a50]
and eax, dword [0x141dc4a54]
or eax, 0xfe9b9e0f
imul eax, eax, 0xcc2555e3
cmp eax, 0x30e90541
ja 0x140042e21
nop
mov eax, dword [0x141dc4a58]
xor edx, edx
div dword [0x141dc4a5c]
add eax, 0xb1b604b7
or eax, 0x1171da52
cmp eax, 0x24cdd74d
je 0x140042e40
cmp r10, 1
je 0x140042f79
cmp r15, rbx
je 0x140042f79
add r10, 0xfffffffffffffffe
nop word cs:[rax + rax]
mov eax, dword [0x141dc4a60]
xor eax, dword [0x141dc4a64]
imul eax, eax, 0xcaabf093
add eax, 0xaac42c5
xor eax, 0xa912504e
cmp eax, 0x8f1767d2
jb 0x140042e80
nop word cs:[rax + rax]
mov eax, dword [0x141dc4a68]
sub eax, dword [0x141dc4a6c]
xor eax, 0x4dee2fa4
imul rax, rax, 0x57c861c1
shr rax, 0x3d
cmp eax, 0x701bd1d5
ja 0x140042eb0
cmp r14, rdi
je 0x140042f45
movzx ebp, byte [r15]
add r11, 2
mov eax, dword [0x141dc4a70]
and eax, dword [0x141dc4a74]
imul eax, eax, 0xbb9dcd32
xor eax, 0x999c53e0
imul rax, rax, 0xf219b2f
shr rax, 0x3b
cmp eax, 0xe32bbe15
je 0x140042ee0
add rcx, 2
mov eax, dword [0x141dc4a78]
xor edx, edx
div dword [0x141dc4a7c]
imul rax, rax, 0x463d3e31
shr rax, 0x3d
cmp eax, 0xc872050d
je 0x140042f0d
movzx eax, byte [r8 + r14 + 8]
cmp al, bpl
je 0x140042d00
cmp al, bpl
sbb rsi, 0
jmp 0x140042f79
dec rsi
nop dword [rax + rax]
mov eax, dword [0x141dc4a38]
imul eax, dword [0x141dc4a3c]
add eax, 0xe75207c7
xor eax, 0x87e08772
imul rax, rax, 0x448f85dd
shr rax, 0x3e
cmp eax, 0x13d7bfd7
ja 0x140042f50
lea r14, [rsi + rdi]
xor r15d, r15d
movabs rbx, 0xcccccccccccccccd
xor r10d, r10d
nop dword [rax]
mov eax, dword [0x141dc4a90]
or eax, dword [0x141dc4a94]
imul eax, eax, 0xd5939f29
add eax, 0x9d72ef55
and eax, 0x23c65fc3
cmp eax, 0xad477637
je 0x140042f90
cmp rdi, 0x301
jae 0x1400433ab
dec rdi
dec r14
nop word cs:[rax + rax]
mov eax, dword [0x141dc4ae0]
xor eax, dword [0x141dc4ae4]
add eax, 0xfe819104
or eax, 0xcfc45079
xor eax, 0xd6f04b5c
cmp eax, 0x1a02fc8
jb 0x140042fd0
mov eax, dword [0x141dc4ae8]
xor eax, dword [0x141dc4aec]
or eax, 0x526280a
xor eax, 0x88306d18
or eax, 0x12499265
cmp eax, 0xc99be48e
je 0x140042ff2
movzx r11d, byte [r8 + rdi + 8]
mov ecx, r9d
shl r11, cl
add r11, r10
mov rax, r11
mul rbx
mov r10, rdx
shr r10, 3
lea rax, [r10 + r10]
lea rcx, [rax + rax*4]
mov rax, r11
sub rax, rcx
cmp r14, 0x300
jae 0x140043050
mov byte [r8 + r14 + 8], al
jmp 0x1400430c0
mov ecx, dword [0x141dc4af8]
or ecx, dword [str.8Ih]
and ecx, 0x329ac823
or ecx, 0xc5443184
xor ecx, 0xa223dbb4
cmp ecx, 0x5a3a1eda
ja 0x140043050
test rax, rax
je 0x1400430c0
test r15b, r15b
jne 0x14004310d
mov eax, dword [0x141dc4b00]
add eax, dword [0x141dc4b04]
imul eax, eax, 0x8e78462d
add eax, 0x6ed53792
mov byte [r8 + 0x30c], 1
cmp eax, 0x8a990fc0
jb 0x14004310d
nop word [rax + rax]
test r15b, r15b
jne 0x1400430b0
nop word cs:[rax + rax]
mov eax, dword [0x141dc4b08]
xor eax, dword [0x141dc4b0c]
imul rax, rax, 0x8962b03
shr rax, 0x39
cmp eax, 0xf8d4ebe4
je 0x1400430c0
nop
mov eax, dword [0x141dc4b10]
xor eax, dword [0x141dc4b14]
add eax, 0x119a8a32
xor eax, 0xfde98f51
add eax, 0xb66890a3
cmp eax, 0x4112cc2
jb 0x1400430e0
test rdi, rdi
jne 0x140042f90
jmp 0x140043120
mov byte [r8 + 0x30c], 1
jmp 0x140043084
mov eax, dword [0x141dc4a88]
and eax, dword [0x141dc4a8c]
or eax, 0x9f03581f
imul rax, rax, 0xc480f1
shr rax, 0x37
add eax, 0xea5dbb93
cmp eax, 0xce28e29
jb 0x140043120
cmp r11, 0xa
jae 0x14004325c
mov rcx, qword [r8]
add rcx, rsi
cmp rcx, 0x300
mov eax, 0x300
cmovb rax, rcx
mov qword [r8], rax
add dword [r8 + 0x308], esi
nop word cs:[rax + rax]
mov ecx, dword [0x141dc4a98]
mov edx, dword [0x141dc4a9c]
add ecx, edx
add ecx, 0x78f34bbf
or ecx, 0x1ddcebe1
and ecx, 0x5dfdfbf7
cmp ecx, 0x3a29c66a
je 0x140043180
jmp 0x140043220
dec rax
mov qword [r8], rax
nop word cs:[rax + rax]
mov ecx, dword [0x141dc4aa0]
xor ecx, dword [0x141dc4aa4]
xor ecx, 0x9db3e651
imul ecx, ecx, 0x972b7a29
add ecx, 0x847abc5f
cmp ecx, 0x8beb3473
ja 0x1400431c0
nop word cs:[rax + rax]
mov ecx, dword [0x141dc4aa8]
and ecx, dword [0x141dc4aac]
imul rcx, rcx, 0x27f0dc39
shr rcx, 0x3d
imul ecx, ecx, 0x5c035a0d
imul rcx, rcx, 0x67cfea4d
shr rcx, 0x3b
cmp ecx, 0x7c133b3f
ja 0x1400431f0
test rax, rax
je 0x140043230
cmp byte [r8 + rax + 7], 0
je 0x1400431b0
nop dword [rax]
mov eax, dword [0x141dc4a80]
and eax, dword [0x141dc4a84]
imul rax, rax, 0x51adbd6b
shr rax, 0x3d
add eax, 0x24e14167
cmp eax, 0x7bf08296
ja 0x140043230
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
mov r9d, 0x8d742b9f
mov r11, rsi
jmp 0x14004327a
cmp rcx, 0xa
jb 0x140043152
mov rcx, r10
mov edi, dword [0x141dc4ab0]
add edi, dword [0x141dc4ab4]
or edi, 0xa000
xor edi, 0x42024800
and edi, 0x6202ea80
mov rax, rcx
mul rbx
cmp edi, 0x598fe9db
je 0x14004327d
mov r10, rdx
dec r11
shr r10, 3
lea rax, [r10 + r10]
lea rax, [rax + rax*4]
mov rdi, rcx
sub rdi, rax
cmp r11, 0x300
jae 0x1400432f0
mov byte [r8 + r11 + 8], dil
nop
mov eax, dword [0x141dc4ad8]
imul eax, dword [0x141dc4adc]
imul eax, eax, 0xc06eb1d9
cmp eax, 0xf4762f03
je 0x1400432d0
jmp 0x140043270
mov eax, dword [0x141dc4ab8]
xor edx, edx
div dword [0x141dc4abc]
imul rdx, rax, 0x1bda8f25
shr rdx, 0x20
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1f
imul eax, eax, 0x6922defa
cmp eax, 0x16eb3d40
je 0x1400432f0
nop
mov eax, dword [0x141dc4ac0]
xor eax, dword [0x141dc4ac4]
imul eax, eax, 0xe571f155
add eax, 0xcaabb15
imul rax, r9
shr rax, 0x3e
cmp eax, 0xa5211309
je 0x140043320
test rdi, rdi
je 0x140043270
mov eax, dword [0x141dc4ac8]
add eax, dword [0x141dc4acc]
imul eax, eax, 0xf507907
add eax, 0x9615d75e
and eax, 0x77a04f53
cmp eax, 0x9bd8a653
jbe 0x140043380
mov byte [r8 + 0x30c], 1
nop word [rax + rax]
mov eax, dword [0x141dc4ad0]
xor eax, dword [0x141dc4ad4]
imul eax, eax, 0x472191dc
add eax, 0x6ec5bce6
mov byte [r8 + 0x30c], 1
cmp eax, 0xbf0d3dca
ja 0x140043380
jmp 0x140043270
ud2
ud2