Function at 0x14003aeb0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x30
lea rdx, [0x140089ae0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_AddVectoredExceptionHandler]
mov dword [rsp + 0x24], 0x5000
lea rcx, [rsp + 0x24]
call qword [sym.imp.KERNEL32.dll_SetThreadStackGuarantee]
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov r8, qword [0x141f2c008]
lea rdx, [0x141f25c68]
mov rcx, rax
call r8
movzx eax, byte [0x141f49078]
mov edx, 0x38
xor ecx, ecx
call fcn.1400c6170
mov rsi, rax
nop dword [rax]
mov eax, dword [0x141f32100]
and eax, dword [0x141f32104]
or eax, 0xfb4dd31f
and eax, 0xfb4ffb3f
cmp eax, 0xa27557d0
jb 0x14003af10
test rsi, rsi
je 0x14003b194
mov qword [rsi], 1
mov eax, dword [0x141f32108]
or eax, dword [0x141f3210c]
mov ecx, 0xac7d93d3
imul rcx, rax
shr rcx, 0x3f
cmp ecx, 0xcb9dfa29
jne 0x14003af80
mov qword [rsi + 8], 1
mov qword [rsi + 0x10], 0
mov rax, qword [0x141f49040]
nop word cs:[rax + rax]
mov eax, dword [0x141f32110]
mov ecx, dword [0x141f32114]
add eax, ecx
add eax, 0xeb80af66
xor eax, 0x1789d902
mov qword [rsi + 8], 1
mov qword [rsi + 0x10], 0
mov rcx, qword [0x141f49040]
cmp eax, 0x3c117e43
jb 0x14003af80
xor r8d, r8d
jmp 0x14003afcb
mov rcx, rax
test dl, dl
jne 0x14003b06d
mov eax, dword [0x141f32118]
xor edx, edx
div dword [0x141f3211c]
test r8b, r8b
jne 0x14003afd9
cmp rcx, 0xffffffffffffffff
je 0x14003b151
lea rdi, [rcx + 1]
mov eax, dword [0x141f32120]
or eax, dword [0x141f32124]
or eax, 0xc63f819c
imul rdx, rax, 0x6858132b
shr rdx, 0x20
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1c
and eax, 3
cmp eax, 0x53fb935b
je 0x14003b05f
nop dword [rax + rax]
mov r9d, dword [0x141f32128]
or r9d, dword [0x141f3212c]
add r9d, 0x9335aff2
or r9d, 0xa3953a9a
add r9d, 0x9389be07
mov rax, rcx
lock cmpxchg qword [0x141f49040], rdi
sete dl
cmp r9d, 0x8f7bda0e
jbe 0x14003afc0
mov rax, rcx
lock cmpxchg qword [0x141f49040], rdi
jmp 0x14003b020
mov eax, dword [0x141f32140]
imul eax, dword [str.X8bk]
add eax, 0xe4daa756
cmp eax, 0x6a092316
jae 0x14003b0b0
mov qword [rsi + 0x28], rdi
mov byte [rsi + 0x30], 0
mov rcx, rsi
call fcn.14008a900
call fcn.140024cf0
mov eax, dword [0x141f48fc8]
nop word cs:[rax + rax]
mov eax, dword [0x141f32148]
xor edx, edx
div dword [0x141f3214c]
imul ebx, eax, 0xd6e9a3
add ebx, 0x3c6b4c73
mov qword [rsi + 0x28], rdi
mov byte [rsi + 0x30], 0
mov rcx, rsi
call fcn.14008a900
call fcn.140024cf0
mov eax, dword [0x141f48fc8]
cmp ebx, 0xc6115157
ja 0x14003b0b0
cmp eax, 3
jne 0x14003b12c
mov ecx, 0x9e39b23b
nop word [rax + rax]
mov eax, dword [0x141f32160]
xor edx, edx
div dword [0x141f32164]
imul rax, rcx
shr rax, 0x3f
or eax, 0x6df1e3f8
cmp eax, 0x6dffa503
ja 0x14003b100
xor eax, eax
add rsp, 0x30
pop rbx
pop rdi
pop rsi
ret
mov eax, dword [0x141f32150]
sub eax, dword [0x141f32154]
imul eax, eax, 0x8779f669
xor eax, 0x81541007
or eax, 0x2abcf58
cmp eax, 0xae6af50a
jae 0x14003b196
jmp 0x14003b1be
mov eax, dword [0x141f32130]
imul eax, dword [0x141f32134]
cmp eax, 0x66139fe0
jne 0x14003b170
ud2
mov eax, dword [0x141f32138]
xor eax, dword [0x141f3213c]
add eax, 0x68fd9d12
and eax, 0xf90c868a
add eax, 0xe6e6a2b7
ud2
ud2
mov eax, dword [0x141f32158]
and eax, dword [0x141f3215c]
imul eax, eax, 0xdf4c2b4a
or eax, 0x2200014a
and eax, 0xf2844dce
mov byte [rsp + 0x23], 1
cmp eax, 0xc827cf8b
jbe 0x14003b1c5
mov byte [rsp + 0x23], 1
jmp 0x14003b196
lea rax, [rsp + 0x23]
mov qword [rsp + 0x28], rax
lea rcx, [0x141f48fc8]
lea r9, [0x141f25650]
lea r8, [rsp + 0x28]
xor edx, edx
call fcn.1401005d0
jmp 0x14003b0f2