Function at 0x1400fa4b0
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
push rax
mov rbp, rsp
mov r13, r9
mov rsi, r8
mov rbx, rdx
mov r12, rcx
mov eax, dword [0x141dce9c8]
sub eax, dword [0x141dce9cc]
mov ecx, 0xe487ff53
imul rcx, rax
shr rcx, 0x3f
imul eax, ecx, 0xe5c3150
cmp eax, 0x28cdc12c
jne 0x1400fa500
mov eax, 0x10
call fcn.1400f1350
sub rsp, rax
nop
mov eax, dword [0x141dce9d0]
xor edx, edx
div dword [0x141dce9d4]
mov ecx, eax
add ecx, 0xf64b1785
xor ecx, 0x63f2e08b
mov eax, 0x10
call fcn.1400f1350
sub rsp, rax
mov r14, rsp
cmp ecx, 0x116ba577
jb 0x1400fa500
mov eax, dword [0x141dce9d8]
xor eax, dword [0x141dce9dc]
imul eax, eax, 0xc7e3ca88
add eax, 0xf859949b
mov ecx, 0xcc719a71
imul rcx, rax
shr rcx, 0x3c
cmp ecx, 0x8a414dd2
je 0x1400fa59c
mov eax, dword [0x141dce9e0]
xor eax, dword [0x141dce9e4]
or eax, 0x30d6238b
add eax, 0xb6d7a6
imul rdx, rax, 0x56f320ab
shr rdx, 0x3e
mov rcx, qword [rbx]
mov r8d, 1
xor eax, eax
lock cmpxchg qword [rsi], r8
sete al
cmp edx, 0x19e7e4c1
jne 0x1400fa5aa
mov ecx, 1
xor eax, eax
lock cmpxchg qword [rsi], rcx
jmp 0x1400fa560
test al, al
je 0x1400fb070
nop word cs:[rax + rax]
mov eax, dword [0x141dce9e8]
xor edx, edx
div dword [str.3aE_a_]
imul rax, rax, 0x1142c9c3
shr rax, 0x3c
imul eax, eax, 0x90dbc478
add eax, 0x476c2136
cmp eax, 0xd81bf75d
ja 0x1400fa5c0
nop dword [rax + rax]
mov eax, dword [0x141dce9f0]
xor edx, edx
div dword [0x141dce9f4]
xor eax, 0x32b92e3f
imul eax, eax, 0x45804b69
cmp eax, 0x5da86317
je 0x1400fa5f0
cmp rcx, qword [r12 + 0x10]
jae 0x1400fa9b1
mov rax, qword [r12 + 8]
shl rcx, 7
lea r15, [rax + rcx]
lea rdi, [rax + rcx]
add rdi, 4
mov eax, dword [0x141dce9f8]
and eax, dword [0x141dce9fc]
xor eax, 0x9d161bf5
imul eax, eax, 0x81de1db5
cmp eax, 0xbcec414b
je 0x1400fa630
mov eax, dword [0x141dcea00]
xor eax, dword [0x141dcea04]
cmp eax, 0xa7f42f22
jne 0x1400fa669
mov cl, 1
xor eax, eax
lock cmpxchg byte [rdi], cl
xor ecx, ecx
mov dl, 1
nop dword [rax]
xor eax, eax
lock cmpxchg byte [rdi], dl
sete al
test cl, cl
jne 0x1400fa670
test al, al
je 0x1400fa9da
mov ecx, 2
mov eax, 1
lock cmpxchg qword [rsi], rcx
sete al
nop word [rax + rax]
mov ecx, dword [str._w_b]
add ecx, dword [0x141dcea0c]
xor ecx, 0x317f0086
imul ecx, ecx, 0x3cb05b
add ecx, 0x627f0a9d
cmp ecx, 0xb48fcf2f
ja 0x1400fa6a0
mov ecx, 0xcb5d44fb
nop dword [rax + rax]
mov edx, dword [0x141dcea10]
sub edx, dword [0x141dcea14]
add edx, 0xb649a932
and edx, 0x8b23dfb6
imul rdx, rcx
shr rdx, 0x3c
cmp edx, 0xb09983a9
ja 0x1400fa6d0
test al, al
je 0x1400fa7fa
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x1400fa710
mov ecx, 0x80b3fcb3
mov edx, 0xa764d327
nop
mov eax, dword [0x141dcea38]
xor eax, dword [0x141dcea3c]
imul rax, rcx
shr rax, 0x3e
add eax, 0x7cd7df62
imul rax, rax, 0x85c3c01
shr rax, 0x3a
cmp eax, 0x8a215339
je 0x1400fa7f0
nop
mov r8d, dword [0x141dcea40]
sub r8d, dword [0x141dcea44]
xor r8d, 0x40581200
and r8d, 0x745a3f54
mov rax, qword [r12 + 0x18]
cmp r8d, 0x5bf26b04
je 0x1400fa7f0
mov r8, rax
shr r8, 0x20
cmp r8, qword [rbx + 8]
jne 0x1400fa826
nop dword [rax + rax]
mov r8d, dword [0x141dcea48]
imul r8d, dword [0x141dcea4c]
imul r8d, r8d, 0xb815de2
cmp r8d, 0x70bf0473
je 0x1400fa790
lea r8, [rax + 1]
lock cmpxchg qword [r12 + 0x18], r8
sete al
mov r8d, dword [0x141dcea50]
add r8d, dword [0x141dcea54]
xor r8d, 0xee4e5e9a
imul r8, rdx
shr r8, 0x3f
cmp r8d, 0x64ae982e
je 0x1400fa7bd
test al, al
je 0x1400fa720
jmp 0x1400fa84a
mov rax, qword [r12 + 0x18]
jmp 0x1400fa750
mov eax, dword [0x141dcea20]
xor eax, dword [0x141dcea24]
imul eax, eax, 0x3fbed21c
or eax, 0xcbf8fee3
and eax, 0xfbfdffeb
cmp eax, 0xef62383b
jbe 0x1400facc6
jmp 0x1400facf2
mov eax, dword [0x141dcea58]
xor edx, edx
div dword [0x141dcea5c]
imul eax, eax, 0x262af0a
cmp eax, 0x151b8c26
jne 0x1400fad37
jmp 0x1400fad6a
mov eax, dword [0x141dcea78]
sub eax, dword [0x141dcea7c]
xor eax, 0x881883c
and eax, 0xc8c1b9fe
imul rax, rax, 0x104c9f73
shr rax, 0x38
cmp eax, 0x3a5ecef4
jbe 0x1400fa880
mfence
nop word cs:[rax + rax]
mov eax, dword [0x141dcea80]
xor edx, edx
div dword [0x141dcea84]
add eax, 0xf2dcf786
imul rax, rax, 0x32da24ed
shr rax, 0x3d
mfence
cmp eax, 0xf6c01c4
ja 0x1400fa880
mov rax, qword [r13 + 0x138]
mov rcx, qword [rax + 0x100]
mfence
mov rax, qword [rax + 0x108]
sub rax, rcx
xor ecx, ecx
nop word cs:[rax + rax]
test cl, cl
jne 0x1400fa8d0
test rax, rax
jg 0x1400fa984
mov rcx, qword [r13 + 0x110]
mov rax, qword [rcx + 0x80]
mov edx, dword [0x141dcea88]
or edx, dword [0x141dcea8c]
and edx, 0x402c0004
xor edx, 0x680005
cmp edx, 0x14fb3e6a
jae 0x1400fa912
mov rdx, qword [rcx + 0x100]
mov edx, 0x9b5fee19
nop word [rax + rax]
mov r9d, dword [0x141dcea90]
imul r9d, dword [0x141dcea94]
imul r9, rdx
shr r9, 0x3e
or r9d, 0x4ef00f3e
add r9d, 0xbef2bfb6
mov r8, qword [rcx + 0x100]
cmp r9d, 0xde9f64d
ja 0x1400fa920
xor r8, rax
nop dword [rax + rax]
mov eax, dword [0x141dcea98]
or eax, dword [0x141dcea9c]
imul eax, eax, 0x96fc2d48
and eax, 0x42353f78
cmp eax, 0x72f34fec
ja 0x1400fa960
cmp r8, 1
jbe 0x1400fa9ef
mov eax, dword [0x141dceaa0]
imul eax, dword [0x141dceaa4]
imul eax, eax, 0xb3079166
add eax, 0xbb7dfba9
xor eax, 0x614c1008
cmp eax, 0xbbf3b03e
jbe 0x1400fae3c
jmp 0x1400fae67
ud2
sub rsp, 0x20
mov rcx, rdi
call fcn.1400fdaa0
add rsp, 0x20
jmp 0x1400fa685
mov byte [r15 + 5], 1
mov edx, 0xf7ba04f9
mov r12d, 0xc4e2c8b7
nop
mov eax, dword [0x141dceab8]
or eax, dword [0x141dceabc]
imul eax, eax, 0xf94a892b
mov ecx, 0xba5e497d
imul rax, rcx
shr rax, 0x3c
cmp eax, 0x2d2a6819
jne 0x1400faa30
mov eax, dword [r15]
nop dword [rax]
mov eax, dword [0x141dceac0]
add eax, dword [0x141dceac4]
imul rax, rdx
shr rax, 0x3d
or eax, 0xda856063
mov r13d, dword [r15]
cmp eax, 0x4bdb921b
jb 0x1400faa30
mov eax, dword [0x141dceac8]
imul eax, dword [0x141dceacc]
cmp eax, 0x545a9fef
jne 0x1400faa6b
xor eax, eax
xchg byte [rdi], al
mov edx, 0xdd59d63f
mov ecx, dword [0x141dcead0]
or ecx, dword [0x141dcead4]
and ecx, 0x7ce2aee3
mov eax, 0
xchg byte [rdi], al
cmp ecx, 0x94be63e5
je 0x1400faa70
nop word cs:[rax + rax]
mov ecx, dword [0x141dcead8]
xor ecx, dword [0x141dceadc]
xor ecx, 0x681300ca
and ecx, 0xe97321ea
imul rcx, rdx
shr rcx, 0x3f
cmp ecx, 0x374e78d7
je 0x1400faaa0
cmp al, 2
jne 0x1400faafd
sub rsp, 0x20
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle]
add rsp, 0x20
nop dword [rax]
mov eax, dword [0x141dceae0]
xor eax, dword [0x141dceae4]
add eax, 0xf4762bcf
or eax, 0x31ae629f
cmp eax, 0x2a112709
je 0x1400faae0
mov dword [r14], r13d
sub rsp, 0x20
mov r8d, 4
mov rcx, r15
mov rdx, r14
mov r9d, 0xffffffff
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WaitOnAddress]
add rsp, 0x20
mov ecx, dword [0x141dceae8]
add ecx, dword [0x141dceaec]
and ecx, 0x8fa963b9
imul ecx, ecx, 0xebea5969
cmp ecx, 0xc3521b60
je 0x1400fab20
mov ecx, dword [0x141dceaf0]
xor ecx, dword [0x141dceaf4]
add ecx, 0xae67c744
or ecx, 0x8122bc4d
add ecx, 0x31625a11
cmp ecx, 0xd326d401
jb 0x1400fab40
cmp eax, 1
je 0x1400fab79
sub rsp, 0x20
call qword [sym.imp.KERNEL32.dll_GetLastError]
add rsp, 0x20
xor eax, eax
mov cl, 1
lock cmpxchg byte [rdi], cl
sete cl
nop word cs:[rax + rax]
mov eax, dword [0x141dceaf8]
xor edx, edx
div dword [0x141dceafc]
add eax, 0x38a77afa
or eax, 0x1490003c
and eax, 0x15f0447c
cmp eax, 0x305a6582
ja 0x1400fab90
nop word cs:[rax + rax]
mov eax, dword [0x141dceb00]
add eax, dword [0x141dceb04]
imul eax, eax, 0xa5eda363
imul rax, r12
shr rax, 0x3e
imul eax, eax, 0x1ab5d799
cmp eax, 0x311abf08
ja 0x1400fabc0
test cl, cl
je 0x1400fac56
nop dword [rax + rax]
mov eax, dword [0x141dceb18]
mov ecx, dword [0x141dceb1c]
add eax, ecx
add eax, 0xcda9cdf5
and eax, 0x6fadebf7
cmp eax, 0xa52de6bd
je 0x1400fabf0
movzx ecx, byte [r15 + 5]
mov eax, dword [0x141dceb20]
xor edx, edx
div dword [0x141dceb24]
add eax, 0x210dde04
and eax, 0x8a09d991
cmp eax, 0xe62ef88b
je 0x1400fac14
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x1400fac40
test cl, cl
mov edx, 0xf7ba04f9
jne 0x1400faa00
jmp 0x1400fae90
mov eax, dword [0x141dceb08]
xor eax, dword [0x141dceb0c]
or eax, 0x2f8ad368
add eax, 0xfd0f450c
cmp eax, 0x4655fcc2
jae 0x1400fac83
sub rsp, 0x20
mov rcx, rdi
call fcn.1400fdaa0
add rsp, 0x20
mov eax, dword [0x141dceb10]
sub eax, dword [0x141dceb14]
xor eax, 0x5a1630f4
add eax, 0xe90dac5e
shr eax, 2
imul r13, rax, 0x27e92d89
shr r13, 0x3b
sub rsp, 0x20
mov rcx, rdi
call fcn.1400fdaa0
add rsp, 0x20
cmp r13d, 0x9164b92b
jbe 0x1400fabf0
jmp 0x1400fac73
mov eax, dword [0x141dcea28]
sub eax, dword [0x141dcea2c]
and eax, 0x90881480
add eax, 0x799a7558
mov dword [rbx + 0x10], 0
mov qword [rbx + 8], 0xffffffffffffffff
cmp eax, 0x79312870
jbe 0x1400fad10
mov dword [rbx + 0x10], 0
mov qword [rbx + 8], 0xffffffffffffffff
jmp 0x1400facc6
mov eax, dword [0x141dcea30]
and eax, dword [0x141dcea34]
xor eax, 0x4e5a1381
imul eax, eax, 0x6a241d35
cmp eax, 0xa77720a7
je 0x1400fad10
xor eax, eax
xchg byte [rdi], al
jmp 0x1400fb036
mov eax, dword [0x141dcea60]
add eax, dword [0x141dcea64]
imul eax, eax, 0x7b84db90
xor eax, 0x28fb89f4
imul eax, eax, 0x516e19a9
mov dword [rbx + 0x10], 0x20
mov qword [rbx + 8], 0xffffffffffffffff
cmp eax, 0x3cff2770
jne 0x1400fad7b
mov dword [rbx + 0x10], 0x20
mov qword [rbx + 8], 0xffffffffffffffff
jmp 0x1400fad37
mov eax, dword [0x141dcea68]
sub eax, dword [0x141dcea6c]
or eax, 0xb0ce5fb
xor eax, 0xd09eaf96
add eax, 0xf03af942
cmp eax, 0x30a6b3ad
ja 0x1400fadc6
mov ecx, dword [0x141dcea70]
or ecx, dword [0x141dcea74]
xor ecx, 0x46618b4d
add ecx, 0xcbfdcc3d
xor ecx, 0x9be3f3a2
mov rax, qword [rsi]
cmp ecx, 0x69448478
jbe 0x1400fadcb
mov rax, qword [rsi]
jmp 0x1400fad9d
cmp rax, 3
je 0x1400fad2e
mov eax, dword [0x141dceb78]
and eax, dword [0x141dceb7c]
add eax, 0xf9f7e4c2
shr eax, 1
imul rax, rax, 0x4772d54d
shr rax, 0x3d
or eax, 0x967a8aec
cmp eax, 0xf3604f98
ja 0x1400fae2e
mov eax, dword [0x141dceb80]
xor r8d, r8d
xor edx, edx
div dword [0x141dceb84]
mov ecx, eax
mov eax, 2
lock cmpxchg qword [rsi], r8
add ecx, 0xadf08c97
cmp ecx, 0xa2fc56af
jae 0x1400fad2e
xor ecx, ecx
mov eax, 2
lock cmpxchg qword [rsi], rcx
jmp 0x1400fadff
mov eax, dword [0x141dceaa8]
mov ecx, dword [0x141dceaac]
add eax, ecx
add eax, 0x92552a77
xor eax, 0x4c342096
imul eax, eax, 0x2942e4d1
lock dec qword [r12 + 0x18]
cmp eax, 0x1d821a40
jae 0x1400fae70
lock dec qword [r12 + 0x18]
jmp 0x1400fae3c
mov eax, dword [0x141dceab0]
xor edx, edx
div dword [0x141dceab4]
and eax, 0xa5b3be00
imul eax, eax, 0x29c9479b
cmp eax, 0xadc452fc
je 0x1400fae70
mov eax, 0xce349377
nop word cs:[rax + rax]
mov ecx, dword [0x141dceb28]
imul ecx, dword [0x141dceb2c]
imul rcx, rax
shr rcx, 0x3f
add ecx, 0x1a9e7f79
and ecx, 0x3b29
cmp ecx, 0xf4dfc8d9
ja 0x1400faea0
mov eax, dword [0x141dceb30]
and eax, dword [0x141dceb34]
add eax, 0xde88d4d0
xor eax, 0x4098024a
or eax, 0xb8037d34
cmp eax, 0xb84c6077
jae 0x1400faf00
mov dword [rbx + 0x10], 0
mov qword [rbx + 8], 0xffffffffffffffff
nop word [rax + rax]
mov eax, dword [0x141dceb38]
imul eax, dword [0x141dceb3c]
xor eax, 0x21c81390
imul eax, eax, 0x72c2a173
mov dword [rbx + 0x10], 0
mov qword [rbx + 8], 0xffffffffffffffff
cmp eax, 0x9681bcfa
je 0x1400faf00
mov eax, dword [0x141dceb40]
xor eax, dword [0x141dceb44]
imul rcx, rax, 0xd591bab
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
or eax, 0x8492b9da
imul eax, eax, 0x71674e07
cmp eax, 0x342349ae
jne 0x1400faf70
mov rax, qword [rsi]
nop word cs:[rax + rax]
mov eax, dword [0x141dceb48]
xor edx, edx
div dword [0x141dceb4c]
imul ecx, eax, 0xbab747e6
xor ecx, 0x40a41c00
or ecx, 0xa649e2ab
mov rax, qword [rsi]
cmp ecx, 0x5393e363
jb 0x1400faf70
cmp rax, 3
je 0x1400fafb4
xor ecx, ecx
mov eax, 2
lock cmpxchg qword [rsi], rcx
nop dword [rax]
test cl, cl
jne 0x1400fafb0
mov eax, dword [0x141dceb50]
xor edx, edx
div dword [0x141dceb54]
imul rcx, rax, 0x156edffd
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1c
add eax, 0x18c4bc53
cmp eax, 0xd298d430
ja 0x1400fb000
mov ecx, dword [0x141dceb58]
or ecx, dword [0x141dceb5c]
add ecx, 0x7a555328
xor eax, eax
xchg byte [rdi], al
cmp ecx, 0x8d973b26
jbe 0x1400fb010
xor eax, eax
xchg byte [rdi], al
jmp 0x1400fafe2
mov ecx, dword [0x141dceb60]
sub ecx, dword [0x141dceb64]
or ecx, 0xa808d83
add ecx, 0xe35679b4
or ecx, 0xf7598ae1
cmp ecx, 0x69cd3b4d
jb 0x1400fb010
cmp al, 2
jne 0x1400fb070
sub rsp, 0x20
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle]
add rsp, 0x20
nop dword [rax + rax]
mov eax, dword [0x141dceb68]
xor eax, dword [0x141dceb6c]
or eax, 0xc4902c51
and eax, 0xc6d0ac73
cmp eax, 0x4a00b3f3
jb 0x1400fb050
nop dword [rax]
mov eax, dword [0x141dceb70]
or eax, dword [0x141dceb74]
imul eax, eax, 0xc12f0427
add eax, 0x85b790e6
or eax, 0xd7f31915
cmp eax, 0x7fbca70c
jb 0x1400fb070
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret