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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
and qword [rax + 0x18], 0
mov r13, rdx
mov rsi, rcx
mov edx, 0x110
lea rcx, [rax + 0x18]
mov r8b, 1
call fcn.1400a8aac
mov rbx, qword [rsp + 0x60]
mov edi, eax
test eax, eax
jns 0x140028d19
mov rcx, qword [0x1400df278]
lea rbp, [0x1400df278]
cmp rcx, rbp
je 0x14002920b
test byte [rcx + 0x1c], 1
je 0x14002920b
mov edx, SafeArrayGetLBound
lea r8, [0x1400b9688]
jmp 0x1400291d2
mov rax, qword [rsi]
lea rbp, [0x1400df278]
mov qword [rbx], rax
lea r14, [0x1400b9688]
movups xmm0, xmmword [rsi + 8]
movdqu xmmword [rbx + 8], xmm0
mov rdx, qword [rsi + 0x18]
test rdx, rdx
je 0x140028d76
lea rcx, [rbx + 0x18]
call fcn.1400a8b10
mov edi, eax
test eax, eax
jns 0x140028d99
mov rcx, qword [0x1400df278]
lea rbp, [0x1400df278]
cmp rcx, rbp
je 0x14002920b
test byte [rcx + 0x1c], 1
je 0x14002920b
mov edx, reloc.OLEAUT32.dll_SafeArrayGetLBound
jmp 0x140028d0d
mov rcx, qword [0x1400df278]
cmp rcx, rbp
je 0x140028d99
test byte [rcx + 0x1c], 1
je 0x140028d99
mov rcx, qword [rcx + 0x10]
mov edx, reloc.OLEAUT32.dll_SafeArrayLock
mov r8, r14
call fcn.14000cf30
mov eax, dword [rsi + 0x20]
mov edi, 6
mov dword [rbx + 0x20], eax
mov eax, dword [rsi + 0x24]
mov dword [rbx + 0x24], eax
mov eax, dword [rsi + 0x28]
mov dword [rbx + 0x28], eax
mov eax, dword [rsi + 0x2c]
mov dword [rbx + 0x2c], eax
mov eax, dword [rsi + 0x30]
mov dword [rbx + 0x30], eax
mov eax, dword [rsi + 0x34]
mov dword [rbx + 0x34], eax
mov eax, dword [rsi + 0x38]
cmp eax, edi
jbe 0x140028df2
mov rcx, qword [0x1400df278]
cmp rcx, rbp
je 0x140028ded
test byte [rcx + 0x1c], 1
je 0x140028ded
mov rcx, qword [rcx + 0x10]
lea edx, [rdi + 0xf]
mov r9d, eax
mov r8, r14
call fcn.14000a9b0
mov dword [rbx + 0x38], edi
jmp 0x140028df7
mov dword [rbx + 0x38], eax
mov edi, eax
xor edx, edx
test edi, edi
je 0x140028e0c
mov eax, dword [rsi + rdx*4 + 0x3c]
mov dword [rbx + rdx*4 + 0x3c], eax
inc edx
cmp edx, dword [rbx + 0x38]
jb 0x140028dfd
mov eax, dword [rsi + 0x54]
mov dword [rbx + 0x54], eax
test eax, eax
je 0x140028e83
mov edx, eax
lea rcx, [rbx + 0x58]
shl rdx, 3
mov r8b, 1
call fcn.1400a8aac
mov edi, eax
test eax, eax
jns 0x140028e52
mov rcx, qword [0x1400df278]
cmp rcx, rbp
je 0x14002920b
test byte [rcx + 0x1c], 1
je 0x14002920b
mov edx, SafeArrayPutElement
jmp 0x1400291cf
xor r15d, r15d
cmp dword [rbx + 0x54], r15d
jbe 0x140028e83
mov rax, qword [rbx + 0x58]
mov rcx, qword [rsi + 0x58]
lea rdx, [rax + r15*8]
mov rcx, qword [rcx + r15*8]
call fcn.140028a68
mov edi, eax
test eax, eax
js 0x140028efa
inc r15d
cmp r15d, dword [rbx + 0x54]
jb 0x140028e5b
mov rax, qword [rsi + 0x60]
mov qword [rbx + 0x60], rax
mov eax, dword [rsi + 0x68]
mov dword [rbx + 0x68], eax
mov eax, dword [rsi + 0x6c]
mov dword [rbx + 0x6c], eax
movups xmm0, xmmword [rsi + 0x70]
movdqu xmmword [rbx + 0x70], xmm0
mov eax, dword [rsi + 0x80]
mov dword [rbx + 0x80], eax
mov eax, dword [rsi + 0x90]
mov dword [rbx + 0x90], eax
mov rdx, qword [rsi + 0x98]
test rdx, rdx
je 0x140028f1e
lea rcx, [rbx + 0x98]
call fcn.1400a8b10
mov edi, eax
test eax, eax
jns 0x140028f1e
mov rcx, qword [0x1400df278]
cmp rcx, rbp
je 0x14002920b
test byte [rcx + 0x1c], 1
je 0x14002920b
mov edx, SafeArrayPutElement
jmp 0x1400291cf
mov rcx, qword [0x1400df278]
cmp rcx, rbp
je 0x14002920b
test byte [rcx + 0x1c], 1
je 0x14002920b
mov edx, SafeArrayPutElement
jmp 0x1400291cf
mov eax, dword [rsi + 0xa0]
mov dword [rbx + 0xa0], eax
mov rdx, qword [rsi + 0xa8]
test rdx, rdx
je 0x140028f6c
lea rcx, [rbx + 0xa8]
call fcn.1400a8b10
mov edi, eax
test eax, eax
jns 0x140028f6c
mov rcx, qword [0x1400df278]
cmp rcx, rbp
je 0x14002920b
test byte [rcx + 0x1c], 1
je 0x14002920b
mov edx, reloc.OLEAUT32.dll_SafeArrayPutElement
jmp 0x1400291cf
mov eax, dword [rsi + 0xb0]
mov dword [rbx + 0xb0], eax
mov eax, dword [rsi + 0xb4]
mov dword [rbx + 0xb4], eax
mov rax, qword [rsi + 0xb8]
mov qword [rbx + 0xb8], rax
mov eax, dword [rsi + 0xc0]
mov dword [rbx + 0xc0], eax
mov rax, qword [rsi + 0xc8]
mov qword [rbx + 0xc8], rax
mov eax, dword [rsi + 0xd0]
mov dword [rbx + 0xd0], eax
mov eax, dword [rsi + 0xd4]
mov dword [rbx + 0xd4], eax
mov eax, dword [rsi + 0xd8]
mov dword [rbx + 0xd8], eax
mov rdx, qword [rsi + 0xe0]
test rdx, rdx
je 0x140029012
lea rcx, [rbx + 0xe0]
call fcn.1400a8b10
mov edi, eax
test eax, eax
jns 0x140029012
mov rcx, qword [0x1400df278]
cmp rcx, rbp
je 0x14002920b
test byte [rcx + 0x1c], 1
je 0x14002920b
mov edx, 0x1a
jmp 0x1400291cf
mov eax, dword [rsi + 0xf8]
mov dword [rbx + 0xf8], eax
mov eax, dword [rsi + 0xfc]
mov dword [rbx + 0xfc], eax
mov eax, dword [rsi + 0x100]
mov dword [rbx + 0x100], eax
mov eax, dword [rsi + 0x104]
mov dword [rbx + 0x104], eax
mov eax, dword [rsi + 0x108]
mov dword [rbx + 0x108], eax
cmp dword [rbx + 0x20], 4
jne 0x140029200
cmp qword [rsi + 0x88], 0
jne 0x140029092
mov rcx, qword [0x1400df278]
cmp rcx, rbp
je 0x140029200
test byte [rcx + 0x1c], 1
je 0x140029200
mov rcx, qword [rcx + 0x10]
mov edx, 0x1b
mov r8, r14
call fcn.14000cf30
jmp 0x140029200
lea r15, [rbx + 0x88]
mov r8b, 1
mov rcx, r15
mov edx, 0x28
call fcn.1400a8aac
mov edi, eax
test eax, eax
jns 0x1400290d3
mov rcx, qword [0x1400df278]
cmp rcx, rbp
je 0x14002920b
test byte [rcx + 0x1c], 1
je 0x14002920b
mov edx, 0x1c
jmp 0x1400291cf
mov rax, qword [rsi + 0x88]
mov rdx, qword [rax]
test rdx, rdx
je 0x140029114
mov rcx, qword [r15]
call fcn.1400a8b10
mov edi, eax
test eax, eax
jns 0x140029114
mov rcx, qword [0x1400df278]
cmp rcx, rbp
je 0x14002920b
test byte [rcx + 0x1c], 1
je 0x14002920b
mov edx, 0x1d
jmp 0x1400291cf
mov rax, qword [rsi + 0x88]
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x140029157
mov rcx, qword [r15]
add rcx, 8
call fcn.1400a8b10
mov edi, eax
test eax, eax
jns 0x140029157
mov rcx, qword [0x1400df278]
cmp rcx, rbp
je 0x14002920b
test byte [rcx + 0x1c], 1
je 0x14002920b
mov edx, 0x1e
jmp 0x1400291cf
mov rax, qword [rsi + 0x88]
mov rdx, qword [rax + 0x18]
test rdx, rdx
je 0x140029196
mov rcx, qword [r15]
add rcx, 0x18
call fcn.1400a8b10
mov edi, eax
test eax, eax
jns 0x140029196
mov rcx, qword [0x1400df278]
cmp rcx, rbp
je 0x14002920b
test byte [rcx + 0x1c], 1
je 0x14002920b
mov edx, 0x1f
jmp 0x1400291cf
mov rax, qword [rsi + 0x88]
mov rdx, qword [rax + 0x20]
test rdx, rdx
je 0x1400291e0
mov rcx, qword [r15]
add rcx, 0x20
call fcn.1400a8b10
mov edi, eax
test eax, eax
jns 0x1400291e0
mov rcx, qword [0x1400df278]
cmp rcx, rbp
je 0x14002920b
test byte [rcx + 0x1c], 1
je 0x14002920b
mov edx, 0x20
mov r8, r14
mov rcx, qword [rcx + 0x10]
mov r9d, eax
call fcn.14000a9b0
jmp 0x14002920b
mov rax, qword [rsi + 0x88]
mov rcx, qword [r15]
mov eax, dword [rax + 0x10]
mov dword [rcx + 0x10], eax
mov rax, qword [rsi + 0x88]
mov rcx, qword [r15]
mov eax, dword [rax + 0x14]
mov dword [rcx + 0x14], eax
mov rax, rbx
xor ebx, ebx
xor edi, edi
mov qword [r13], rax
test rbx, rbx
je 0x140029218
mov rcx, rbx
call fcn.1400209cc
mov rbx, qword [rsp + 0x50]
mov eax, edi
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x68]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret