Function at 0x18001aaa0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
sub rsp, 0xb18
mov rax, qword [0x18009b1a0]
xor rax, rsp
mov qword [rsp + 0xb00], rax
mov edx, 1
lea rcx, [rsp + 0x90]
call fcn.18001b8f0
lea rcx, [rsp + 0x90]
call fcn.180013bc0
lea rcx, [rsp + 0x90]
call fcn.180016800
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
jge 0x18001ab21
mov eax, dword [rsp + 0x20]
mov dword [rsp + 0x54], eax
lea rcx, [rsp + 0x90]
call fcn.180014080
mov eax, dword [rsp + 0x54]
jmp 0x18001aee9
cmp qword [rsp + 0xb38], 0
je 0x18001ab7a
mov rax, qword [rsp + 0xb38]
cmp qword [rax], 0
je 0x18001ab7a
xor eax, eax
test eax, eax
jne 0x18001ab3a
mov rax, qword [rsp + 0xb38]
mov r8, qword [rax + 8]
mov rax, qword [rsp + 0xb38]
mov rdx, qword [rax]
lea rcx, [rsp + 0x90]
call fcn.180014640
mov rax, qword [rsp + 0xb38]
add rax, 0x10
mov qword [rsp + 0xb38], rax
jmp 0x18001ab2c
mov rax, qword [rsp + 0xb20]
mov rax, qword [rax]
lea rdx, [rsp + 0x90]
mov rcx, qword [rsp + 0xb20]
call qword [rax + 0x28]
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
jge 0x18001abc1
mov eax, dword [rsp + 0x20]
mov dword [rsp + 0x3c], eax
lea rcx, [rsp + 0x90]
call fcn.180014080
mov eax, dword [rsp + 0x3c]
jmp 0x18001aee9
call fcn.18001b520
mov dword [rsp + 0x80], eax
mov edx, 1
lea rcx, [rsp + 0x88]
call fcn.180006150
lea rcx, [rsp + 0x88]
call fcn.180039330
lea rcx, [0x1800ea460]
call fcn.180016da0
mov qword [rsp + 0x48], rax
mov r8d, 0x104
lea rdx, [rsp + 0x8f0]
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov dword [rsp + 0x28], eax
cmp dword [rsp + 0x28], 0
jne 0x18001ac4f
call fcn.180015960
mov dword [rsp + 0x40], eax
lea rcx, [rsp + 0x88]
call fcn.180013c90
lea rcx, [rsp + 0x90]
call fcn.180014080
mov eax, dword [rsp + 0x40]
jmp 0x18001aee9
cmp dword [rsp + 0x28], 0x104
jne 0x18001ac8a
mov ecx, 0x7a
call fcn.18001bb90
mov dword [rsp + 0x58], eax
lea rcx, [rsp + 0x88]
call fcn.180013c90
lea rcx, [rsp + 0x90]
call fcn.180014080
mov eax, dword [rsp + 0x58]
jmp 0x18001aee9
mov qword [rsp + 0x30], 0
mov edx, 0x400
lea rcx, [rsp + 0x8f0]
call fcn.180018150
mov qword [rsp + 0x30], rax
mov r8, qword [rsp + 0x30]
mov edx, 0x208
lea rcx, [rsp + 0x4e0]
call fcn.180016720
cmp qword [rsp + 0x48], 0
je 0x18001acdc
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
cmp qword [rsp + 0x48], rax
jne 0x18001adb9
mov eax, 2
imul rax, rax, 0
mov ecx, 0x22
mov word [rsp + rax + 0xc0], cx
lea rax, [rsp + 0xc2]
lea r8, [rsp + 0x4e0]
mov edx, 0x20b
mov rcx, rax
call fcn.18001ba30
movzx eax, al
test eax, eax
jne 0x18001ad41
mov dword [rsp + 0x50], 0x80004005
lea rcx, [rsp + 0x88]
call fcn.180013c90
lea rcx, [rsp + 0x90]
call fcn.180014080
mov eax, dword [rsp + 0x50]
jmp 0x18001aee9
lea rcx, [rsp + 0xc0]
call fcn.18001baa0
cdqe
mov qword [rsp + 0x68], rax
mov eax, 0x22
mov rcx, qword [rsp + 0x68]
mov word [rsp + rcx*2 + 0xc0], ax
mov rax, qword [rsp + 0x68]
lea rax, [rax + rax + 2]
mov qword [rsp + 0x78], rax
cmp qword [rsp + 0x78], 0x418
jae 0x18001ad83
jmp 0x18001ad88
call fcn.18005c094
xor eax, eax
mov rcx, qword [rsp + 0x78]
mov word [rsp + rcx + 0xc0], ax
lea r8, [rsp + 0xc0]
lea rdx, str.Module
lea rcx, [rsp + 0x90]
call fcn.180014640
mov dword [rsp + 0x24], eax
jmp 0x18001add9
lea r8, [rsp + 0x4e0]
lea rdx, str.Module
lea rcx, [rsp + 0x90]
call fcn.180014640
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jge 0x18001ae0b
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x60], eax
lea rcx, [rsp + 0x88]
call fcn.180013c90
lea rcx, [rsp + 0x90]
call fcn.180014080
mov eax, dword [rsp + 0x60]
jmp 0x18001aee9
lea r8, [rsp + 0x4e0]
lea rdx, str.Module_Raw
lea rcx, [rsp + 0x90]
call fcn.180014640
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jge 0x18001ae5d
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x5c], eax
lea rcx, [rsp + 0x88]
call fcn.180013c90
lea rcx, [rsp + 0x90]
call fcn.180014080
mov eax, dword [rsp + 0x5c]
jmp 0x18001aee9
lea rax, str.REGISTRY
mov qword [rsp + 0x70], rax
cmp dword [rsp + 0xb30], 0
je 0x18001ae98
mov r9, qword [rsp + 0x70]
mov r8d, dword [rsp + 0xb28]
mov rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0x90]
call fcn.18001a110
mov dword [rsp + 0x2c], eax
jmp 0x18001aebb
mov r9, qword [rsp + 0x70]
mov r8d, dword [rsp + 0xb28]
mov rdx, qword [rsp + 0x30]
lea rcx, [rsp + 0x90]
call fcn.18001a2d0
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0x2c]
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
mov dword [rsp + 0x38], eax
lea rcx, [rsp + 0x88]
call fcn.180013c90
lea rcx, [rsp + 0x90]
call fcn.180014080
mov eax, dword [rsp + 0x38]
mov rcx, qword [rsp + 0xb00]
xor rcx, rsp
call fcn.18005afa0
add rsp, 0xb18
ret