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

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x78
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov rdi, rcx
mov rax, qword [rcx + 0x20]
test rax, rax
je 0x1400b411f
cmp dword [rax + 0x550], 0
jne 0x1400b366a
xor eax, eax
jmp 0x1400b411f
xor esi, esi
mov dword [rsp + 0xc0], esi
add rcx, 0x30
call fcn.14013ddc8
mov rax, qword [rdi + 0x70]
test rax, rax
je 0x1400b368d
mov rax, qword [rax]
test rax, rax
jne 0x1400b3685
mov qword [rdi + 0x80], rsi
mov qword [rdi + 0x88], rsi
mov qword [rdi + 0x78], rsi
mov qword [rdi + 0x70], rsi
mov rcx, qword [rdi + 0x90]
call fcn.140129600
mov qword [rdi + 0x90], rsi
or r15d, 0xffffffff
mov dword [rdi + 0xa0], r15d
mov rcx, rdi
call fcn.1400b3310
test byte [rdi + 0x10], 1
je 0x1400b3717
mov edx, 0x827
mov rax, qword [rdi + 0x20]
test byte [rax + 0x3c], 4
je 0x1400b36ef
mov edx, 0xd06
test byte [rax + 0x4c], 8
mov eax, 0xdc5
cmovne edx, eax
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], esi
xor r9d, r9d
lea r8d, [r9 + 8]
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
test byte [rdi + 0x10], 2
je 0x1400b3789
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 1
xor r9d, r9d
mov edx, 0x829
lea r8d, [r9 + 0xa]
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
mov rax, qword [rdi + 0x20]
test byte [rax + 0x3c], 0x40
je 0x1400b3789
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x101
xor r9d, r9d
mov edx, 0xd79
lea r8d, [r9 + 0xa]
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
test byte [rdi + 0x10], 4
je 0x1400b37c0
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 2
xor r9d, r9d
mov edx, 0x81c
lea r8d, [r9 + 2]
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
mov rax, qword [rdi + 0x20]
bt dword [rax + 0x530], 0xa
jae 0x1400b3808
test byte [rdi + 0x14], 1
je 0x1400b3808
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x107
mov edx, 0xe23
mov r9d, reloc.OLEAUT32.dll_SafeArrayDestroy
lea r8d, [r9 - 0xd]
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
test byte [rdi + 0x10], 0x10
je 0x1400b38c7
mov dword [rsp + 0xc8], 8
lea rcx, [rsp + 0x60]
mov rax, qword [0x14018e368]
mov qword [rcx], rax
mov rax, qword [0x14018e370]
mov qword [rcx + 8], rax
cmp qword [0x140206e20], rsi
je 0x1400b3896
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0xc8]
xor r8d, r8d
lea edx, [r8 + 7]
lea rcx, [rsp + 0x60]
call fcn.140086360
cmp dword [rsp + 0xc8], 2
ja 0x1400b3896
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 4
xor r9d, r9d
mov edx, 0x846
lea r8d, [r9 + 1]
mov rcx, rdi
call fcn.1400b41f0
jmp 0x1400b38bf
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 4
xor r9d, r9d
mov edx, 0x826
lea r8d, [r9 + 1]
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
test byte [rdi + 0x10], 0x20
je 0x1400b3900
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 5
mov edx, 0x828
mov r9d, 1
mov r8d, r9d
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
test byte [rdi + 0x10], 0x40
je 0x1400b394b
mov edx, 0x82a
mov rax, qword [rdi + 0x20]
mov ecx, 0x885
bt dword [rax + 0x50], 0xc
cmovb edx, ecx
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 6
mov r9d, 2
lea r8d, [r9 - 1]
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
test byte [rdi + 0x10], 0x80
je 0x1400b3985
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 7
mov edx, 0x835
mov r9d, 3
lea r8d, [r9 - 2]
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
test byte [rdi + 0x10], 8
je 0x1400b39bb
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
mov edx, 0x846
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
bt word [rdi + 0x10], 9
jae 0x1400b39f4
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 9
xor r9d, r9d
mov edx, 0x856
lea r8d, [r9 + 0xc]
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
test byte [rdi + 0x11], 1
je 0x1400b3a2b
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 8
xor r9d, r9d
mov edx, 0x8a6
lea r8d, [r9 + 4]
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
bt word [rdi + 0x10], 0xa
jae 0x1400b3bcc
mov rax, qword [rdi + 0x20]
mov ecx, dword [rax + 0x188]
shr ecx, 0x11
and ecx, 1
je 0x1400b3b93
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 2
mov edx, 0x81c
mov r9d, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
lea r8d, [r9 - 0xa]
mov rcx, rdi
call fcn.1400b41f0
mov ebp, eax
cmp dword [rdi + 0x48], esi
jle 0x1400b3b93
call fcn.140129a50
mov r11, rax
mov ecx, esi
test rax, rax
setne cl
test ecx, ecx
jne 0x1400b3aa3
mov ecx, 0x80004005
call fcn.140002d80
int3
mov rax, qword [rax]
mov rcx, r11
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0xd0], rax
call fcn.140129a50
mov r11, rax
mov ecx, esi
test rax, rax
setne cl
test ecx, ecx
jne 0x1400b3ad7
mov ecx, 0x80004005
call fcn.140002d80
int3
mov rax, qword [rax]
mov rcx, r11
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0xd8], rax
mov rcx, qword [rdi + 0x20]
add rcx, 0x538
mov r8d, 0xd06
lea rdx, [rsp + 0xd0]
call fcn.1400b0280
mov rcx, qword [rdi + 0x20]
add rcx, 0x538
mov r8d, 0x81c
lea rdx, [rsp + 0xd8]
call fcn.1400b0280
mov rcx, qword [rdi + 0x40]
add rcx, 0x10
mov r9, qword [rsp + 0xd0]
mov rbx, qword [rsp + 0xd8]
mov r8, rbx
lea rdx, str._s____s
call fcn.140004be0
nop
lea rdx, [rbx - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400b3b6d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0xd0]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400b3bc1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x1400b3bc1
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x20
mov edx, 0x1027
mov r9d, 0xa
lea r8d, [r9 - 8]
mov rcx, rdi
call fcn.1400b41f0
mov ebp, eax
test ebp, ebp
jne 0x1400b3bcc
xor eax, eax
jmp 0x1400b411f
mov rax, qword [rdi + 0x20]
mov ecx, dword [rax + 0x5c]
test cl, 4
je 0x1400b3ccd
bt word [rdi + 0x10], 0xc
jae 0x1400b3c52
test cl, 8
je 0x1400b3c1e
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x22
mov edx, 0xe0b
mov r9d, 0xa
lea r8d, [r9 - 8]
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
jne 0x1400b3c52
jmp 0x1400b411f
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x22
mov edx, 0xd06
mov r9d, 0xa
lea r8d, [r9 - 8]
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
bt word [rdi + 0x10], 0xd
jae 0x1400b3ccd
mov rax, qword [rdi + 0x20]
test byte [rax + 0x5c], 8
je 0x1400b3c99
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x23
mov edx, 0xe0c
mov r9d, SafeArrayDestroy
lea r8d, [r9 - 9]
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
jne 0x1400b3ccd
jmp 0x1400b411f
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x22
mov edx, 0xd06
mov r9d, 0xa
lea r8d, [r9 - 8]
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
bt word [rdi + 0x10], 0xb
jae 0x1400b3d08
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x21
mov edx, 0x1028
mov r9d, 0xa
mov r8d, r9d
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
mov rax, qword [rdi + 0x20]
test byte [rax + 0x162], 1
je 0x1400b3df4
movzx ecx, word [rdi + 0x10]
test cl, 4
jne 0x1400b3d3b
bt dword [rax + 0x188], 0x11
jae 0x1400b3df4
bt cx, 0xa
jae 0x1400b3df4
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x103
mov edx, 0x81c
mov r9d, SafeArrayDestroy
lea r8d, [r9 - 0xb]
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
call fcn.140129a50
mov r11, rax
mov ecx, esi
test rax, rax
setne cl
test ecx, ecx
jne 0x1400b3d8e
mov ecx, 0x80004005
call fcn.140002d80
int3
mov rax, qword [rax]
mov rcx, r11
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x30], rax
mov rcx, qword [rdi + 0x20]
add rcx, 0x538
mov r8d, 0x81c
lea rdx, [rsp + 0x30]
call fcn.1400b0280
mov rcx, qword [rdi + 0x40]
add rcx, 0x10
mov rbx, qword [rsp + 0x30]
mov r8, rbx
lea rdx, str.Skullcandy__s
call fcn.140004be0
nop
lea rdx, [rbx - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400b3df4
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, qword [rdi + 0x20]
test byte [rax + 0x160], 1
je 0x1400b3ece
movzx eax, word [rdi + 0x10]
test al, 0x10
jne 0x1400b3e15
test al, 8
je 0x1400b3ece
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x104
mov edx, 0x846
mov r9d, SafeArrayDestroy
lea r8d, [r9 - 0xc]
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
call fcn.140129a50
mov r11, rax
mov ecx, esi
test rax, rax
setne cl
test ecx, ecx
jne 0x1400b3e68
mov ecx, 0x80004005
call fcn.140002d80
int3
mov rax, qword [rax]
mov rcx, r11
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x38], rax
mov rcx, qword [rdi + 0x20]
add rcx, 0x538
mov r8d, 0x846
lea rdx, [rsp + 0x38]
call fcn.1400b0280
mov rcx, qword [rdi + 0x40]
add rcx, 0x10
mov rbx, qword [rsp + 0x38]
mov r8, rbx
lea rdx, str.Dell__s
call fcn.140004be0
nop
lea rdx, [rbx - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400b3ece
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, qword [rdi + 0x20]
test byte [rax + 0x162], 1
je 0x1400b3fae
test byte [rax + 0x5c], 4
je 0x1400b3fae
bt word [rdi + 0x10], 0xc
jae 0x1400b3fae
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x105
mov edx, 0x1027
mov r9d, SafeArrayDestroy
lea r8d, [r9 - 0xc]
mov rcx, rdi
call fcn.1400b41f0
test eax, eax
je 0x1400b411f
call fcn.140129a50
mov r11, rax
mov ecx, esi
test rax, rax
setne cl
test ecx, ecx
jne 0x1400b3f48
mov ecx, 0x80004005
call fcn.140002d80
int3
mov rax, qword [rax]
mov rcx, r11
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x40], rax
mov rcx, qword [rdi + 0x20]
add rcx, 0x538
mov r8d, 0xd06
lea rdx, [rsp + 0x40]
call fcn.1400b0280
mov rcx, qword [rdi + 0x40]
add rcx, 0x10
mov rbx, qword [rsp + 0x40]
mov r8, rbx
lea rdx, str.Skullcandy__s
call fcn.140004be0
nop
lea rdx, [rbx - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400b3fae
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, qword [rdi + 0x20]
bt dword [rax + 0x114], 0x1c
jae 0x1400b411a
mov edx, esi
mov r8d, r15d
mov rcx, qword [rdi + 0x70]
test rcx, rcx
je 0x1400b40f0
mov eax, dword [rcx + 0x10]
mov rcx, qword [rcx]
shr eax, 0x10
cmp eax, 2
jne 0x1400b3fe5
mov r8d, edx
jmp 0x1400b3fef
cmp eax, 0x22
jne 0x1400b3fef
test r8d, r8d
jns 0x1400b3ffd
add edx, 1
test rcx, rcx
je 0x1400b40f0
jmp 0x1400b3fd2
movsxd r14, r8d
mov rax, r14
cmp r14, qword [rdi + 0x80]
jge 0x1400b402c
test rax, rax
js 0x1400b402c
mov rbp, qword [rdi + 0x70]
test rax, rax
je 0x1400b402f
nop
nop
sub rax, 1
mov rbp, qword [rbp]
jne 0x1400b4020
jmp 0x1400b402f
mov rbp, rsi
movsxd r13, edx
mov rax, r13
cmp r13, qword [rdi + 0x80]
jge 0x1400b405b
test rax, rax
js 0x1400b405b
mov rdx, qword [rdi + 0x70]
test rax, rax
je 0x1400b405e
nop
sub rax, 1
mov rdx, qword [rdx]
jne 0x1400b4050
jmp 0x1400b405e
mov rdx, rsi
mov ebx, dword [rdx + 0x10]
lea rcx, [rdi + 0x68]
call fcn.140040090
mov r8d, ebx
mov rdx, rbp
lea rcx, [rdi + 0x68]
call fcn.1400b4760
mov rdx, r14
lea rcx, [rdi + 0x30]
call fcn.14013dc14
mov rbp, rax
mov rdx, r13
lea rcx, [rdi + 0x30]
call fcn.14013dc14
mov rbx, rax
test rax, rax
jne 0x1400b40a2
call fcn.1401298b4
int3
lea rdx, [rax + 0x10]
lea rcx, [rsp + 0x48]
call fcn.140002f10
nop
mov rdx, rbx
lea rcx, [rdi + 0x30]
call fcn.14013df64
lea r8, [rsp + 0x48]
mov rdx, rbp
lea rcx, [rdi + 0x30]
call fcn.14013e048
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r15d
add r15d, 0xffffffff
test r15d, r15d
jg 0x1400b40f0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdx, qword [rdi + 0x70]
test rdx, rdx
je 0x1400b411a
mov r8d, dword [rdi + 0x1c]
nop
movzx ecx, word [rdx + 0x12]
mov rdx, qword [rdx]
cmp ecx, r8d
jne 0x1400b4112
mov dword [rdi + 0xa0], esi
add esi, 1
test rdx, rdx
jne 0x1400b4100
mov eax, 1
add rsp, 0x78
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret