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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov r8, rcx
nop
mov eax, dword [0x14158eb58]
mov ecx, dword [0x14158eb5c]
not eax
not ecx
or ecx, eax
mov eax, ecx
not eax
xor ecx, 0x711f73df
and eax, 0x311f73df
add eax, eax
sub eax, ecx
or eax, 0xbaf81fd4
mov ecx, eax
xor ecx, 0x53700eeb
and eax, 0x2c8ff114
add eax, eax
sub eax, ecx
cmp eax, 0xa576d9c0
ja 0x1400945c0
mov r11, qword [r8]
nop word cs:[rax + rax]
mov eax, dword [0x14158eb60]
or eax, dword [0x14158eb64]
and eax, 0x4c70d47b
xor eax, 0xc3e2f3d6
add eax, 0xf14ff045
cmp eax, 0xba136450
ja 0x140094610
test r11, r11
je 0x1400950b0
mov rax, rdx
not rax
or rax, 0x3f
lea rcx, [rdx + rax]
inc rcx
nop dword [rax]
mov eax, dword [0x14158eb68]
xor edx, edx
div dword [0x14158eb6c]
add eax, 0x262d2a65
mov edx, eax
xor edx, 0x147e696f
and eax, 0x6b819690
add eax, eax
sub eax, edx
mov edx, eax
not edx
and edx, 0x94033c5b
mov r9d, eax
and r9d, 0x6bfcc3a4
imul r9d, edx
mov edx, eax
and edx, 0x94033c5b
or eax, 0x94033c5b
imul eax, edx
add eax, r9d
cmp eax, 0x8cf7a8d4
je 0x140094650
lea r10, [0x141574660]
movzx esi, word [r10 + rcx*2]
mov r9d, esi
shr r9d, 0xb
mov eax, esi
xor eax, 0xfffff800
or esi, 0x7ff
and esi, eax
nop dword [rax + rax]
mov eax, dword [0x14158eb70]
xor edx, edx
div dword [0x14158eb74]
mov edx, eax
not edx
and edx, 0x2d6e21
mov edi, eax
and edi, 0x3d291de
imul edi, edx
mov edx, eax
and edx, 0x2d6e21
or eax, 0x2d6e21
imul eax, edx
add eax, edi
or eax, 0xf83a6fd0
and eax, 0xfbbf7fd6
cmp eax, 0xdac92a9d
jb 0x1400946d0
movzx eax, si
cmp eax, 0x51d
jae 0x140095102
mov rdx, rcx
or rdx, 1
xor esi, esi
nop dword [rax]
test sil, sil
jne 0x140094730
mov esi, ecx
and esi, 1
add rsi, rdx
movzx edx, word [r10 + rsi*2]
mov r10d, edx
xor r10d, 0xf800
and r10d, edx
lea rsi, [0x1415746e2]
add rsi, rax
nop dword [rax]
mov edx, dword [0x14158eb80]
add edx, dword [0x14158eb84]
not edx
and edx, 0xea11bff8
mov edi, edx
or edi, 0x1c62fa30
sub edi, edx
add edi, 0x94e9a87
cmp edi, 0x66fc87b1
ja 0x140094760
sub r10, rax
xor edi, edi
lea rbx, [0x141574bfe]
xor r14d, r14d
nop dword [rax + rax]
mov eax, dword [0x14158eb88]
xor edx, edx
div dword [0x14158eb8c]
mov eax, dword [0x14158eb90]
imul eax, dword [0x14158eb94]
imul rax, rax, 0x54683117
shr rax, 0x3e
imul ebp, eax, 0x5784aa6e
add ebp, 0xab9d9bef
test r10, r10
sete al
cmp rsi, rbx
sete dl
cmp ebp, 0xe25245fd
ja 0x1400947ae
or al, dl
jne 0x140094a24
lea r15, [rsi + 1]
mov eax, dword [0x14158eb98]
sub eax, dword [0x14158eb9c]
or eax, 0x79c5ba42
and eax, 0xffedbaf2
imul rax, rax, 0x684d2a45
shr rax, 0x3e
cmp eax, 0x3ff56a92
je 0x1400947f2
cmp r14, r11
je 0x1400949ed
cmp r14, 0x300
je 0x1400951c6
mov r12, r14
or r12, 1
movzx ebp, byte [rsi]
mov eax, dword [0x14158eba8]
xor edx, edx
div dword [0x14158ebac]
mov eax, dword [0x14158ebb0]
or eax, dword [0x14158ebb4]
mov edx, eax
not edx
or edx, 0x14041020
and edx, 0xf6c6b6a0
and eax, 0x9095f
sub eax, edx
add eax, 0x1fbf7a5a
cmp eax, 0xc09b6f3a
ja 0x140094848
movzx eax, byte [r8 + r14 + 8]
mov edx, dword [0x14158ebb8]
xor edx, dword [0x14158ebbc]
imul rdx, rdx, 0xde5afd5
shr rdx, 0x3b
mov r13d, edx
xor r13d, 0x420b8881
add r13d, edx
or r13d, 0x14cdf764
cmp r13d, 0x5b728a99
ja 0x14009487d
nop word cs:[rax + rax]
mov edx, dword [0x14158ebc0]
or edx, dword [0x14158ebc4]
mov r13d, edx
xor r13d, 0xba0143de
and edx, 0x45febc21
add edx, edx
sub edx, r13d
imul edx, edx, 0xfd48a77a
add edx, 0x9679ae61
cmp edx, 0xb3077bae
ja 0x1400948c0
cmp al, bpl
jne 0x1400949c0
nop
mov eax, dword [0x14158ebc8]
sub eax, dword [0x14158ebcc]
add eax, 0x282b67ca
mov edx, eax
xor edx, 0x4cdf939
and eax, 0x33206c6
add eax, eax
sub eax, edx
and eax, 0x56b3242
cmp eax, 0xe2490ebf
ja 0x140094900
cmp r10, 1
je 0x140094a24
add r10, 0xfffffffffffffffe
nop dword [rax]
mov eax, dword [0x14158ebd0]
xor edx, edx
div dword [0x14158ebd4]
xor eax, 0x1a9767cc
imul rax, rax, 0x7d6eed53
shr rax, 0x3d
cmp eax, 0xe41c4d8f
ja 0x140094940
cmp r15, rbx
je 0x140094a24
test dil, dil
jne 0x14009496e
cmp r12, r11
je 0x1400949ed
mov eax, dword [0x14158ebd8]
xor edx, edx
div dword [0x14158ebdc]
nop word cs:[rax + rax]
test dil, dil
jne 0x140094990
movzx ebp, byte [r15]
mov eax, r14d
and eax, 2
xor r14, 2
lea r14, [r14 + rax*2]
add rsi, 2
movzx eax, byte [r8 + r12 + 8]
cmp al, bpl
je 0x1400947a0
nop word [rax + rax]
mov edx, dword [str.b_K4_tY]
imul edx, dword [0x14158ebe4]
and edx, 0x47494801
add edx, 0x8a1ba64b
cmp al, bpl
mov rsi, r9
sbb rsi, 0
cmp edx, 0x7e0ac5d5
jb 0x1400949c0
jmp 0x140094a27
dec r9
mov eax, dword [0x14158eba0]
or eax, dword [0x14158eba4]
and eax, 0x735886c8
add eax, 0xe746edde
mov edx, eax
not edx
or edx, 0xb3d75874
or eax, 0x4c0ee78e
and eax, edx
cmp eax, 0x4db8d494
je 0x1400949f0
mov al, 1
test al, al
je 0x140094a20
mov rsi, r9
lea rbx, [rsi + r11]
nop dword [rax + rax]
mov eax, dword [0x14158ebe8]
sub eax, dword [0x14158ebec]
add eax, 0x2ee85eef
or eax, 0xea87a6d6
add eax, 0xc88266b2
cmp eax, 0x4cd2035c
jb 0x140094a30
xor r14d, r14d
movabs rdi, 0xcccccccccccccccd
mov r15d, 0xa0c44a17
xor r9d, r9d
nop dword [rax + rax]
mov eax, dword [0x14158ebf8]
mov edx, dword [0x14158ebfc]
not eax
not edx
or edx, eax
not edx
or edx, 0x5b22b063
add edx, 0x9745ee78
cmp edx, 0x9b469dfd
jb 0x140094a70
cmp r11, 0x301
jae 0x140095152
dec r11
mov rax, rbx
not rax
lea rbx, [rax + rbx*2]
movzx r10d, byte [r8 + r11 + 8]
shl r10, cl
add r10, r9
mov eax, dword [0x14158ec60]
sub eax, dword [0x14158ec64]
imul rax, rax, 0xfd7c61f
shr rax, 0x36
imul ebp, eax, 0x5438c3d7
add ebp, 0x30605c93
mov rax, r10
mul rdi
cmp ebp, 0xf80ee36c
ja 0x140094abe
mov r9, rdx
shr r9, 3
lea rax, [r9 + r9]
lea rax, [rax + rax*4]
neg rax
add rax, r10
cmp rbx, 0x300
jae 0x140094b7c
mov edx, dword [0x14158ec80]
mov r12d, dword [0x14158ec84]
mov ebp, edx
xor ebp, r12d
not r12d
and r12d, edx
add r12d, r12d
sub r12d, ebp
imul rdx, r12, 0x46de8ab3
shr rdx, 0x3a
mov ebp, edx
xor ebp, 0x98ea8e98
or edx, 7
and edx, ebp
mov ebp, edx
xor ebp, 0xcfaa31f6
and edx, 9
add edx, edx
sub edx, ebp
cmp edx, 0x43a82e22
je 0x140094b0d
test r14b, r14b
je 0x140094b70
mov byte [r8 + rbx + 8], al
nop word cs:[rax + rax]
mov byte [r8 + rbx + 8], al
test r14b, r14b
jne 0x140094b70
jmp 0x140094be0
test rax, rax
je 0x140094be0
mov byte [r8 + 0x30c], 1
nop dword [rax]
mov eax, dword [0x14158ec70]
mov edx, dword [0x14158ec74]
mov ebp, eax
not ebp
and ebp, edx
mov r12d, edx
not r12d
and r12d, eax
imul r12d, ebp
mov ebp, eax
and ebp, edx
or eax, edx
imul eax, ebp
add eax, r12d
mov edx, eax
xor edx, 0x22114190
xor eax, 0x48c0a04
and eax, 0xccecae25
and edx, 0x331351da
or edx, eax
cmp edx, 0xf882d481
je 0x140094b90
nop dword [rax]
mov eax, dword [0x14158ec78]
mov edx, dword [0x14158ec7c]
mov ebp, eax
xor ebp, edx
not edx
and edx, eax
add edx, edx
sub edx, ebp
or edx, 0x8d87ea23
imul rdx, r15
shr rdx, 0x3e
mov eax, edx
add eax, eax
neg eax
add eax, edx
add eax, 0x608235e7
cmp eax, 0xdc611739
ja 0x140094be0
test r11, r11
jne 0x140094a70
cmp r10, 0xa
jb 0x140094ec7
movabs r10, 0x370cbdff3e523943
mov r11d, 0xd2fbaa79
mov rbx, rsi
mov ebp, dword [0x14158ec20]
or ebp, dword [str.X90Q]
or ebp, 0x46a48000
and ebp, 0x5ea48004
mov rax, r9
mul rdi
cmp ebp, 0x10b90f2f
jb 0x140094c40
mov rcx, rdx
dec rbx
shr rcx, 3
lea rax, [rcx + rcx]
lea rdx, [rax + rax*4]
add rdx, r10
mov rax, r9
sub rax, rdx
add rax, r10
cmp rbx, 0x300
jae 0x140094d10
mov edx, dword [0x14158ec50]
xor edx, dword [0x14158ec54]
shr edx, 2
imul rdx, rdx, 0x8e5dcc9
shr rdx, 0x39
imul edx, edx, 0x91ef6132
imul rdx, rdx, 0x40f20873
shr rdx, 0x3d
cmp edx, 0xba62d7bb
jbe 0x140094cd0
mov byte [r8 + rbx + 8], al
nop dword [rax]
mov edx, dword [0x14158ec58]
imul edx, dword [0x14158ec5c]
add edx, 0x38fd0dc2
imul r14, rdx, 0x720db17
shr r14, 0x20
sub edx, r14d
shr edx, 1
add edx, r14d
shr edx, 0x1f
mov byte [r8 + rbx + 8], al
cmp edx, 0xe7999287
je 0x140094cd0
jmp 0x140094e80
mov edx, dword [0x14158ec28]
add edx, dword [str._IW_]
mov ebp, edx
and ebp, 0x56d1a88c
add ebp, ebp
sub edx, ebp
add edx, 0xd6d1a88c
mov ebp, edx
not ebp
mov r14d, edx
and r14d, 0xf3bbe66b
and ebp, 0xc441994
imul ebp, r14d
mov r14d, edx
and r14d, 0xc441994
or edx, 0xc441994
imul edx, r14d
add edx, ebp
mov ebp, edx
not ebp
mov r14d, edx
and r14d, 0x3ce2d024
and ebp, 0xc31d2fd8
imul ebp, r14d
mov r14d, edx
and r14d, 0xc31d2fd8
or edx, 0xc31d2fd8
imul edx, r14d
add edx, ebp
cmp edx, 0x10be8d6
jb 0x140094d10
nop word cs:[rax + rax]
mov edx, dword [0x14158ec30]
sub edx, dword [0x14158ec34]
mov r14d, edx
and r14d, 0x3ded401e
add r14d, r14d
neg r14d
add edx, r14d
add edx, 0x3ded401e
mov ebp, edx
not ebp
and ebp, 0xe7de500d
mov r14d, edx
and r14d, 0x1821aff2
imul r14d, ebp
mov ebp, edx
and ebp, 0xe7de500d
or edx, 0xe7de500d
imul edx, ebp
add edx, r14d
add edx, 0x535804bc
cmp edx, 0xc4394434
ja 0x140094da0
test rax, rax
je 0x140094e80
mov eax, dword [0x14158ec38]
mov edx, dword [0x14158ec3c]
not eax
not edx
and edx, eax
not edx
imul rdx, r11
shr rdx, 0x3e
xor edx, 0x6012081
or edx, 0xe9fe9970
cmp edx, 0xc2eca27d
jae 0x140094e40
mov byte [r8 + 0x30c], 1
nop dword [rax]
mov eax, dword [0x14158ec40]
xor edx, edx
div dword [0x14158ec44]
mov edx, eax
and edx, 0x7a53b249
xor eax, 0xfa53b249
lea eax, [rax + rdx*2]
imul eax, eax, 0xa7c40221
mov byte [r8 + 0x30c], 1
cmp eax, 0x46902764
ja 0x140094e40
nop word cs:[rax + rax]
mov eax, dword [0x14158ec48]
mov edx, dword [0x14158ec4c]
xor edx, eax
not edx
and edx, eax
mov eax, edx
and eax, 0x31b30f1b
add eax, eax
sub edx, eax
imul eax, edx, 0x61f47970
add eax, 0x1365ed0
imul rax, rax, 0x5525d1b1
shr rax, 0x3e
cmp eax, 0xc9e04477
ja 0x140094e80
cmp r9, 0xa
mov r9, rcx
jae 0x140094c40
mov rcx, qword [r8]
add rcx, rsi
xor edx, edx
nop
cmp rcx, 0x300
mov eax, 0x300
cmovb rax, rcx
test dl, dl
jne 0x140094ed0
mov qword [r8], rax
add dword [r8 + 0x308], esi
test rax, rax
je 0x1400950b0
mov ecx, 0xb2b591d3
nop dword [rax]
cmp byte [rax + r8 + 7], 0
jne 0x1400950b0
dec rax
mov edx, dword [0x14158ec00]
sub edx, dword [0x14158ec04]
mov r9d, edx
not r9d
mov r10d, edx
and r10d, 0xb521c840
and r9d, 0x4ade37bf
imul r9d, r10d
mov r10d, edx
and r10d, 0x4ade37bf
or edx, 0x4ade37bf
imul edx, r10d
add edx, r9d
imul rdx, rcx
shr rdx, 0x3f
not edx
and edx, 0x121c317
cmp edx, 0x69816d07
ja 0x1400950a0
nop dword [rax]
mov edx, dword [0x14158ec08]
add edx, dword [0x14158ec0c]
mov r9d, edx
not r9d
and r9d, 0xc175251
and edx, 0xf3e8adae
sub edx, r9d
imul rdx, rdx, 0x3dbcdf43
shr rdx, 0x3d
add edx, 0x5c60a6e3
mov qword [r8], rax
cmp edx, 0x3e027f47
jb 0x1400950a0
nop word cs:[rax + rax]
mov edx, dword [0x14158ec10]
mov r9d, dword [0x14158ec14]
mov r10d, r9d
not r10d
mov r11d, edx
and r11d, r10d
or r10d, edx
not r10d
imul r10d, r11d
mov r11d, edx
and r11d, r9d
or edx, r9d
imul edx, r11d
add edx, r10d
and edx, 0x4100185
lea r9d, [rdx + 0x4a40ee72]
not edx
and edx, 0x18c
and r9d, 0x4e50ee73
or r9d, edx
xor r9d, 0x8a278162
cmp r9d, 0x95dfcb8
jb 0x140094fc0
nop word cs:[rax + rax]
mov edx, dword [0x14158ec18]
or edx, dword [0x14158ec1c]
mov r9d, edx
xor r9d, 0x41043080
xor edx, 0x16e1c83e
mov r10d, edx
and r10d, 0xa87a075d
and r9d, 0x5785f8a2
imul r9d, r10d
mov r10d, edx
and r10d, 0x5785f8a2
or edx, 0x5785f8a2
imul edx, r10d
add edx, r9d
and edx, 0x927805ca
cmp edx, 0x4b125d4b
je 0x140095030
test rax, rax
jne 0x140094f00
jmp 0x1400950b0
mov qword [r8], rax
jmp 0x140094f70
mov eax, dword [0x14158ebf0]
mov ecx, dword [0x14158ebf4]
not eax
not ecx
or ecx, eax
not ecx
shr ecx, 2
imul rax, rcx, 0x425f7def
mov rcx, rax
shr rcx, 0x3b
or ecx, 0xfe40e35d
bt rax, 0x3b
adc ecx, 0
mov eax, ecx
not eax
or eax, 0xead1bcf6
add eax, ecx
cmp eax, 0xde84c4d9
je 0x1400950b0
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
ud2
ud2
ud2