Function at 0x18000a5f0
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
push rbx
push rbp
push rdi
push r12
push r13
sub rsp, 0x90
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x68], rax
mov rdi, rcx
mov rcx, qword [rcx + 0x60]
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x58], r9
mov r12, r8
mov qword [rsp + 0x50], rdx
mov dword [rsp + 0x30], 0x70797466
mov dword [rsp + 0x34], 0x7461646d
mov dword [rsp + 0x38], 0x65657266
mov dword [rsp + 0x3c], 0x70696b73
mov dword [rsp + 0x40], 0x746f6e70
mov dword [rsp + 0x44], 0x766f6f6d
mov dword [rsp + 0x48], 0x64697575
mov byte [rsp + 0x60], 0
mov byte [rsp + 0x61], 0
mov byte [rsp + 0x62], 0
mov byte [rsp + 0x63], 0
mov byte [rsp + 0x64], 0
mov byte [rsp + 0x65], 0
mov byte [rsp + 0x66], 0
test rcx, rcx
jne 0x18000a6a6
cmp dword [rdi + 0x54], ecx
jne 0x18000a6a6
mov rax, qword [rdi + 0x2c]
mov qword [rdi + 0x1c], rax
mov rax, qword [rdi + 0x34]
mov qword [rdi + 0x24], rax
jmp 0x18000a6bc
mov rax, qword [rcx]
mov qword [rdi + 0x1c], rax
mov rax, qword [rcx + 8]
mov dword [rdi + 0x5c], 1
mov qword [rdi + 0x24], rax
xor ebx, ebx
movabs rbp, 0xff00000000
movabs r14, 0xff000000000000
mov dword [rdi + 0x44], ebx
mov dword [rdi + 0x48], ebx
mov qword [rdi + 0x4c], rbx
mov dword [rdx], ebx
movabs r15, 0xff0000000000
mov r13d, 0xff000000
mov dword [r8], 2
mov qword [rsp + 0x88], rsi
nop dword [rax]
lea rdx, [rsp + 0x20]
mov r8d, 0x10
mov rcx, rdi
call fcn.1800015e0
test eax, eax
je 0x18000a802
lea rax, [rsp + 0x20]
test rax, rax
je 0x18000a749
movzx ecx, byte [rsp + 0x20]
movzx eax, byte [rsp + 0x23]
mov byte [rsp + 0x20], al
movzx eax, byte [rsp + 0x22]
mov byte [rsp + 0x23], cl
movzx ecx, byte [rsp + 0x21]
mov byte [rsp + 0x21], al
mov byte [rsp + 0x22], cl
mov r8d, dword [rsp + 0x20]
cmp r8, 1
jne 0x18000a7b9
mov rdx, qword [rsp + 0x28]
mov r8, rdx
mov rax, rdx
mov rcx, rdx
shr rax, 0x10
and r8, r14
shl rcx, 0x10
or r8, rax
mov rax, rdx
and rax, r15
shr r8, 0x10
or r8, rax
mov rax, rdx
and rax, rbp
shr r8, 0x10
or r8, rax
mov rax, rdx
and eax, 0xff00
shr r8, 8
or rcx, rax
mov rax, rdx
and rdx, r13
shl rcx, 0x10
and eax, 0xff0000
or rcx, rax
shl rcx, 0x10
or rcx, rdx
shl rcx, 8
or r8, rcx
mov edx, dword [rsp + 0x24]
mov esi, ebx
mov ecx, ebx
mov rax, rbx
cmp dword [rsp + rax*4 + 0x30], edx
je 0x18000a7d6
inc ecx
inc rax
cmp ecx, 7
jb 0x18000a7c4
jmp 0x18000a7ea
mov byte [rsp + rax + 0x60], 1
mov esi, 1
cmp ecx, 7
jae 0x18000a7ea
mov byte [rsp + rax + 0x60], 2
lea rdx, [r8 - 0x10]
mov rcx, rdi
call fcn.180001740
test eax, eax
je 0x18000a802
test esi, esi
jne 0x18000a700
mov rbp, qword [rsp + 0x58]
mov r13, qword [rsp + 0x50]
mov r15, qword [rsp + 0x78]
mov r14, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x88]
lea rcx, [rsp + 0x60]
cmp byte [rcx], 0
jne 0x18000a837
inc ebx
inc rcx
cmp ebx, 7
jb 0x18000a826
jmp 0x18000a871
mov eax, dword [rsp + 0xe0]
mov dword [r13], eax
movzx eax, byte [rsp + 0x61]
test al, al
je 0x18000a85f
mov dword [r12], 3
cmp al, 1
jbe 0x18000a85f
mov dword [r12], 4
test rbp, rbp
je 0x18000a86c
mov rax, qword [rdi + 0x4c]
mov qword [rbp], rax
add qword [rbp], 0xfffffffffffffff0
mov eax, 1
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.18002d590
add rsp, 0x90
pop r13
pop r12
pop rdi
pop rbp
pop rbx
ret