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

Disassembly:
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x78
mov rax, qword [rsp + 0x80]
add rax, 0xd8
mov rdx, qword [rsp + 0x88]
mov rcx, rax
call fcn.180016360
mov rax, qword [rsp + 0x80]
mov dword [rax + 0x130], 0
mov rax, qword [rsp + 0x80]
mov dword [rax + 0x134], 0
mov rax, qword [rsp + 0x80]
mov dword [rax + 0xc], 0
mov rax, qword [rsp + 0x80]
mov dword [rax + 0x10], 0
mov rax, qword [rsp + 0x80]
mov ecx, dword [rsp + 0x90]
mov dword [rax + 8], ecx
mov rax, qword [rsp + 0x80]
mov dword [rax + 0x138], 0
mov rax, qword [rsp + 0x80]
mov qword [rax + 0x140], 0
mov rax, qword [rsp + 0x80]
add rax, 0x38
xor edx, edx
mov rcx, rax
call fcn.180015200
mov rax, qword [rsp + 0x80]
add rax, 0x58
xor edx, edx
mov rcx, rax
call fcn.180015200
mov rax, qword [rsp + 0x80]
add rax, 0x78
xor edx, edx
mov rcx, rax
call fcn.180015200
mov rax, qword [rsp + 0x80]
add rax, 0x98
xor edx, edx
mov rcx, rax
call fcn.180015200
mov rax, qword [rsp + 0x80]
add rax, 0xb8
xor edx, edx
mov rcx, rax
call fcn.180015200
mov dword [rsp + 0x20], 0
jmp 0x180015950
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 3
jge 0x180015966
mov rcx, qword [rsp + 0x80]
call fcn.180016820
jmp 0x180015946
mov edx, dword [rsp + 0x90]
mov rcx, qword [rsp + 0x80]
call fcn.1800168a0
mov rcx, qword [rsp + 0x80]
mov qword [rcx], rax
mov rax, qword [rsp + 0x80]
add rax, 0x38
xor r8d, r8d
xor edx, edx
mov rcx, rax
call fcn.1800165c0
mov rax, qword [rsp + 0x80]
add rax, 0x38
xor edx, edx
mov rcx, rax
call fcn.1800151e0
mov rcx, qword [rsp + 0x80]
mov rcx, qword [rcx]
mov qword [rax], rcx
mov rax, qword [rsp + 0x80]
add rax, 0x38
mov rcx, rax
call fcn.180012f00
mov rcx, qword [rsp + 0x80]
mov dword [rcx + 0x14], eax
mov rax, qword [rsp + 0x80]
add rax, 0x78
mov rcx, rax
call fcn.180012f00
mov rcx, qword [rsp + 0x80]
add eax, dword [rcx + 0xc]
mov rcx, qword [rsp + 0x80]
add rcx, 0x38
xor r8d, r8d
mov edx, eax
call fcn.1800165c0
mov dword [rsp + 0x20], 0
jmp 0x180015a2a
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x80]
add rax, 0x78
mov rcx, rax
call fcn.180012f00
cmp dword [rsp + 0x20], eax
jge 0x180015ba2
mov rax, qword [rsp + 0x80]
add rax, 0x78
mov edx, dword [rsp + 0x20]
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
add rax, 8
xor edx, edx
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x80]
add rax, 0x78
mov edx, dword [rsp + 0x20]
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
add rax, 8
mov edx, 2
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + 0x14]
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + 0x14]
inc eax
mov rcx, qword [rsp + 0x80]
mov dword [rcx + 0x14], eax
mov rax, qword [rsp + 0x80]
add rax, 0x38
mov edx, dword [rsp + 0x38]
mov rcx, rax
call fcn.1800151e0
mov qword [rsp + 0x58], rax
mov rcx, qword [rsp + 0x80]
add rcx, 0x78
mov edx, dword [rsp + 0x20]
call fcn.1800151e0
mov rax, qword [rax]
mov rcx, qword [rsp + 0x58]
mov qword [rcx], rax
mov rax, qword [rsp + 0x30]
cmp dword [rax + 8], 0
jle 0x180015b21
jmp 0x180015a20
mov rax, qword [rsp + 0x30]
add rax, 0x10
mov rdx, rax
mov rcx, qword [rsp + 0x80]
call fcn.180016760
mov dword [rsp + 0x28], eax
cmp dword [rsp + 0x28], 0
jl 0x180015b5f
mov rax, qword [rsp + 0x30]
mov ecx, dword [rsp + 0x28]
mov dword [rax + 8], ecx
mov rax, qword [rsp + 0x48]
mov ecx, dword [rsp + 0x28]
mov dword [rax + 8], ecx
jmp 0x180015b9d
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + 0xc]
inc eax
mov rcx, qword [rsp + 0x80]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x80]
mov ecx, dword [rcx + 0xc]
mov dword [rax + 8], ecx
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x80]
mov ecx, dword [rcx + 0xc]
mov dword [rax + 8], ecx
jmp 0x180015a20
mov dword [rsp + 0x20], 1
jmp 0x180015bb6
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + 0x14]
cmp dword [rsp + 0x20], eax
jge 0x180015c22
mov rax, qword [rsp + 0x80]
add rax, 0x38
mov edx, dword [rsp + 0x20]
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
add rax, 8
xor edx, edx
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x80]
mov ecx, dword [rcx + 0xc]
cmp dword [rax + 8], ecx
jle 0x180015c20
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x50]
mov ecx, dword [rcx + 8]
mov dword [rax + 0xc], ecx
jmp 0x180015bac
mov dword [rsp + 0x20], 0
jmp 0x180015c36
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x80]
add rax, 0x58
mov rcx, rax
call fcn.180012f00
cmp dword [rsp + 0x20], eax
jge 0x180015e40
mov rax, qword [rsp + 0x80]
add rax, 0x58
mov edx, dword [rsp + 0x20]
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
cmp dword [rax + 0x10], 0xfffffffd
jne 0x180015cc7
mov rax, qword [rsp + 0x80]
add rax, 0x58
mov edx, dword [rsp + 0x20]
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
add rax, 0x18
mov rdx, rax
mov rcx, qword [rsp + 0x80]
call fcn.180016760
mov dword [rsp + 0x3c], eax
mov rcx, qword [rsp + 0x80]
add rcx, 0x58
mov edx, dword [rsp + 0x20]
call fcn.1800151e0
mov rax, qword [rax]
mov ecx, dword [rsp + 0x3c]
mov dword [rax + 0x10], ecx
mov rax, qword [rsp + 0x80]
add rax, 0x58
mov edx, dword [rsp + 0x20]
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
cmp dword [rax + 0x10], 0
jl 0x180015e3b
mov rax, qword [rsp + 0x80]
add rax, 0x58
mov edx, dword [rsp + 0x20]
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
mov rcx, qword [rsp + 0x80]
mov ecx, dword [rcx + 0xc]
cmp dword [rax + 0x10], ecx
jg 0x180015e3b
mov rax, qword [rsp + 0x80]
add rax, 0x58
mov edx, dword [rsp + 0x20]
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
cmp dword [rax + 0x10], 0
jne 0x180015d6b
mov rax, qword [rsp + 0x80]
add rax, 0x58
mov edx, dword [rsp + 0x20]
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
mov rcx, qword [rsp + 0x80]
mov rcx, qword [rcx]
mov qword [rax + 8], rcx
jmp 0x180015e3b
mov dword [rsp + 0x24], 1
jmp 0x180015d7f
mov eax, dword [rsp + 0x24]
inc eax
mov dword [rsp + 0x24], eax
mov rax, qword [rsp + 0x80]
add rax, 0x38
mov rcx, rax
call fcn.180012f00
cmp dword [rsp + 0x24], eax
jge 0x180015e3b
mov rax, qword [rsp + 0x80]
add rax, 0x58
mov edx, dword [rsp + 0x20]
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
mov qword [rsp + 0x60], rax
mov rcx, qword [rsp + 0x80]
add rcx, 0x38
mov edx, dword [rsp + 0x24]
call fcn.1800151e0
mov rax, qword [rax]
add rax, 8
xor edx, edx
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x60]
cmp dword [rcx + 0x10], eax
jne 0x180015e36
mov rax, qword [rsp + 0x80]
add rax, 0x38
mov edx, dword [rsp + 0x24]
mov rcx, rax
call fcn.1800151e0
mov qword [rsp + 0x68], rax
mov rcx, qword [rsp + 0x80]
add rcx, 0x58
mov edx, dword [rsp + 0x20]
call fcn.1800151e0
mov rax, qword [rax]
mov rcx, qword [rsp + 0x68]
mov rcx, qword [rcx]
mov qword [rax + 8], rcx
jmp 0x180015e3b
jmp 0x180015d75
jmp 0x180015c2c
mov dword [rsp + 0x20], 0
jmp 0x180015e54
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x80]
add rax, 0x98
mov rcx, rax
call fcn.180012f00
cmp dword [rsp + 0x20], eax
jge 0x180015ec9
mov rax, qword [rsp + 0x80]
add rax, 0x98
mov edx, dword [rsp + 0x20]
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
add rax, 0x18
mov rdx, rax
mov rcx, qword [rsp + 0x80]
call fcn.180016760
mov dword [rsp + 0x40], eax
mov rcx, qword [rsp + 0x80]
add rcx, 0x98
mov edx, dword [rsp + 0x20]
call fcn.1800151e0
mov rax, qword [rax]
mov ecx, dword [rsp + 0x40]
mov dword [rax + 8], ecx
jmp 0x180015e4a
mov dword [rsp + 0x20], 0
jmp 0x180015edd
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x80]
add rax, 0xb8
mov rcx, rax
call fcn.180012f00
cmp dword [rsp + 0x20], eax
jge 0x180015f87
mov rax, qword [rsp + 0x80]
add rax, 0xb8
mov edx, dword [rsp + 0x20]
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
add rax, 0x10
mov rdx, rax
mov rcx, qword [rsp + 0x80]
call fcn.180016760
mov dword [rsp + 0x2c], eax
cmp dword [rsp + 0x2c], 0
jl 0x180015f82
mov rax, qword [rsp + 0x80]
add rax, 0xb8
mov edx, dword [rsp + 0x20]
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
mov ecx, dword [rsp + 0x2c]
mov dword [rax + 8], ecx
mov rax, qword [rsp + 0x80]
add rax, 0xb8
mov edx, dword [rsp + 0x20]
mov rcx, rax
call fcn.1800151e0
mov rax, qword [rax]
mov qword [rax + 0x30], 0
jmp 0x180015ed3
mov rax, qword [rsp + 0x80]
mov rax, qword [rax]
add rsp, 0x78
ret