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

Disassembly:
push rbx
push rbp
push rsi
sub rsp, 0x50
mov rax, qword [0x180053040]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov eax, dword [rcx + 0x30]
mov rbp, r8
mov esi, edx
mov dword [rsp + 0x2c], edx
mov rbx, rcx
mov byte [rsp + 0x20], 0
mov dword [rsp + 0x24], eax
cmp eax, dword [rcx + 0x40]
jb 0x18000c892
lea rdx, [rsp + 0x20]
call fcn.18000a0e0
mov dword [rsp + 0x24], eax
test eax, eax
jne 0x18000c89f
cmp dword [rbx + 0x30], eax
jne 0x18000cafc
mov qword [rsp + 0x88], rdi
mov edi, eax
mov dword [rsp + 0x28], 0
mov rax, qword [rbx]
lea r9, [rsp + 0x20]
lea r8, [rsp + 0x30]
mov qword [rsp + 0x30], rbp
mov edx, 5
mov byte [rsp + 0x20], 0
mov rcx, rax
call qword [rax + VariantCopy]
mov eax, dword [rbx + 0x4c]
lea r9, [rsp + 0x30]
mov dword [rsp + 0x30], eax
lea r8, [rsp + 0x38]
mov rax, qword [rbx]
mov edx, 7
mov rcx, rax
call qword [rax + VariantCopy]
cmp dword [rbx + 0x4c], eax
jne 0x18000caf0
inc dword [rbx + 0x30]
test esi, esi
jne 0x18000c906
test edi, edi
je 0x18000c914
mov eax, esi
lea rcx, [rax + rax*4]
mov rax, qword [rbx + 0x20]
inc dword [rax + rcx*8 + 0x1c]
mov eax, edi
lea rcx, [rax + rax*4]
mov rax, qword [rbx + 0x20]
lea rsi, [rcx*8]
mov ecx, dword [rsp + 0x2c]
mov qword [rsi + rax], rbp
mov rax, qword [rbx + 0x20]
mov dword [rsi + rax + 8], ecx
mov rax, qword [rbx + 0x20]
mov ecx, dword [rsp + 0x28]
mov dword [rsi + rax + 0x10], ecx
mov rax, qword [rbx + 0x20]
mov dword [rsi + rax + 0x1c], 0
mov rcx, qword [rbx + 0x20]
movzx eax, byte [rsp + 0x44]
mov byte [rsi + rcx + 0x24], al
mov rcx, qword [rbx + 0x20]
movzx eax, word [rsp + 0x45]
mov word [rsi + rcx + 0x26], ax
cmp byte [rbx + 0x10], 0
jne 0x18000c99c
movzx eax, word [rsp + 0x45]
xor r8d, r8d
cmp byte [rsp + 0x44], r8b
mov r9b, 1
mov rcx, qword [rbx + 8]
mov rdx, rbp
setne r8b
inc r8
imul r8, rax
mov eax, dword [rbx + 0x4c]
add r8, rax
call fcn.180011690
mov rax, qword [rbx + 0x20]
mov dword [rsi + rax + 0x20], 0
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x18000c9bf
mov r8d, eax
mov edx, edi
mov rcx, rbx
call fcn.18000c380
jmp 0x18000c9cb
mov rax, qword [rbx + 0x20]
mov dword [rsi + rax + 0x18], 0
mov eax, dword [rsp + 0x3c]
test eax, eax
je 0x18000c9e4
mov r8d, eax
mov edx, edi
mov rcx, rbx
call fcn.18000c850
mov ecx, eax
jmp 0x18000c9e6
xor ecx, ecx
mov rax, qword [rbx + 0x20]
mov dword [rsi + rax + 0xc], ecx
cmp dword [rsp + 0x38], 0
je 0x18000cade
mov r8d, dword [rbx + 0x30]
mov eax, dword [rbx + 0x40]
mov dword [rsp + 0x28], edi
xor edi, edi
cmp r8d, eax
jae 0x18000ca24
mov rax, qword [rbx + 0x20]
mov edi, r8d
mov dword [rsi + rax + 0x14], r8d
mov ebp, dword [rsp + 0x38]
mov esi, dword [rsp + 0x2c]
jmp 0x18000c8b1
cmp dword [rbx + 0x38], edi
jbe 0x18000ca7d
xor edx, edx
test r8d, r8d
je 0x18000cac9
mov r9, qword [rbx + 0x20]
nop dword [rax + rax]
lea rcx, [rdx + rdx*4]
cmp qword [r9 + rcx*8], rdi
je 0x18000ca66
inc edx
cmp edx, r8d
jb 0x18000ca40
mov rax, qword [rbx + 0x20]
mov dword [rsi + rax + 0x14], edi
mov ebp, dword [rsp + 0x38]
mov esi, dword [rsp + 0x2c]
jmp 0x18000c8b1
mov rax, qword [rbx + 0x20]
mov edi, edx
mov dword [rsi + rax + 0x14], edx
mov ebp, dword [rsp + 0x38]
mov esi, dword [rsp + 0x2c]
jmp 0x18000c8b1
add eax, 0x1000
mov dword [rsp + 0x30], eax
lea rcx, [rax + rax*4]
shl rcx, 3
call fcn.1800351dc
mov rbp, rax
test rax, rax
je 0x18000cac9
mov ecx, dword [rbx + 0x40]
mov rdx, qword [rbx + 0x20]
lea r8, [rcx + rcx*4]
mov rcx, rax
shl r8, 3
call fcn.1800304b0
mov rcx, qword [rbx + 0x20]
call fcn.1800351d4
mov eax, dword [rsp + 0x30]
mov edi, dword [rbx + 0x30]
mov dword [rbx + 0x40], eax
mov qword [rbx + 0x20], rbp
mov rax, qword [rbx + 0x20]
mov dword [rsi + rax + 0x14], edi
mov ebp, dword [rsp + 0x38]
mov esi, dword [rsp + 0x2c]
jmp 0x18000c8b1
mov eax, edi
lea rcx, [rax + rax*4]
mov rax, qword [rbx + 0x20]
mov dword [rax + rcx*8 + 0x14], 0
mov eax, dword [rsp + 0x24]
mov rdi, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.18002f360
add rsp, 0x50
pop rsi
pop rbp
pop rbx
ret