Function at 0x140097c40
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
sub rsp, 0x468
mov eax, dword [0x141f3d3e0]
xor eax, dword [0x141f3d3e4]
mov qword [rsp + 0x58], rcx
and eax, 0xc3bdd265
imul eax, eax, 0x638c79c7
cmp eax, 0xe7515a50
ja 0x140097ca6
mov eax, dword [0x141f3d3e8]
imul eax, dword [0x141f3d3ec]
xor eax, 0xf2d43433
add eax, 0xbe86c6df
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], 2
cmp eax, 0x63c90cf1
jae 0x140097cba
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], 2
jmp 0x140097c76
mov edi, 0xffffffff
mov qword [rsp + 0x50], 0
mov r15d, 0x200
mov eax, 2
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov rsi, qword [sym.imp.KERNEL32.dll_SetLastError]
mov rbx, qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea r13, [rsp + 0x40]
xor r14d, r14d
mov eax, dword [0x141f3d3f0]
and eax, dword [0x141f3d3f4]
cmp eax, 0x44a7a69c
je 0x140097cf0
cmp r15, 0x201
jae 0x140097d30
mov eax, 0x200
mov qword [rsp + 0x60], rax
lea r12, [rsp + 0x68]
mov r13, r15
jmp 0x140097e6a
mov eax, dword [0x141f3d3f8]
sub eax, dword [0x141f3d3fc]
or eax, 0x60965cd9
cmp eax, 0xb324c5f8
je 0x140097d30
sub r15, r14
mov rax, rcx
sub rax, r14
cmp r15, rax
ja 0x140097d8a
mov eax, dword [0x141f3d400]
and eax, dword [0x141f3d404]
mov edx, 0xcaf5d16d
imul rax, rdx
shr rax, 0x39
xor eax, 0xec5ecc26
imul eax, eax, 0xf6b5ba89
cmp eax, 0xff0b1031
jbe 0x140098038
jmp 0x14009807b
mov eax, dword [0x141f3d410]
xor edx, edx
div dword [str.I_bh_]
or eax, 0x1040c9a2
and eax, 0x32e0f9a2
imul eax, eax, 0x3ce226e5
cmp eax, 0xfcb06636
ja 0x140097e48
mov r12d, dword [0x141f3d418]
or r12d, dword [0x141f3d41c]
add r12d, 0x75276d45
mov eax, 0xbe23a47d
imul r12, rax
shr r12, 0x3f
mov qword [rsp + 0x20], 2
mov r9d, 2
mov rcx, r13
mov rdx, r14
mov r8, r15
call fcn.1401035b0
cmp r12d, 0xfd653179
je 0x140097e48
mov eax, dword [0x141f3d420]
imul eax, dword [0x141f3d424]
cmp eax, 0xbe290d5d
je 0x140097dfb
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x30], rax
nop
mov eax, dword [0x141f3d428]
or eax, dword [0x141f3d42c]
imul eax, eax, 0xdd526092
add eax, 0xde09337f
and eax, 0xca68bac9
cmp eax, 0xd0206437
jae 0x140097e20
jmp 0x140097d56
mov qword [rsp + 0x20], 2
mov r9d, 2
mov rcx, r13
mov rdx, r14
mov r8, r15
call fcn.1401035b0
jmp 0x140097db3
mov qword [rsp + 0x38], rcx
mov eax, dword [0x141f3d430]
sub eax, dword [0x141f3d434]
add eax, 0x7ddd2863
or eax, 0x30fe152d
and eax, 0x78feddaf
cmp eax, 0xd234a8b2
jbe 0x140097ea0
xor ecx, ecx
call rsi
xor ecx, ecx
mov rdx, r12
mov r8d, r13d
call rbx
nop
mov eax, dword [0x141f3d438]
or eax, dword [0x141f3d43c]
and eax, 0xbe1fb022
imul r15d, eax, 0x127b03cd
xor ecx, ecx
call rsi
xor ecx, ecx
mov rdx, r12
mov r8d, r13d
call rbx
cmp r15d, 0x102af5f0
je 0x140097ea0
mov ebp, eax
test eax, eax
jne 0x140097f10
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ecx, dword [0x141f3d440]
and ecx, dword [0x141f3d444]
add ecx, 0x2b637942
xor ecx, 0xaf620e1f
add ecx, 0x20ad39c4
cmp ecx, 0x648ab6e5
jb 0x140097ee0
test eax, eax
jne 0x1400981be
nop
mov eax, dword [0x141f3d470]
xor edx, edx
div dword [0x141f3d474]
imul rax, rax, 0x349eb75f
shr rax, 0x3d
or eax, 0xf9e9c48
xor eax, 0xe00e5ebd
cmp eax, 0xb93543e8
jb 0x140097f10
mov r15d, ebp
cmp r13, r15
jne 0x140098009
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [0x141f3d478]
or ecx, dword [0x141f3d47c]
or ecx, 0xb1091920
and ecx, 0xb10d1925
cmp ecx, 0x6213b757
jb 0x140097f4c
nop dword [rax]
mov ecx, dword [0x141f3d480]
and ecx, dword [0x141f3d484]
add ecx, 0xa130e384
and ecx, 0x231b1540
add ecx, 0x1ab0d34
cmp ecx, 0x5608ecfa
ja 0x140097f70
cmp eax, 0x7a
jne 0x1400981eb
lea rax, [r13*2]
mov ecx, dword [0x141f3d488]
mov edx, dword [0x141f3d48c]
add ecx, edx
add ecx, 0x793ec109
and ecx, 0xa562a45d
cmp ecx, 0xe29831b8
je 0x140097fa7
mov edx, 0xeb047bf5
nop
mov ecx, dword [0x141f3d490]
imul ecx, dword [0x141f3d494]
imul rcx, rdx
shr rcx, 0x3e
add ecx, 0xa1b9e96a
xor ecx, 0xda39f975
cmp r13, 0x7fffffff
mov r15, rax
cmova r15, rdi
cmp ecx, 0x9f57cab0
ja 0x140097fd0
jmp 0x140098010
jae 0x14009808e
nop
mov eax, dword [0x141f3d498]
xor eax, dword [0x141f3d49c]
imul eax, eax, 0x95c0df95
cmp eax, 0xc1279e35
je 0x140098010
mov rcx, qword [rsp + 0x38]
lea r13, [rsp + 0x40]
jmp 0x140097cf0
mov eax, dword [0x141f3d408]
xor edx, edx
div dword [0x141f3d40c]
add eax, 0x208969a7
and eax, 0x612cce97
cmp rcx, rdi
mov r14d, 0xffffffff
cmovb r14, rcx
mov qword [rsp + 0x50], r14
cmp eax, 0xb845ad63
je 0x14009807b
mov qword [rsp + 0x60], r14
mov r12, qword [rsp + 0x30]
mov r13, r14
jmp 0x140097e6a
cmp rcx, rdi
mov eax, 0xffffffff
cmovb rax, rcx
mov qword [rsp + 0x50], rax
jmp 0x140098038
mov rdi, qword [rsp + 0x58]
nop word cs:[rax + rax]
mov eax, dword [0x141f3d4a0]
add eax, dword [0x141f3d4a4]
or eax, 0x10008718
and eax, 0x10028f58
cmp eax, 0x68371ad6
je 0x1400980a0
cmp qword [rsp + 0x60], r15
jb 0x1400981f6
mov eax, dword [0x141f3d4a8]
xor edx, edx
div dword [0x141f3d4ac]
imul eax, eax, 0x6d70df96
add eax, 0x8a0038a0
or eax, 0xba80caf8
cmp eax, 0xfc2de2a0
jbe 0x140098100
mov rcx, rdi
mov rdx, r12
mov r8, r15
call fcn.1400918d0
nop dword [rax + rax]
mov eax, dword [0x141f3d4b0]
sub eax, dword [0x141f3d4b4]
xor eax, 0x97f6a648
shr eax, 2
imul rsi, rax, 0x43143c63
shr rsi, 0x3c
or esi, 0xd3aa247e
mov rcx, rdi
mov rdx, r12
mov r8, r15
call fcn.1400918d0
cmp esi, 0x89c0b6a7
jb 0x140098100
nop dword [rax + rax]
mov eax, dword [0x141f3d4b8]
xor edx, edx
div dword [0x141f3d4bc]
or eax, 0xa38518c2
add eax, 0x90caedc7
cmp eax, 0xc78517ec
ja 0x140098140
cmp qword [rsp + 0x38], 0
je 0x1400981a0
mov rcx, qword [0x141f49060]
xor edx, edx
mov r8, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov eax, dword [0x141f3d4c0]
sub eax, dword [0x141f3d4c4]
add eax, 0x3de98629
or eax, 0xfbff7f9f
cmp eax, 0x7c6788d6
jb 0x140098180
nop dword [rax]
mov eax, dword [0x141f3d4c8]
sub eax, dword [0x141f3d4cc]
imul eax, eax, 0x6f1ccc56
cmp eax, 0x7e7a66f4
je 0x1400981a0
jmp 0x140098333
movabs rsi, 0x8000000000000000
mov eax, dword [0x141f3d448]
xor eax, dword [0x141f3d44c]
imul eax, eax, 0x9149f86a
cmp eax, 0xcc5c7a81
mov rbx, qword [rsp + 0x58]
jne 0x140098261
jmp 0x140098295
ud2
mov eax, dword [0x141f3d4d0]
add eax, dword [0x141f3d4d4]
or eax, 0xabd867e3
xor eax, 0xe772053c
add eax, 0x1608f859
cmp eax, 0x8fa7db56
jbe 0x140098220
ud2
mov eax, dword [0x141f3d4d8]
add eax, dword [0x141f3d4dc]
imul eax, eax, 0xdda72783
add eax, 0x787f80ce
ud2
mov eax, dword [0x141f3d450]
add eax, dword [0x141f3d454]
and eax, 0x8c4e2296
imul edi, eax, 0xfdfebc1e
call qword [sym.imp.KERNEL32.dll_GetLastError]
shl rax, 0x20
or rax, 2
mov qword [rbx + 8], rax
mov qword [rbx], rsi
cmp edi, 0x56393917
jae 0x1400982ac
call qword [sym.imp.KERNEL32.dll_GetLastError]
shl rax, 0x20
or rax, 2
mov qword [rbx + 8], rax
mov qword [rbx], rsi
jmp 0x140098261
cmp qword [rsp + 0x38], 0
je 0x140098320
mov eax, dword [0x141f3d458]
imul eax, dword [0x141f3d45c]
and eax, 0x4300c680
cmp eax, 0xb4e64966
je 0x1400982da
mov rcx, qword [0x141f49060]
xor eax, eax
test al, al
je 0x1400982e3
mov rax, qword [0x141f49060]
jmp 0x1400982cd
xor edx, edx
mov r8, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [0x141f3d460]
xor edx, edx
div dword [0x141f3d464]
or eax, 0x690430b0
and eax, 0xedaf7cb3
add eax, 0x9e8baa71
cmp eax, 0xa59dbd5f
ja 0x1400982f0
nop word cs:[rax + rax]
mov eax, dword [0x141f3d468]
add eax, dword [0x141f3d46c]
cmp eax, 0x59811557
je 0x140098320
mov eax, 0xb5a0b053
nop dword [rax + rax]
mov ecx, dword [0x141f3d4e8]
or ecx, dword [0x141f3d4ec]
add ecx, 0xbeda43a4
shr ecx, 1
imul rcx, rax
shr rcx, 0x3a
add ecx, 0x1044e8da
cmp ecx, 0x60ae00a1
ja 0x140098340
add rsp, 0x468
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret