Function at 0x180131a58
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xb8]
sub rsp, 0x190
mov qword [rbp + 8], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov dil, r8b
mov rsi, rdx
mov r15, rcx
call fcn.180130460
xor r12d, r12d
test al, al
je 0x180131efa
mov r9d, dword [0x180195f94]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + r9*8]
lea r13d, [r12 + 1]
lea r14d, [r12 + 0x65]
mov eax, dword [rcx + rax]
cmp dword [0x1801a1b04], eax
jle 0x180131d68
lea rcx, [0x1801a1b04]
call fcn.180157af0
or rbx, 0xffffffffffffffff
cmp dword [0x1801a1b04], ebx
jne 0x180131d68
lea rax, [rbp - 0x18]
mov qword [rbp + 0x10], rax
mov dword [rsp + 0x60], 0x1a
mov eax, dword [rsp + 0x60]
xor al, 0x5a
mov byte [rsp + 0x64], al
mov eax, dword [rsp + 0x60]
add al, r13b
xor al, 0x77
mov byte [rsp + 0x65], al
mov eax, dword [rsp + 0x60]
add al, 2
xor al, 0x43
mov byte [rsp + 0x66], al
mov eax, dword [rsp + 0x60]
add al, 3
xor al, 0x72
mov byte [rsp + 0x67], al
mov eax, dword [rsp + 0x60]
add al, 4
xor al, r14b
mov byte [rsp + 0x68], al
mov eax, dword [rsp + 0x60]
add al, 5
xor al, 0x61
mov byte [rsp + 0x69], al
mov eax, dword [rsp + 0x60]
add al, 6
xor al, 0x74
mov byte [rsp + 0x6a], al
mov eax, dword [rsp + 0x60]
add al, 7
xor al, r14b
mov byte [rsp + 0x6b], al
mov eax, dword [rsp + 0x60]
add al, 8
xor al, 0x54
mov byte [rsp + 0x6c], al
mov eax, dword [rsp + 0x60]
add al, 9
xor al, 0x68
mov byte [rsp + 0x6d], al
mov eax, dword [rsp + 0x60]
add al, 0xa
xor al, 0x72
mov byte [rsp + 0x6e], al
mov eax, dword [rsp + 0x60]
add al, 0xb
xor al, r14b
mov byte [rsp + 0x6f], al
mov eax, dword [rsp + 0x60]
add al, 0xc
xor al, 0x61
mov byte [rsp + 0x70], al
mov eax, dword [rsp + 0x60]
add al, 0xd
xor al, 0x64
mov byte [rsp + 0x71], al
mov eax, dword [rsp + 0x60]
add al, 0xe
xor al, 0x45
mov byte [rsp + 0x72], al
mov eax, dword [rsp + 0x60]
add al, 0xf
xor al, 0x78
mov byte [rsp + 0x73], al
xor eax, eax
mov byte [rsp + 0x74], al
mov al, byte [rsp + 0x64]
mov edx, r12d
mov al, byte [rsp + rdx + 0x64]
mov ecx, dword [rsp + 0x60]
add cl, dl
xor cl, al
mov byte [rsp + rdx + 0x64], cl
add rdx, r13
cmp rdx, 0x10
jb 0x180131bcc
mov byte [rsp + 0x74], r12b
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
mov qword [rbp - 8], r12
mov qword [rbp], r12
lea rax, [rsp + 0x64]
mov r8, rbx
inc r8
cmp byte [rax + r8], r12b
jne 0x180131c01
lea rdx, [rsp + 0x64]
lea rcx, [rbp - 0x18]
call fcn.18000c7ac
nop
mov dword [rsp + 0x78], 0x2a
mov eax, dword [rsp + 0x78]
xor al, 0x6e
mov byte [rsp + 0x7c], al
mov eax, dword [rsp + 0x78]
add al, r13b
xor al, 0x74
mov byte [rsp + 0x7d], al
mov eax, dword [rsp + 0x78]
add al, 2
xor al, 0x64
mov byte [rsp + 0x7e], al
mov eax, dword [rsp + 0x78]
add al, 3
xor al, 0x6c
mov byte [rsp + 0x7f], al
mov eax, dword [rsp + 0x78]
add al, 4
xor al, 0x6c
mov byte [rbp - 0x80], al
xor eax, eax
mov byte [rbp - 0x7f], al
mov al, byte [rsp + 0x7c]
mov rdx, r12
mov al, byte [rsp + rdx + 0x7c]
mov ecx, dword [rsp + 0x78]
add cl, dl
xor cl, al
mov byte [rsp + rdx + 0x7c], cl
add rdx, r13
cmp rdx, 5
jb 0x180131c67
mov byte [rbp - 0x7f], r12b
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x28], xmm1
lea rax, [rsp + 0x7c]
inc rbx
cmp byte [rax + rbx], r12b
jne 0x180131c98
mov r8, rbx
lea rdx, [rsp + 0x7c]
lea rcx, [rbp - 0x38]
call fcn.18000c7ac
nop
lea rdx, [rbp - 0x38]
lea rcx, [rbp + 0x20]
call fcn.1800ceb58
nop
mov qword [rsp + 0x20], r12
mov r9b, r13b
lea r8, [rbp - 0x18]
mov rdx, rax
lea rcx, [0x1801a0fc0]
call fcn.1800f3168
nop
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x180131d1b
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180131d16
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180131d16
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180157a14
movdqa xmm0, xmmword [0x180165930]
movdqu xmmword [rbp - 0x28], xmm0
mov byte [rbp - 0x38], r12b
xor edx, edx
lea r8d, [rdx + 6]
lea rcx, [rsp + 0x7c]
call qword [sym.imp.VCRUNTIME140.dll_memset]
nop
xor edx, edx
lea r8d, [rdx + 0x11]
lea rcx, [rsp + 0x64]
call qword [sym.imp.VCRUNTIME140.dll_memset]
lea rcx, [0x180163db0]
call fcn.1801579fc
nop
lea rcx, [0x1801a1b04]
call fcn.180157a84
mov dword [rbp - 0x7c], 0x26
mov byte [rbp - 0x78], 0x74
mov byte [rbp - 0x77], 0x52
mov byte [rbp - 0x76], 0x4a
mov byte [rbp - 0x75], 0x73
mov byte [rbp - 0x74], 0x55
mov byte [rbp - 0x73], 0x43
mov byte [rbp - 0x72], 0x54
mov byte [rbp - 0x71], 0x72
mov byte [rbp - 0x70], 0x4e
mov byte [rbp - 0x6f], 0x54
mov byte [rbp - 0x6e], 0x43
mov eax, 0x47
mov byte [rbp - 0x6d], al
mov byte [rbp - 0x6c], 0x42
lea ecx, [rax + 0x2e]
mov byte [rbp - 0x6b], cl
mov byte [rbp - 0x6a], 0x52
mov byte [rbp - 0x69], al
mov byte [rbp - 0x68], 0x54
mov byte [rbp - 0x67], 0x52
xor eax, eax
mov byte [rbp - 0x66], al
mov al, byte [rbp - 0x78]
mov rdx, r12
mov al, byte [rbp + rdx - 0x78]
mov ecx, dword [rbp - 0x7c]
xor cl, al
mov byte [rbp + rdx - 0x78], cl
add rdx, r13
cmp rdx, 0x12
jb 0x180131dc7
mov byte [rbp - 0x66], r12b
lea rcx, str.ntdll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea rdx, [rbp - 0x78]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
mov r14, rax
xor edx, edx
lea r8d, [rdx + 0x13]
lea rcx, [rbp - 0x78]
call qword [sym.imp.VCRUNTIME140.dll_memset]
test rbx, rbx
jne 0x180131e1b
mov rbx, rsi
jmp 0x180131e1f
add rbx, 0x21
test r14, r14
cmovne edi, r13d
lea r14, [0x1801a0fd0]
mov rcx, r14
cmp qword [0x1801a0fe8], 0x10
cmovae rcx, qword [0x1801a0fd0]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
jne 0x180131e76
mov rcx, r14
cmp qword [0x1801a0fe8], 0x10
cmovae rcx, qword [0x1801a0fd0]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x1801a0fc8], rax
mov r8, rax
mov rdx, r14
call fcn.1800150f8
movzx eax, dil
or eax, 4
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], r12
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], rbx
mov r9, r15
xor r8d, r8d
mov edx, 0x1fffff
lea rcx, [rbp + 0xd8]
call qword [0x1801a0fc0]
test eax, eax
jne 0x180131f1b
cmp rbx, rsi
je 0x180131ede
test dil, dil
je 0x180131ede
mov byte [rsp + 0x20], r12b
mov r9b, r13b
lea r8, [rbp + 0xd8]
xor edx, edx
mov rcx, rsi
call fcn.180132254
mov rcx, r15
call fcn.180131160
test al, al
je 0x180131efa
or edx, 0xffffffff
mov rcx, qword [rbp + 0xd8]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea r11, [rsp + 0x190]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
cmp byte [0x180190184], r12b
jne 0x180131f2d
cmp byte [0x18019018a], r12b
je 0x180131efa
mov dword [rbp - 0x64], 0x1d
mov eax, 0x47
mov word [rbp - 0x60], ax
mov eax, 0x6a
mov word [rbp - 0x5e], ax
mov eax, 0x5e
mov word [rbp - 0x5c], ax
lea edx, [rax + 0x11]
mov word [rbp - 0x5a], dx
lea r8d, [rax + 0x1a]
mov word [rbp - 0x58], r8w
lea ecx, [rax + 0x1e]
mov word [rbp - 0x56], cx
lea eax, [rdx - 6]
mov word [rbp - 0x54], ax
mov word [rbp - 0x52], r8w
lea eax, [rdx - 0x26]
mov word [rbp - 0x50], ax
lea eax, [rdx + 6]
mov word [rbp - 0x4e], ax
mov word [rbp - 0x4c], dx
mov word [rbp - 0x4a], r8w
mov word [rbp - 0x48], cx
lea eax, [rdx + 0xa]
mov word [rbp - 0x46], ax
lea eax, [rdx - 0x17]
mov word [rbp - 0x44], ax
lea eax, [rdx - 0xa]
mov word [rbp - 0x42], ax
xor eax, eax
mov word [rbp - 0x40], ax
movzx eax, word [rbp - 0x60]
lea rcx, [rbp - 0x64]
call fcn.18005d0bc
mov rdx, rax
lea rcx, [rbp + 0x40]
call fcn.18000bdf0
nop
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x60]
call fcn.18012e674
lea rdx, [0x18018c308]
lea rcx, [rbp + 0x60]
call sub.VCRUNTIME140.dll__CxxThrowException
int3