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

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x57]
sub rsp, 0xa8
mov qword [rbp + 7], 0xfffffffffffffffe
mov r12, r8
mov r14, rdx
mov r15, rcx
xor ebx, ebx
mov dword [rbp + 0x77], ebx
mov qword [rcx + 8], rbx
lea r13, [rcx + 0x10]
xorps xmm0, xmm0
movups xmmword [r13], xmm0
mov qword [r13 + 0x10], rbx
lea edi, [rbx + 0xf]
mov qword [r13 + 0x18], rdi
mov byte [r13], bl
lea rsi, [rcx + 0x30]
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rbx
mov qword [rsi + 0x18], rdi
xor r8d, r8d
lea rdx, [0x180164c88]
mov rcx, rsi
call qword [sym.imp.VCRUNTIME140.dll_memcpy]
mov byte [rsi], bl
xorps xmm0, xmm0
movups xmmword [r15 + 0x50], xmm0
mov qword [r15 + 0x60], rbx
mov qword [r15 + 0x68], rdi
mov byte [r15 + 0x50], bl
mov byte [r15 + 0x70], 1
mov qword [r15 + 0x78], rbx
cmp qword [r14 + 0x18], 0x10
jb 0x180012a23
mov rdi, qword [r14]
mov rcx, rdi
jmp 0x180012a29
mov rcx, r14
mov rdi, r14
mov rax, qword [r14 + 0x10]
add rax, rcx
mov rbx, r14
cmp qword [r14 + 0x18], 0x10
jb 0x180012a3d
mov rbx, qword [r14]
cmp rbx, rax
je 0x180012a60
sub rdi, rbx
mov rsi, rax
movzx ecx, byte [rbx]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_tolower]
mov byte [rbx + rdi], al
inc rbx
cmp rbx, rsi
jne 0x180012a48
lea rsi, [r15 + 0x30]
mov rdx, r14
mov rcx, r13
call fcn.1800154d4
mov rdx, r12
lea rcx, [r15 + 0x50]
call fcn.1800154d4
xorps xmm0, xmm0
movups xmmword [rbp - 0x19], xmm0
mov r13d, 1
mov qword [rbp - 9], r13
lea edi, [r13 + 0xe]
mov qword [rbp - 1], rdi
mov r8d, r13d
lea rdx, [0x180164cb8]
lea rcx, [rbp - 0x19]
call qword [sym.imp.VCRUNTIME140.dll_memcpy]
mov byte [rbp - 0x18], 0
lea r8, [rbp - 0x19]
mov rdx, r14
lea rcx, [rbp - 0x39]
call fcn.18001d72c
nop
mov rdx, qword [rax + 8]
sub rdx, 0x20
mov rcx, rsi
call fcn.1800154d4
nop
lea rcx, [rbp - 0x39]
call fcn.180015704
mov r8, r12
mov rdx, r14
call fcn.18001bab0
xor esi, esi
test rax, rax
je 0x180012aed
mov qword [r15], rax
jmp 0x180012e87
mov rdx, r14
call fcn.18001b7a8
mov qword [r15 + 8], rax
mov rcx, r15
call fcn.180018888
mov byte [rbp - 0x4e], 0x4f
mov byte [rbp - 0x4d], 0x74
mov byte [rbp - 0x4c], 0x77
mov byte [rbp - 0x4b], 0x6a
mov byte [rbp - 0x4a], 0x69
mov byte [rbp - 0x49], 0x74
mov byte [rbp - 0x48], 0x49
mov byte [rbp - 0x47], 0x6c
mov byte [rbp - 0x46], 0x6c
mov byte [rbp - 0x45], 0x49
mov byte [rbp - 0x44], 0x7c
mov byte [rbp - 0x43], 0x77
mov byte [rbp - 0x42], 0x75
mov byte [rbp - 0x41], sil
mov al, byte [rbp - 0x4e]
mov esi, r13d
xor ecx, ecx
mov al, byte [rbp + rcx - 0x4e]
sub al, 8
mov byte [rbp + rcx - 0x4e], al
add rcx, r13
cmp rcx, 0xd
jb 0x180012b41
xor r8d, r8d
lea rdx, [rbp - 0x4e]
mov rcx, r12
call fcn.18001bfe4
or rbx, 0xffffffffffffffff
test rax, rax
je 0x180012c63
mov dword [rbp - 0x71], 0x70
mov eax, dword [rbp - 0x71]
xor al, 0x47
mov byte [rbp - 0x6d], al
mov eax, dword [rbp - 0x71]
add al, r13b
xor al, 0x6c
mov byte [rbp - 0x6c], al
mov eax, dword [rbp - 0x71]
add al, 2
xor al, 0x6f
mov byte [rbp - 0x6b], al
mov eax, dword [rbp - 0x71]
add al, 3
xor al, 0x62
mov byte [rbp - 0x6a], al
mov eax, dword [rbp - 0x71]
add al, 4
xor al, 0x61
mov byte [rbp - 0x69], al
mov eax, dword [rbp - 0x71]
add al, 5
xor al, 0x6c
mov byte [rbp - 0x68], al
mov eax, dword [rbp - 0x71]
add al, 6
xor al, 0x47
mov byte [rbp - 0x67], al
mov eax, dword [rbp - 0x71]
add al, 7
xor al, 0x65
mov byte [rbp - 0x66], al
mov eax, dword [rbp - 0x71]
add al, 8
xor al, 0x74
mov byte [rbp - 0x65], al
mov eax, dword [rbp - 0x71]
add al, 9
xor al, 0x41
mov byte [rbp - 0x64], al
mov eax, dword [rbp - 0x71]
add al, 0xa
xor al, 0x74
mov byte [rbp - 0x63], al
mov eax, dword [rbp - 0x71]
add al, 0xb
xor al, 0x6f
mov byte [rbp - 0x62], al
mov eax, dword [rbp - 0x71]
add al, 0xc
xor al, 0x6d
mov byte [rbp - 0x61], al
mov eax, dword [rbp - 0x71]
add al, 0xd
xor al, 0x4e
mov byte [rbp - 0x60], al
mov eax, dword [rbp - 0x71]
add al, 0xe
xor al, 0x61
mov byte [rbp - 0x5f], al
mov eax, dword [rbp - 0x71]
add al, dil
xor al, 0x6d
mov byte [rbp - 0x5e], al
mov eax, dword [rbp - 0x71]
add al, 0x10
xor al, 0x65
mov byte [rbp - 0x5d], al
xor eax, eax
mov byte [rbp - 0x5c], al
mov al, byte [rbp - 0x6d]
lea esi, [rbx + 4]
xor edx, edx
mov al, byte [rbp + rdx - 0x6d]
mov ecx, dword [rbp - 0x71]
add cl, dl
xor cl, al
mov byte [rbp + rdx - 0x6d], cl
add rdx, r13
cmp rdx, 0x11
jb 0x180012c2e
mov byte [rbp - 0x5c], 0
mov r8, rbx
lea rdx, [rbp - 0x6d]
mov rcx, r12
call fcn.18001bfe4
test rax, rax
je 0x180012c63
xor dil, dil
jmp 0x180012c6c
mov dil, r13b
test sil, 2
je 0x180012c7c
xor edx, edx
lea r8d, [rdx + 0x12]
lea rcx, [rbp - 0x6d]
call qword [sym.imp.VCRUNTIME140.dll_memset]
xor edx, edx
lea r8d, [rdx + 0xe]
lea rcx, [rbp - 0x4e]
call qword [sym.imp.VCRUNTIME140.dll_memset]
xor esi, esi
test dil, dil
je 0x180012d77
mov byte [rbp - 0x59], 0x78
mov byte [rbp - 0x58], 0x76
mov byte [rbp - 0x57], 0x68
mov byte [rbp - 0x56], 0x75
mov byte [rbp - 0x55], 0x36
mov byte [rbp - 0x54], 0x35
mov byte [rbp - 0x53], 0x31
mov byte [rbp - 0x52], 0x67
mov byte [rbp - 0x51], 0x6f
mov byte [rbp - 0x50], 0x6f
mov byte [rbp - 0x4f], sil
mov al, byte [rbp - 0x59]
mov ecx, esi
mov al, byte [rbp + rcx - 0x59]
sub al, 3
mov byte [rbp + rcx - 0x59], al
add rcx, r13
cmp rcx, 0xa
jb 0x180012cc8
xorps xmm0, xmm0
movups xmmword [rbp - 0x39], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x29], xmm1
lea rax, [rbp - 0x59]
inc rbx
cmp byte [rax + rbx], sil
jne 0x180012cee
mov r8, rbx
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x39]
call fcn.18000c7ac
nop
xor edx, edx
lea r8d, [rdx + 0xb]
lea rcx, [rbp - 0x59]
call qword [sym.imp.VCRUNTIME140.dll_memset]
lea rcx, [rbp - 0x39]
cmp qword [rbp - 0x21], 0x10
cmovae rcx, qword [rbp - 0x39]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov r8, rax
lea rdx, [rbp - 0x39]
call fcn.1800150f8
nop
mov rdx, qword [rbp - 0x21]
cmp rdx, 0x10
jb 0x180012d77
inc rdx
mov rcx, qword [rbp - 0x39]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180012d72
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180012d72
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180157a14
mov rcx, qword [r15 + 8]
test rcx, rcx
je 0x180012f33
mov rdx, r12
cmp qword [r12 + 0x18], 0x10
jb 0x180012d93
mov rdx, qword [r12]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r13, rax
cmp byte [r15 + 0x70], sil
je 0x180012dcf
mov rcx, r15
call fcn.1800175e4
mov rsi, rax
mov rdi, qword [r15 + 8]
mov rbx, r13
sub rbx, rdi
mov rcx, r15
call fcn.180018888
add rbx, qword [r15 + 8]
cmp qword [r15 + 8], rdi
cmove rbx, rsi
xor esi, esi
jmp 0x180012dd2
mov rbx, r13
test rbx, rbx
jne 0x180012e3b
mov rbx, r13
test r13, r13
jne 0x180012e37
mov rcx, r14
cmp qword [r14 + 0x18], 0x10
jb 0x180012dec
mov rcx, qword [r14]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
jne 0x180012e13
mov rcx, r14
cmp qword [r14 + 0x18], 0x10
jb 0x180012e04
mov rcx, qword [r14]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
je 0x180012f33
mov rdx, r12
cmp qword [r12 + 0x18], 0x10
jb 0x180012e22
mov rdx, qword [r12]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
test rax, rax
je 0x180012f33
mov byte [r15 + 0x70], sil
cmp byte [r15 + 0x70], sil
je 0x180012e71
mov rdx, rbx
call fcn.180018e90
test al, al
jne 0x180012e56
mov rbx, r13
mov byte [r15 + 0x70], sil
jmp 0x180012e66
cmp rbx, r13
je 0x180012e66
mov rdx, r13
mov rcx, r15
call fcn.18001705c
mov rdx, rbx
mov rcx, r15
call fcn.18001705c
mov r9, rbx
mov r8, r12
mov rdx, r14
call fcn.18001b8ac
mov qword [r15], rbx
mov edi, 0xf
mov rdx, qword [r14 + 0x18]
cmp rdx, 0x10
jb 0x180012ebd
mov rcx, qword [r14]
inc rdx
cmp rdx, 0x1000
jb 0x180012eb8
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180012f25
mov rcx, r8
call fcn.180157a14
mov qword [r14 + 0x10], rsi
mov qword [r14 + 0x18], rdi
mov byte [r14], sil
mov rdx, qword [r12 + 0x18]
cmp rdx, 0x10
jb 0x180012f00
inc rdx
mov rcx, qword [r12]
cmp rdx, 0x1000
jb 0x180012efb
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180012f2c
mov rcx, r8
call fcn.180157a14
mov qword [r12 + 0x10], rsi
mov qword [r12 + 0x18], rdi
mov byte [r12], sil
mov rax, r15
add rsp, 0xa8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.1800a9ce8
int3