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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], r9
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x290
mov rdi, r9
mov rbx, r8
mov r12d, edx
mov r13, rcx
mov dword [r9], 0x25
cmp edx, 0x54
jb 0x1400114f9
xor r14d, r14d
cmp rbx, r14
je 0x1400114f9
mov r15d, 0x84
lea rcx, [rsp + 0x80]
xor edx, edx
mov r8, r15
call fcn.140020a20
mov esi, 0x178
lea rcx, [rsp + 0x110]
mov r8, rsi
xor edx, edx
call fcn.140020a20
xor eax, eax
lea r9, [0x1400310e8]
mov dword [rsp + 0x34], eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], eax
lea rax, [rsp + 0x40]
lea r8d, [r14 + 0x15]
lea rcx, [0x1400311b8]
xor edx, edx
mov qword [rsp + 0x40], r14
mov dword [rsp + 0x30], r14d
mov qword [rsp + 0x20], rax
call qword [sym.imp.ole32.dll_CoCreateInstance]
cmp eax, r14d
mov ebp, eax
jl 0x1400114ed
mov rcx, qword [rsp + 0x40]
cmp rcx, r14
je 0x1400114ed
mov rax, qword [rcx]
lea r8, [rsp + 0x110]
mov edx, esi
call qword [rax + 0x20]
cmp eax, r14d
mov ebp, eax
mov dword [rsp + 0x2d8], eax
jl 0x1400114e2
cmp byte [rsp + 0x110], r14b
jne 0x1400114e2
test byte [rbx + 4], 1
mov edx, dword [rsp + 0x128]
mov r8, rbx
mov rcx, r13
je 0x1400111af
call fcn.140006398
mov dword [rbx + 0xc], eax
dec eax
imul eax, eax, 0x44
add eax, 0x54
mov dword [rbx + 8], eax
jmp 0x1400114df
call fcn.140006398
mov esi, eax
mov dword [rbx + 0xc], esi
lea ecx, [rsi - 1]
imul ecx, ecx, 0x44
add ecx, 0x54
cmp r12d, ecx
jne 0x1400114f1
cmp dword [rbx + 8], ecx
jne 0x1400114f1
cmp esi, 2
ja 0x14001133d
lea r8, [rsp + 0x80]
mov r9, rdi
mov edx, r15d
mov rcx, r13
call fcn.1400107ac
cmp eax, r14d
mov ebp, eax
jl 0x1400114e2
mov eax, dword [rsp + 0x84]
mov dword [rbx + 0x10], eax
mov eax, dword [rsp + 0x88]
mov dword [rbx + 0x14], eax
mov eax, dword [rsp + 0x8c]
mov dword [rbx + 0x18], eax
mov eax, dword [rsp + 0x90]
mov dword [rbx + 0x1c], eax
mov eax, dword [rsp + 0x94]
mov dword [rbx + 0x20], eax
mov eax, dword [rsp + 0xbc]
and eax, 0xf
mov dword [rbx + 0x48], eax
mov eax, dword [rsp + 0xb0]
mov dword [rbx + 0x3c], eax
mov eax, dword [rsp + 0xa4]
mov dword [rbx + 0x30], eax
mov eax, dword [rsp + 0xa8]
mov dword [rbx + 0x34], eax
mov eax, dword [rsp + 0xac]
mov dword [rbx + 0x38], eax
mov eax, dword [rsp + 0xb8]
mov dword [rbx + 0x44], eax
mov eax, dword [rsp + 0xc0]
mov dword [rbx + 0x4c], eax
mov eax, dword [rsp + 0xb4]
mov dword [rbx + 0x40], eax
movzx eax, word [rsp + 0xa0]
mov word [rbx + 0x2c], ax
cmp esi, 2
jne 0x1400114df
mov eax, dword [rsp + 0xc4]
mov dword [rbx + 0x54], eax
mov eax, dword [rsp + 0xc8]
mov dword [rbx + 0x58], eax
mov eax, dword [rsp + 0xcc]
mov dword [rbx + 0x5c], eax
mov eax, dword [rsp + 0xd0]
mov dword [rbx + 0x60], eax
mov eax, dword [rsp + 0xd4]
mov dword [rbx + 0x64], eax
mov eax, dword [rsp + 0xfc]
and eax, 0xf
mov dword [rbx + 0x8c], eax
mov eax, dword [rsp + 0xf0]
mov dword [rbx + 0x80], eax
mov eax, dword [rsp + 0xe4]
mov dword [rbx + 0x74], eax
mov eax, dword [rsp + 0xe8]
mov dword [rbx + 0x78], eax
mov eax, dword [rsp + 0xec]
mov dword [rbx + 0x7c], eax
mov eax, dword [rsp + 0xf8]
mov dword [rbx + 0x88], eax
mov eax, dword [rsp + 0x100]
mov dword [rbx + 0x90], eax
mov eax, dword [rsp + 0xf4]
mov dword [rbx + 0x84], eax
movzx eax, word [rsp + 0xe0]
mov word [rbx + 0x70], ax
jmp 0x1400114df
mov eax, dword [rsp + 0x23c]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x240]
mov dword [rsp + 0x34], eax
mov eax, dword [rsp + 0x244]
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x248]
mov dword [rsp + 0x3c], eax
cmp esi, r14d
jbe 0x1400114df
lea r10, [rsp + 0x136]
lea rax, [rsp + 0x114]
lea rcx, [rsp + 0x134]
sub r10, rbx
sub rax, rbx
sub rcx, rbx
mov qword [rsp + 0x60], r10
lea r10, [rsp + 0x130]
lea rdx, [rsp + 0x140]
sub r10, rbx
sub rdx, rbx
lea r12, [rsp + 0x132]
sub r12, rbx
lea r14, [rsp + 0x150]
lea r15, [rsp + 0x144]
lea rdi, [rsp + 0x148]
lea rbp, [rsp + 0x14c]
mov qword [rsp + 0x70], r10
sub r14, rbx
sub r15, rbx
sub rdi, rbx
sub rbp, rbx
lea r9, [rbx + 0x1c]
lea r8, [rbx + 0x48]
xor r10d, r10d
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x50], r12
mov r11, rsi
mov eax, dword [rax + r9]
movzx r12d, word [r12 + r9]
mov dword [r9 - 0xc], eax
mov rax, qword [rsp + 0x70]
mov dword [r9 - 4], r12d
movzx esi, word [rax + r9]
movzx eax, word [rcx + r9]
mov dword [r9], eax
movzx eax, word [rdx + r9]
mov dword [r9 - 8], esi
mov word [r9 + 0x10], ax
mov rax, qword [rsp + 0x60]
movzx eax, word [rax + r9]
mov dword [r9 + 4], eax
mov eax, dword [rsp + r10 + 0x24c]
mov dword [r9 + 0x30], eax
cmp dword [rbx], 5
jne 0x14001147c
mov eax, dword [r14 + r9]
mov dword [r9 + 0x20], eax
mov eax, dword [r15 + r9]
mov dword [r9 + 0x14], eax
mov eax, dword [rdi + r9]
mov dword [r9 + 0x18], eax
mov eax, dword [r9 + rbp]
mov dword [r9 + 0x1c], eax
mov edx, dword [rsp + r10 + 0x30]
mov rcx, r13
call fcn.140007cf8
cmp eax, 1
jne 0x1400114a3
cmp dword [r9 + 0x2c], eax
je 0x14001149b
cmp dword [r9 + 0x2c], 3
jne 0x1400114a3
mov dword [r9 - 8], r12d
mov dword [r9 - 4], esi
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x68]
mov r12, qword [rsp + 0x50]
add r8, 0x44
add r10, 4
add r9, 0x44
sub r11, 1
jne 0x14001140c
mov rdi, qword [rsp + 0x2e8]
mov ebp, dword [rsp + 0x2d8]
xor r14d, r14d
mov dword [rdi], r14d
mov rcx, qword [rsp + 0x40]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov eax, ebp
jmp 0x140011505
mov dword [rdi], 4
jmp 0x140011500
mov dword [r9], 4
mov eax, 0x80070057
mov rbx, qword [rsp + 0x2d0]
add rsp, 0x290
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret