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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x38
lea rbp, [rsp + 0x30]
mov rsi, rcx
mov eax, dword [0x1415ca658]
or eax, dword [0x1415ca65c]
add eax, 0x1d5b1025
imul rax, rax, 0x5011dab9
shr rax, 0x3e
cmp eax, 0xb7c20730
ja 0x1401b31a9
mov eax, dword [0x1415ca660]
add eax, dword [0x1415ca664]
imul rax, rax, 0x5f86894f
shr rax, 0x3e
or eax, 0xfa5c1b04
mov ecx, eax
xor ecx, 0xbe9c75a7
and ecx, eax
mov eax, 0x20
call fcn.14021cf50
sub rsp, rax
mov r8, rsp
mov eax, 0x40
call fcn.14021cf50
sub rsp, rax
mov rdi, rsp
mov eax, 0x60
call fcn.14021cf50
sub rsp, rax
mov r15, rsp
cmp ecx, 0x167badca
jne 0x1401b31d5
mov eax, 0x20
call fcn.14021cf50
sub rsp, rax
mov eax, 0x40
call fcn.14021cf50
sub rsp, rax
mov eax, 0x60
call fcn.14021cf50
sub rsp, rax
jmp 0x1401b314b
mov qword [rbp - 0x10], r8
mov qword [rbp - 0x18], rdx
mov r12, qword [rdx]
movzx r13d, word [r12 + 0x3d2]
mov eax, dword [0x1415ca668]
mov ecx, dword [0x1415ca66c]
mov edx, ecx
not edx
mov r8d, eax
and r8d, edx
or edx, eax
not edx
imul edx, r8d
mov r8d, eax
and r8d, ecx
or eax, ecx
imul eax, r8d
add eax, edx
xor eax, 0x32ada0
or eax, 0x6ec55244
add eax, 0x77d260b0
cmp eax, 0x62f18b93
jae 0x1401b3250
movzx eax, byte [0x1415d3950]
sub rsp, 0x20
mov edx, 0x438
xor ecx, ecx
call fcn.140219830
add rsp, 0x20
nop word cs:[rax + rax]
mov eax, dword [0x1415ca670]
xor edx, edx
div dword [0x1415ca674]
mov ecx, eax
not ecx
and ecx, 0x5c9440e7
mov edx, eax
and edx, 0x236bbf18
imul edx, ecx
mov ecx, eax
and ecx, 0x5c9440e7
or eax, 0x5c9440e7
imul eax, ecx
lea r14d, [rax + rdx]
add r14d, 0x6ac276d2
or r14d, 0xa71f8b19
movzx eax, byte [0x1415d3950]
sub rsp, 0x20
mov edx, 0x438
xor ecx, ecx
call fcn.140219830
add rsp, 0x20
cmp r14d, 0xd99152a2
je 0x1401b3250
mov rbx, rax
test rax, rax
je 0x1401b33b1
mov eax, dword [0x1415ca680]
mov ecx, dword [0x1415ca684]
mov edx, eax
xor edx, ecx
not edx
or eax, ecx
and eax, edx
imul eax, eax, 0x887cbbc6
add eax, 0x2ea07106
mov ecx, 0xcd68716b
imul rcx, rax
shr rcx, 0x3f
cmp ecx, 0xedf55233
jne 0x1401b3306
mov qword [rbx + 0x160], 0
mov qword [rbp - 0x30], r13
mov r10, qword [rbp - 0x18]
mov r11, qword [rbp - 0x10]
nop word cs:[rax + rax]
mov eax, dword [0x1415ca688]
add eax, dword [0x1415ca68c]
mov ecx, eax
not ecx
and ecx, 0x7da80835
xor ecx, 0x138e1678
or eax, 0x138e1678
and eax, ecx
add eax, 0x86563fbf
mov qword [rbx + 0x160], 0
cmp eax, 0x7b22848e
jb 0x1401b3320
movabs rcx, 0x477a4f2b4109c7a3
mov eax, dword [0x1415ca690]
xor eax, dword [0x1415ca694]
mov edx, eax
not edx
and edx, 0x52261608
mov r8d, eax
and r8d, 0x2dd9e9f7
imul r8d, edx
mov edx, eax
and edx, 0x52261608
or eax, 0x52261608
imul eax, edx
add eax, r8d
xor eax, 0x22424000
or eax, 0x9d98242e
cmp eax, 0x9b00fadf
jae 0x1401b33fe
jmp 0x1401b34e8
ud2
mov eax, dword [0x1415ca698]
xor edx, edx
div dword [str.de4QF]
mov edx, eax
not edx
mov r8d, eax
and r8d, 0xf086561
and edx, 0xf0f79a9e
imul edx, r8d
mov r8d, eax
and r8d, 0xf0f79a9e
or eax, 0xf0f79a9e
imul eax, r8d
add eax, edx
mov edx, eax
not edx
and edx, 0x26259cb9
mov r8d, eax
and r8d, 0xd9da6346
imul r8d, edx
mov edx, eax
and edx, 0x26259cb8
or eax, 0x26259cb9
imul eax, edx
add eax, r8d
mov edx, 0xab02ebd3
imul rdx, rax
shr rdx, 0x3f
mov r14, qword [r10 + 0x10]
movzx r8d, word [r12 + 0x3d2]
mov r13, r14
not r13
add r13, r8
imul rax, r14, 0x38
mov word [rbx + 0x3d2], r13w
mov r9, qword [r12 + rax + 0x198]
mov qword [rdi + 0x30], r9
mov r9, r14
shl r9, 5
movups xmm0, xmmword [r12 + rax + 0x168]
movups xmm1, xmmword [r12 + rax + 0x178]
movups xmm2, xmmword [r12 + rax + 0x188]
movups xmmword [rdi + 0x20], xmm2
movups xmmword [rdi + 0x10], xmm1
movups xmmword [rdi], xmm0
movups xmm0, xmmword [r12 + r9]
movups xmm1, xmmword [r12 + r9 + 0x10]
movups xmmword [r11 + 0x10], xmm1
movups xmmword [r11], xmm0
cmp edx, 0xf040dbe2
jne 0x1401b3565
mov rax, qword [r10 + 0x10]
movzx edx, word [r12 + 0x3d2]
mov r8d, ecx
not r8d
xor r8d, ecx
mov r9d, r8d
and r9d, eax
xor r9d, r8d
add r9d, edx
mov word [rbx + 0x3d2], r9w
imul rdx, rax, 0x38
mov r8, qword [r12 + rdx + 0x198]
mov qword [rdi + 0x30], r8
movups xmm0, xmmword [r12 + rdx + 0x168]
movups xmm1, xmmword [r12 + rdx + 0x178]
movups xmm2, xmmword [r12 + rdx + 0x188]
movups xmmword [rdi + 0x20], xmm2
movups xmmword [rdi + 0x10], xmm1
movups xmmword [rdi], xmm0
shl rax, 5
movups xmm0, xmmword [r12 + rax]
movups xmm1, xmmword [r12 + rax + 0x10]
movups xmmword [r11 + 0x10], xmm1
movups xmmword [r11], xmm0
jmp 0x1401b33fe
cmp r13, 0xb
ja 0x1401b3668
lea r10, [r12 + 0x168]
lea rax, [r14 + 1]
mov rcx, r8
mov qword [rbp], rax
xor rcx, rax
nop word cs:[rax + rax]
mov eax, dword [0x1415ca6a0]
xor edx, edx
div dword [0x1415ca6a4]
xor eax, 0xb3300c8
add eax, 0x31f764fc
not eax
and eax, 0x34cfe025
cmp eax, 0x4d91e72b
ja 0x1401b3590
mov rax, qword [rbp]
not eax
and r8d, eax
add r8, r8
sub r8, rcx
nop word cs:[rax + rax]
mov eax, dword [0x1415ca6a8]
or eax, dword [0x1415ca6ac]
and eax, 0x90c06c48
mov ecx, eax
not ecx
lea edx, [rax + 0x273c01b3]
mov r9d, edx
and r9d, 0x363060b8
and ecx, 0x80c30c40
imul ecx, r9d
and edx, 0x81cc0d43
or eax, 0xa7ff0df3
imul eax, edx
add eax, ecx
cmp eax, 0x31d8477c
je 0x1401b35d0
mov qword [rbp - 0x20], rdi
mov qword [rbp - 0x28], r15
cmp r8, r13
jne 0x1401b3699
mov qword [rbp - 8], r14
mov eax, dword [0x1415ca6d4]
add eax, dword [0x1415ca6d0]
mov ecx, eax
and ecx, 0x9ffa115
and eax, 0xb0104
add eax, eax
sub ecx, eax
add ecx, 0xa00b054c
or ecx, 0xf435af60
cmp ecx, 0x5b2d32ec
mov r15, qword [rbp]
mov rdi, r10
jae 0x1401b3742
jmp 0x1401b37b1
ud2
mov eax, dword [0x1415ca6b0]
mov ecx, dword [0x1415ca6b4]
mov edx, ecx
not edx
and edx, eax
xor ecx, eax
add ecx, eax
sub ecx, edx
add ecx, 0x30aa7c9f
mov eax, ecx
and eax, 0xa94b2857
and ecx, 0xa8002856
sub eax, ecx
cmp eax, 0xa0157caf
je 0x1401b3708
mov eax, dword [0x1415ca6b8]
mov ecx, dword [0x1415ca6bc]
not eax
not ecx
or ecx, eax
not ecx
or ecx, 0x877ae0e
add ecx, 0x85a535a7
mov eax, ecx
and eax, 0x17a1d1e5
add eax, eax
sub ecx, eax
add ecx, 0x17e1d9e5
ud2
ud2
mov eax, dword [0x1415ca6d8]
xor eax, dword [0x1415ca6dc]
imul r14d, eax, 0xc5a164f4
add r14d, 0xa4c5220c
or r14d, 0xf8df2a94
imul rdx, r15, 0x38
add rdx, r10
lea rcx, [rbx + 0x168]
mov eax, r13d
not eax
and eax, 0x38
mov r9, r13
and r9, 0xffffffffffffffc7
imul r9, rax
mov eax, r13d
and eax, 0x38
mov r8, r13
or r8, 0x38
imul r8, rax
add r8, r9
sub rsp, 0x20
call fcn.14022aa10
mov r10, rdi
add rsp, 0x20
cmp r14d, 0x77190997
jne 0x1401b37d8
imul rdx, r15, 0x38
add rdx, r10
lea rcx, [rbx + 0x168]
imul r8, r13, 0x38
sub rsp, 0x20
call fcn.14022aa10
mov r10, rdi
add rsp, 0x20
jmp 0x1401b3742
mov r14, r15
shl r14, 5
add r14, r12
mov eax, dword [0x1415ca6e0]
imul eax, dword [0x1415ca6e4]
mov ecx, eax
not ecx
mov edx, eax
or edx, 0x2397e3eb
mov r8d, edx
and r8d, 0xa2c5cb72
and ecx, 0x5c281404
imul ecx, r8d
and edx, 0x5d3a348d
or eax, 0x7fbff7ef
imul eax, edx
add eax, ecx
xor eax, 0x616d2ffc
cmp eax, 0xd0900b39
ja 0x1401b389b
mov eax, dword [0x1415ca6e8]
mov ecx, eax
not ecx
or ecx, dword [0x1415ca6ec]
lea r15d, [rax + rcx]
add r15d, 0x8f86328d
mov eax, r15d
not eax
mov ecx, r15d
or ecx, 0x56ffd123
mov edx, ecx
and edx, 0xfe783af0
and eax, 0x100040c
imul eax, edx
and ecx, 0x187c50f
or r15d, 0x57ffd52f
imul r15d, ecx
add r15d, eax
mov r8, r13
shl r8, 5
sub rsp, 0x20
mov rcx, rbx
mov rdx, r14
call fcn.14022aa10
add rsp, 0x20
cmp r15d, 0x6b5ef320
jae 0x1401b38ba
mov r8, r13
shl r8, 5
sub rsp, 0x20
mov rcx, rbx
mov rdx, r14
call fcn.14022aa10
add rsp, 0x20
jmp 0x1401b382b
mov rax, qword [rbp - 8]
mov word [r12 + 0x3d2], ax
mov rcx, qword [rbp - 0x20]
mov rax, qword [rcx + 0x30]
mov r14, qword [rbp - 0x28]
mov qword [r14 + 0x30], rax
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmm2, xmmword [rcx + 0x20]
movups xmmword [r14 + 0x20], xmm2
movups xmmword [r14 + 0x10], xmm1
movups xmmword [r14], xmm0
mov rax, qword [rbp - 0x10]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r14 + 0x48], xmm1
movups xmmword [r14 + 0x38], xmm0
movzx edi, word [rbx + 0x3d2]
cmp rdi, 0xb
ja 0x1401b3b86
mov r10, qword [rbp - 0x30]
lea r8, [rdi + 1]
nop
mov eax, dword [0x1415ca6f0]
xor edx, edx
div dword [0x1415ca6f4]
mov ecx, eax
and ecx, 0x41248800
mov edx, ecx
not edx
and edx, 0xc1d6905e
mov r9d, eax
and r9d, 0x200800
imul r9d, edx
and eax, 0x41048000
or ecx, 0xc1d6905e
imul ecx, eax
add ecx, r9d
cmp ecx, 0x3f5472ea
je 0x1401b3920
mov r11, qword [rbp]
mov rcx, rbx
add rcx, 0x3d8
nop word cs:[rax + rax]
mov eax, dword [0x1415ca6f8]
or eax, dword [0x1415ca6fc]
xor eax, 0x9bcdd77a
mov edx, eax
and edx, 0x69c8f49a
add edx, edx
neg edx
add eax, edx
add eax, 0x69c8f49a
mov edx, eax
not edx
and edx, 0x108a8e66
mov r9d, eax
and r9d, 0xef757199
imul r9d, edx
mov edx, eax
and edx, 0x108a8e66
or eax, 0x108a8e66
imul eax, edx
add eax, r9d
cmp eax, 0x141d8252
jb 0x1401b3980
sub r10, qword [rbp - 8]
nop word [rax + rax]
mov eax, dword [0x1415ca700]
or eax, dword [0x1415ca704]
imul rax, rax, 0x179ba1c9
shr rax, 0x3b
cmp eax, 0x22960436
je 0x1401b39e0
cmp r10, r8
jne 0x1401b3bc0
lea rax, [r12 + 0x3d8]
lea r9, [rax + r11*8]
nop word cs:[rax + rax]
mov eax, dword [0x1415ca720]
xor edx, edx
div dword [0x1415ca724]
or eax, 0xa1913cc4
add eax, 0xd4d14495
not eax
and eax, 0xf9e357a9
cmp eax, 0xf1d1e2cf
ja 0x1401b3a20
shl r8, 3
sub rsp, 0x20
mov rdx, r9
call fcn.14022aa10
add rsp, 0x20
mov rax, qword [rbp - 0x18]
mov rcx, qword [rax + 8]
xor eax, eax
mov edx, 0xcd71f3e1
xor r8d, r8d
nop dword [rax]
mov r9d, dword [0x1415ca728]
or r9d, dword [0x1415ca72c]
imul r9d, r9d, 0xa2a6c00a
add r9d, 0xacdfaaa4
imul r9, rdx
shr r9, 0x3f
cmp r9d, 0x55dedd3a
jne 0x1401b3ac0
mov r9, qword [rbx + r8*8 + 0x3d8]
mov qword [r9 + 0x160], rbx
mov word [r9 + 0x3d0], r8w
nop word cs:[rax + rax]
cmp r8, rdi
setae r9b
mov r10, r8
adc r10, 0
mov r11, qword [rbx + r8*8 + 0x3d8]
mov qword [r11 + 0x160], rbx
mov word [r11 + 0x3d0], r8w
cmp r10, rdi
seta r11b
test al, al
jne 0x1401b3ac0
or r9b, r11b
mov r8, r10
je 0x1401b3a70
mov eax, dword [0x1415ca730]
or eax, dword [0x1415ca734]
add eax, 0xb4b548d7
imul rax, rax, 0x5faaf11d
shr rax, 0x3d
xor eax, 0x1118072
cmp eax, 0xa5d9bedc
jbe 0x1401b3b30
mov qword [rsi + 0x58], r12
mov qword [rsi + 0x60], rcx
nop dword [rax]
mov eax, dword [0x1415ca738]
xor eax, dword [0x1415ca73c]
imul eax, eax, 0xa3954e3e
add eax, 0xcf3758b4
mov qword [rsi + 0x58], r12
mov qword [rsi + 0x60], rcx
cmp eax, 0x97b3a97d
ja 0x1401b3b30
mov eax, dword [0x1415ca740]
sub eax, dword [0x1415ca744]
mov edx, 0xba66aa8d
imul rdx, rax
shr rdx, 0x3a
add edx, 0x1da4f4b0
cmp edx, 0x9054d88e
jbe 0x1401b3c62
jmp 0x1401b3cc2
mov eax, dword [0x1415ca758]
mov ecx, dword [0x1415ca75c]
mov edx, eax
xor edx, ecx
not edx
and edx, ecx
add edx, edx
sub ecx, edx
add ecx, eax
imul eax, ecx, 0xb28c0721
or eax, 0xac7e3560
and eax, 0xfcfeff73
cmp eax, 0x98ffe782
jae 0x1401b3d57
jmp 0x1401b3d63
mov eax, dword [0x1415ca708]
xor edx, edx
div dword [0x1415ca70c]
or eax, 0xb9679e7
add eax, 0xe2e9390c
not eax
or eax, 0xb48dd496
add eax, 0x1e94483d
jb 0x1401b3c15
mov eax, dword [0x1415ca710]
imul eax, dword [0x1415ca714]
mov ecx, eax
xor ecx, 0x13b5f52f
or eax, 0xec4a0ad0
and eax, ecx
xor eax, 0xdfa22eff
add eax, 0xd9634750
ud2
ud2
mov eax, dword [0x1415ca748]
xor edx, edx
div dword [str.23kH]
imul eax, eax, 0xb0687d59
and eax, 0x162ea79c
xor eax, 0x708593e7
mov rdx, qword [r14 + 0x50]
mov qword [rsi + 0x50], rdx
movups xmm0, xmmword [r14 + 0x40]
movups xmmword [rsi + 0x40], xmm0
movups xmm0, xmmword [r14]
movups xmm1, xmmword [r14 + 0x10]
movups xmm2, xmmword [r14 + 0x20]
movups xmm3, xmmword [r14 + 0x30]
movups xmmword [rsi + 0x30], xmm3
movups xmmword [rsi + 0x20], xmm2
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
mov qword [rsi + 0x68], rbx
mov qword [rsi + 0x70], rcx
cmp eax, 0x2c58c285
jae 0x1401b3d10
mov rax, qword [r14 + 0x50]
mov qword [rsi + 0x50], rax
movups xmm0, xmmword [r14 + 0x40]
movups xmmword [rsi + 0x40], xmm0
movups xmm0, xmmword [r14]
movups xmm1, xmmword [r14 + 0x10]
movups xmm2, xmmword [r14 + 0x20]
movups xmm3, xmmword [r14 + 0x30]
movups xmmword [rsi + 0x30], xmm3
movups xmmword [rsi + 0x20], xmm2
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
mov qword [rsi + 0x68], rbx
mov qword [rsi + 0x70], rcx
jmp 0x1401b3c62
mov eax, dword [0x1415ca750]
mov ecx, dword [0x1415ca754]
mov edx, eax
and edx, ecx
add edx, edx
add eax, ecx
sub eax, edx
mov ecx, eax
and ecx, 0x68871a60
or eax, 0x68871a60
add eax, ecx
or eax, 0xdc124
and eax, 0x405dcd66
cmp eax, 0x2f47a7b3
je 0x1401b3d10
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
ud2
ud2