Function at 0x1401998f0
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Read file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rdx
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x4f]
sub rsp, 0x100
mov qword [rbp - 0x19], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov r12, r9
mov rdi, r8
mov r14, rdx
mov rbx, rcx
xor esi, esi
mov dword [rsp + 0x30], esi
mov qword [rbp - 0x79], rsi
mov r13d, esi
mov dword [rsp + 0x34], esi
test rdx, rdx
je 0x140199f3e
test r8, r8
je 0x140199f3e
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov r15d, dword [rbp + 0x77]
cmp byte [rbx + 0x409], sil
jne 0x140199a33
test r12, r12
je 0x1401999d7
mov rax, r12
shr rax, 0x20
mov dword [rbp - 0x71], eax
mov edx, r12d
mov ecx, r15d
sub ecx, 1
je 0x140199999
sub ecx, 1
je 0x140199992
cmp ecx, 1
jne 0x140199999
lea eax, [rsi + 2]
neg edx
jmp 0x14019999b
mov eax, 1
jmp 0x14019999b
mov eax, esi
mov r9d, eax
lea r8, [rbp - 0x71]
mov rcx, qword [rbx + 0x400]
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
mov r13d, eax
cmp eax, 0xffffffff
je 0x1401999c1
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x1401999d7
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, 0x863
mov edx, eax
mov rcx, rbx
jmp 0x140199f49
cmp byte [rbx + 0x409], sil
jne 0x140199a5f
mov qword [rsp + 0x20], rsi
lea r9, [rsp + 0x30]
mov r8d, edi
mov rdx, r14
mov rcx, qword [rbx + 0x400]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x140199a25
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x140199a25
mov eax, dword [rsp + 0x30]
cmp rdi, rax
je 0x140199eca
mov edx, 0x80006
mov r8d, 0x8d2
jmp 0x1401999cf
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, 0x8ce
jmp 0x1401999cd
mov r13d, dword [rbx + 0x470]
test r15d, r15d
je 0x140199a58
mov eax, 2
cmp r15d, eax
jne 0x140199a52
add qword [rbx + 0x470], r12
jmp 0x140199a5f
cmp r15d, 1
jne 0x140199a5f
mov qword [rbx + 0x470], r12
mov rcx, qword [rbx + 0x470]
mov rdx, qword [rbx + 0x3f0]
add rdx, rcx
mov qword [rbp - 0x49], rdx
mov rsi, qword [rbx + 0x478]
add rsi, rcx
mov qword [rbp - 0x41], rsi
mov r8d, 4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [r8 + rcx]
cmp dword [0x1402d4af8], eax
jle 0x140199d0b
lea rcx, [0x1402d4af8]
call fcn.14027b540
or r14, 0xffffffffffffffff
cmp dword [0x1402d4af8], r14d
jne 0x140199d03
lea rax, [rbp - 0x39]
mov qword [rbp - 0x11], rax
mov dword [rsp + 0x48], 0x1d
mov byte [rsp + 0x4c], 0x4f
mov byte [rsp + 0x4d], 0x78
mov byte [rsp + 0x4e], 0x7c
mov byte [rsp + 0x4f], 0x79
mov byte [rsp + 0x50], 0x4d
mov byte [rsp + 0x51], 0x6f
mov byte [rsp + 0x52], 0x72
mov byte [rsp + 0x53], 0x7e
mov byte [rsp + 0x54], 0x78
mov byte [rsp + 0x55], 0x6e
mov byte [rsp + 0x56], 0x6e
mov byte [rsp + 0x57], 0x50
mov byte [rsp + 0x58], 0x78
mov byte [rbp - 0x80], 0x70
mov byte [rbp - 0x7f], 0x72
mov byte [rbp - 0x7e], 0x6f
mov byte [rbp - 0x7d], 0x64
xor eax, eax
mov byte [rbp - 0x7c], al
mov al, byte [rsp + 0x4c]
xor r8d, r8d
mov edx, r8d
mov al, byte [rsp + rdx + 0x4c]
mov ecx, dword [rsp + 0x48]
xor cl, al
mov byte [rsp + rdx + 0x4c], cl
inc rdx
cmp rdx, 0x11
jb 0x140199b31
mov byte [rbp - 0x7c], r8b
mov qword [rbp - 0x39], r8
mov qword [rbp - 0x29], r8
mov qword [rbp - 0x21], 0xf
lea rax, [rsp + 0x4c]
mov rsi, r14
inc rsi
cmp byte [rax + rsi], r8b
jne 0x140199b64
lea rcx, [rbp - 0x39]
cmp rsi, 0xf
ja 0x140199b90
mov qword [rbp - 0x29], rsi
mov r8, rsi
lea rdx, [rsp + 0x4c]
call qword [sym.imp.VCRUNTIME140.dll_memmove]
mov byte [rbp + rsi - 0x39], 0
jmp 0x140199b9e
lea r9, [rsp + 0x4c]
mov rdx, rsi
call fcn.1400ada10
nop
mov dword [rsp + 0x38], 0x45
mov byte [rsp + 0x3c], 0x2e
mov byte [rsp + 0x3d], 0x20
mov byte [rsp + 0x3e], 0x37
mov byte [rsp + 0x3f], 0x2b
mov byte [rsp + 0x40], 0x20
mov byte [rsp + 0x41], 0x29
mov byte [rsp + 0x42], 0x76
mov byte [rsp + 0x43], 0x77
xor eax, eax
mov byte [rsp + 0x44], al
mov al, byte [rsp + 0x3c]
xor esi, esi
mov edx, esi
mov al, byte [rsp + rdx + 0x3c]
mov ecx, dword [rsp + 0x38]
xor cl, al
mov byte [rsp + rdx + 0x3c], cl
inc rdx
cmp rdx, 8
jb 0x140199bdc
mov byte [rsp + 0x44], sil
mov qword [rbp - 0x69], rsi
mov qword [rbp - 0x59], rsi
mov qword [rbp - 0x51], 0xf
mov byte [rbp - 0x69], sil
lea rax, [rsp + 0x3c]
inc r14
cmp byte [rax + r14], sil
jne 0x140199c11
lea rcx, [rbp - 0x69]
cmp r14, 0xf
ja 0x140199c3d
mov qword [rbp - 0x59], r14
mov r8, r14
lea rdx, [rsp + 0x3c]
call qword [sym.imp.VCRUNTIME140.dll_memmove]
mov byte [rbp + r14 - 0x69], sil
jmp 0x140199c4b
lea r9, [rsp + 0x3c]
mov rdx, r14
call fcn.1400ada10
nop
lea rdx, [rbp - 0x69]
lea rcx, [rbp - 1]
call fcn.1401a82ac
nop
mov qword [rsp + 0x20], rsi
xor r9d, r9d
lea r8, [rbp - 0x39]
mov rdx, rax
lea rcx, [0x1402d4680]
call fcn.1401a1ae8
nop
mov rdx, qword [rbp - 0x51]
cmp rdx, 0x10
jb 0x140199cb3
inc rdx
mov rcx, qword [rbp - 0x69]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140199cae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140199cae
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14027b384
mov qword [rbp - 0x59], rsi
mov qword [rbp - 0x51], 0xf
mov byte [rbp - 0x69], sil
xor edx, edx
lea r8d, [rdx + 9]
lea rcx, [rsp + 0x3c]
call qword [sym.imp.VCRUNTIME140.dll_memset]
nop
xor edx, edx
lea r8d, [rdx + 0x12]
lea rcx, [rsp + 0x4c]
call qword [sym.imp.VCRUNTIME140.dll_memset]
lea rcx, [0x14028ed9c]
call fcn.14027b36c
nop
lea rcx, [0x1402d4af8]
call fcn.14027b4e0
mov rsi, qword [rbp - 0x41]
mov rdx, qword [rbp - 0x49]
mov r14, qword [rbp + 0x5f]
test r15d, r15d
jne 0x140199dda
lea rax, [rsp + 0x34]
mov qword [rsp + 0x20], rax
lea r9d, [r15 + 0x40]
mov r8, rdi
mov rdx, qword [rbx + 0x470]
mov rcx, rbx
call fcn.1401995b4
mov rax, qword [rbx + 0x470]
cmp byte [rbx + 0x48a], r15b
je 0x140199d5c
mov r8, rdi
mov rdx, rax
mov rcx, r14
call qword [sym.imp.VCRUNTIME140.dll_memcpy]
mov qword [rbp - 0x79], rdi
mov sil, 1
jmp 0x140199d89
lea rdx, [rbp - 0x79]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rdi
mov r9, r14
mov r8, rax
mov rdx, qword [rbx + 0x400]
lea rcx, [0x1402d4680]
call fcn.1401a2164
test eax, eax
setne sil
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0x34]
mov r8, rdi
mov rdx, qword [rbx + 0x470]
mov rcx, rbx
call fcn.1401995b4
call qword [sym.imp.KERNEL32.dll_GetLastError]
test sil, sil
jne 0x140199dc0
mov r8d, 0x89b
jmp 0x1401999cd
cmp rdi, qword [rbp - 0x79]
je 0x140199ec0
mov edx, 0x80006
mov r8d, 0x89f
jmp 0x1401999cf
mov rcx, qword [rbx + 0x478]
cmp rsi, rcx
jb 0x140199e04
add rcx, qword [rbx + 0x68]
cmp rsi, rcx
ja 0x140199e04
mov r8, rdi
mov rcx, r14
call qword [sym.imp.VCRUNTIME140.dll_memcpy]
mov qword [rbp - 0x79], rdi
jmp 0x140199ec8
lea rax, [rsp + 0x34]
mov qword [rsp + 0x20], rax
mov r9d, 0x40
mov r8, rdi
mov rdx, rsi
mov rcx, rbx
call fcn.1401995b4
cmp byte [rbx + 0x48a], 0
je 0x140199e43
mov r8, rdi
mov rdx, rsi
mov rcx, r14
call qword [sym.imp.VCRUNTIME140.dll_memcpy]
mov qword [rbp - 0x79], rdi
mov sil, 1
jmp 0x140199e70
lea rax, [rbp - 0x79]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
mov r9, r14
mov r8, rsi
mov rdx, qword [rbx + 0x400]
lea rcx, [0x1402d4680]
call fcn.1401a2164
test eax, eax
setne sil
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r14d, eax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0x34]
mov r8, rdi
mov rdx, qword [rbp - 0x41]
mov rcx, rbx
call fcn.1401995b4
test sil, sil
jne 0x140199eaa
mov r8d, 0x8ba
mov edx, r14d
jmp 0x1401999cf
cmp rdi, qword [rbp - 0x79]
je 0x140199ec0
mov edx, 0x80006
mov r8d, 0x8be
jmp 0x1401999cf
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor esi, esi
cmp byte [rbx + 0x409], sil
jne 0x140199f15
test r12, r12
je 0x140199f25
cmp byte [rbp + 0x7f], sil
jne 0x140199f25
xor r9d, r9d
lea r8, [rbp - 0x71]
mov edx, r13d
mov rcx, qword [rbx + 0x400]
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
cmp eax, 0xffffffff
je 0x140199f04
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x140199f25
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, 0x8df
jmp 0x1401999cd
cmp byte [rbp + 0x7f], sil
jne 0x140199f25
mov ecx, r13d
mov qword [rbx + 0x470], rcx
cmp byte [rbx + 4], sil
je 0x140199f32
add qword [rbx + 0x470], rdi
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov al, 1
jmp 0x140199f50
mov edx, 0x57
mov r8d, 0x846
call fcn.140196c24
xor al, al
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret