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

Disassembly:
push rbx
sub rsp, 0x20
test rcx, rcx
mov rbx, rcx
jne 0x140010ca7
lea eax, [rcx - 2]
add rsp, 0x20
pop rbx
ret
mov qword [rsp + 0x30], rsi
xor esi, esi
mov qword [rsp + 0x38], rdi
cmp qword [rcx + 0x30], rsi
mov qword [rcx + 0x20], rsi
jne 0x140010ccc
lea rax, [0x14000f050]
mov qword [rcx + 0x40], rsi
mov qword [rcx + 0x30], rax
cmp qword [rcx + 0x38], rsi
jne 0x140010cdd
lea rax, [0x14000f060]
mov qword [rcx + 0x38], rax
mov rcx, qword [rcx + 0x40]
mov edx, 1
mov r8d, 0x1718
call qword [rbx + 0x30]
test rax, rax
mov rdi, rax
je 0x140010e2d
mov qword [rbx + 0x28], rax
mov qword [rax], rbx
mov dword [rax + 0x2c], 1
mov qword [rax + 0x30], rsi
mov dword [rax + 0x48], SafeArrayGetUBound
mov dword [rax + 0x44], 0x8000
mov dword [rax + 0x4c], 0x7fff
mov dword [rax + 0x78], SafeArrayGetUBound
mov dword [rax + 0x74], 0x8000
mov dword [rax + 0x7c], 0x7fff
mov dword [rax + 0x80], 5
mov rcx, qword [rbx + 0x40]
mov edx, 0x8000
mov r8d, 2
call qword [rbx + 0x30]
mov edx, dword [rdi + 0x44]
mov r8d, 2
mov qword [rdi + 0x50], rax
mov rcx, qword [rbx + 0x40]
call qword [rbx + 0x30]
mov edx, dword [rdi + 0x74]
mov r8d, 2
mov qword [rdi + 0x60], rax
mov rcx, qword [rbx + 0x40]
call qword [rbx + 0x30]
mov dword [rdi + 0x16f0], 0x4000
mov edx, 0x4000
mov qword [rdi + 0x68], rax
mov rcx, qword [rbx + 0x40]
mov r8d, 4
call qword [rbx + 0x30]
cmp qword [rdi + 0x50], rsi
mov r11, rax
mov qword [rdi + 0x10], rax
mov eax, dword [rdi + 0x16f0]
lea ecx, [rax*4]
mov dword [rdi + 0x18], ecx
je 0x140010e13
cmp qword [rdi + 0x60], rsi
je 0x140010e13
cmp qword [rdi + 0x68], rsi
je 0x140010e13
test r11, r11
je 0x140010e13
mov rcx, rax
shr rax, 1
mov dword [rdi + 0xac], 6
lea rax, [r11 + rax*2]
mov dword [rdi + 0xb0], esi
mov byte [rdi + 0x3c], 8
mov qword [rdi + 0x16f8], rax
lea rax, [r11 + rcx*2]
add rcx, rax
mov qword [rdi + 0x16e8], rcx
mov rcx, rbx
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
add rsp, 0x20
pop rbx
jmp 0x140010e50
lea rax, str.insufficient_memory
mov dword [rdi + 8], 0x29a
mov rcx, rbx
mov qword [rbx + 0x20], rax
call fcn.140011320
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
mov eax, 0xfffffffc
add rsp, 0x20
pop rbx
ret
push rbx
sub rsp, 0x20
test rcx, rcx
je 0x140010f81
mov rbx, qword [rcx + 0x28]
test rbx, rbx
je 0x140010f81
cmp qword [rcx + 0x30], 0
je 0x140010f81
cmp qword [rcx + 0x38], 0
je 0x140010f81
mov dword [rcx + 0x48], 2
mov qword [rsp + 0x30], rdi
xor edi, edi
mov dword [rcx + 0x1c], edi
mov dword [rcx + 0xc], edi
mov qword [rcx + 0x20], rdi
mov rax, qword [rbx + 0x10]
mov dword [rbx + 0x28], edi
mov qword [rbx + 0x20], rax
mov eax, dword [rbx + 0x2c]
test eax, eax
jns 0x140010eb1
neg eax
mov dword [rbx + 0x2c], eax
cmp dword [rbx + 0x2c], edi
mov eax, 0x71
mov edx, 0x2a
cmovne eax, edx
mov dword [rbx + 8], eax
mov dword [rcx + 0x4c], 1
mov rcx, rbx
mov dword [rbx + 0x40], edi
call fcn.14000f070
mov ecx, dword [rbx + 0x74]
mov r11d, dword [rbx + 0x44]
mov rax, qword [rbx + 0x68]
add ecx, 0xffffffff
add r11d, r11d
xor edx, edx
mov dword [rbx + 0x58], r11d
mov word [rax + rcx*2], di
mov r8d, dword [rbx + 0x74]
mov rcx, qword [rbx + 0x68]
add r8d, 0xffffffff
add r8, r8
call fcn.1400f1600
movsxd r11, dword [rbx + 0xac]
lea rcx, [0x14013d510]
add r11, r11
movzx eax, word [rcx + r11*8 + 2]
mov dword [rbx + 0xa8], eax
movzx eax, word [rcx + r11*8]
mov dword [rbx + 0xb4], eax
movzx eax, word [rcx + r11*8 + 4]
mov dword [rbx + 0xb8], eax
movzx eax, word [rcx + r11*8 + 6]
mov dword [rbx + 0x94], edi
mov dword [rbx + 0x84], edi
mov dword [rbx + 0x9c], edi
mov dword [rbx + 0x90], edi
mov dword [rbx + 0xa4], eax
mov dword [rbx + 0x70], edi
mov rdi, qword [rsp + 0x30]
xor eax, eax
mov dword [rbx + 0xa0], 2
mov dword [rbx + 0x88], 2
add rsp, 0x20
pop rbx
ret
mov eax, 0xfffffffe
add rsp, 0x20
pop rbx
ret