Function at 0x14009cb7c
Capabilities:
Create thread

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
mov rbp, rsp
sub rsp, 0x80
mov qword [rbp - 0x30], 0xfffffffffffffffe
mov rax, qword [0x140109388]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov rsi, r8
mov rbx, rdx
mov rdi, rcx
lea rax, [0x140106190]
mov edx, 5
lea r13, [0x1400e6c98]
mov rcx, qword [0x140106190]
cmp rcx, rax
je 0x14009cbee
test byte [rcx + 0x1c], 1
je 0x14009cbee
cmp byte [rcx + 0x19], dl
jb 0x14009cbee
mov edx, SafeArrayUnlock
mov r9, rbx
mov r8, r13
mov rcx, qword [rcx + 0x10]
call fcn.140003620
mov rcx, qword [rdi + 0x60]
cmp rcx, rbx
je 0x14009cc26
test rbx, rbx
je 0x14009cc10
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 8]
call qword [case.0x14006d218.0]
mov rcx, qword [rdi + 0x60]
test rcx, rcx
je 0x14009cc22
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14006d218.0]
mov qword [rdi + 0x60], rbx
lea r14, [rdi + 0x68]
mov rcx, r14
call qword [sym.imp.winmde.dll_MFCreateNetVRoot]
mov ebx, eax
mov r12d, 2
mov rax, qword [0x140106190]
lea rcx, [0x140106190]
cmp rax, rcx
je 0x14009cc7e
test byte [rax + 0x1c], r12b
je 0x14009cc7e
movzx edx, byte [rax + 0x19]
mov ecx, r12d
test ebx, ebx
lea r8d, [r12 + 3]
cmovns ecx, r8d
cmp edx, ecx
jb 0x14009cc7e
lea edx, [r12 + 0x11]
mov r9d, ebx
mov r8, r13
mov rcx, qword [rax + 0x10]
call fcn.1400035ec
mov dword [rsi], 0xc00d3813
test ebx, ebx
js 0x14009d02f
and qword [rbp - 0x50], 0
mov rcx, qword [r14]
mov rax, qword [rcx]
lea r8, [rbp - 0x50]
lea rdx, [0x1400da118]
mov rax, qword [rax]
call qword [case.0x14006d218.0]
mov ebx, eax
mov r10, qword [0x140106190]
lea rax, [0x140106190]
cmp r10, rax
je 0x14009ccf0
test byte [r10 + 0x1c], r12b
je 0x14009ccf0
movzx ecx, byte [r10 + 0x19]
mov eax, r12d
test ebx, ebx
mov edx, 5
cmovns eax, edx
cmp ecx, eax
jb 0x14009ccf0
mov edx, SafeArrayUnlock
mov r9d, ebx
mov r8, r13
mov rcx, qword [r10 + 0x10]
call fcn.1400035ec
mov dword [rsi], 0xc00d3813
test ebx, ebx
js 0x14009cd90
movups xmm0, xmmword [0x1400da270]
movdqu xmmword [rbp - 0x28], xmm0
and dword [rbp - 0x18], 0
xor eax, eax
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], rax
mov eax, reloc.WSOCK32.dll_inet_ntoa
mov word [rbp - 0x48], ax
or eax, 0xffffffff
mov word [rbp - 0x40], ax
mov rcx, qword [rbp - 0x50]
mov rax, qword [rcx]
lea r8, [rbp - 0x48]
lea rdx, [rbp - 0x28]
mov rax, qword [rax + 0x30]
call qword [case.0x14006d218.0]
mov ebx, eax
mov r10, qword [0x140106190]
lea rax, [0x140106190]
cmp r10, rax
je 0x14009cd8a
test byte [r10 + 0x1c], r12b
je 0x14009cd8a
movzx ecx, byte [r10 + 0x19]
mov eax, r12d
test ebx, ebx
mov edx, 5
cmovns eax, edx
cmp ecx, eax
jb 0x14009cd8a
mov edx, reloc.OLEAUT32.dll_SafeArrayUnlock
mov r9d, ebx
mov r8, r13
mov rcx, qword [r10 + 0x10]
call fcn.1400035ec
mov dword [rsi], 0xc00d3813
mov rcx, qword [rbp - 0x50]
test rcx, rcx
je 0x14009cda6
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14006d218.0]
test ebx, ebx
js 0x14009d02f
mov rcx, qword [r14]
mov rax, qword [rcx]
lea r8, [rdi + 0x40]
mov edx, 0x252f
mov rax, qword [rax + 0x18]
call qword [case.0x14006d218.0]
mov ebx, eax
mov r10, qword [0x140106190]
lea rax, [0x140106190]
cmp r10, rax
je 0x14009ce0c
test byte [r10 + 0x1c], r12b
je 0x14009ce0c
movzx ecx, byte [r10 + 0x19]
mov eax, r12d
test ebx, ebx
mov edx, 5
cmovns eax, edx
cmp ecx, eax
jb 0x14009ce0c
mov edx, reloc.OLEAUT32.dll_SafeArrayAccessData
mov r9d, ebx
mov r8, r13
mov rcx, qword [r10 + 0x10]
call fcn.1400035ec
mov dword [rsi], 0xc00d3814
test ebx, ebx
js 0x14009d02f
mov rcx, qword [r14]
mov rax, qword [rcx]
lea r8, [rdi + 0x48]
mov edx, 0x2531
mov rax, qword [rax + 0x18]
call qword [case.0x14006d218.0]
mov ebx, eax
mov r10, qword [0x140106190]
lea rax, [0x140106190]
cmp r10, rax
je 0x14009ce78
test byte [r10 + 0x1c], r12b
je 0x14009ce78
movzx ecx, byte [r10 + 0x19]
mov eax, r12d
test ebx, ebx
mov edx, 5
cmovns eax, edx
cmp ecx, eax
jb 0x14009ce78
mov edx, DispGetParam
mov r9d, ebx
mov r8, r13
mov rcx, qword [r10 + 0x10]
call fcn.1400035ec
mov dword [rsi], 0xc00d3814
test ebx, ebx
js 0x14009d02f
mov rcx, qword [r14]
mov rax, qword [rcx]
lea r8, [rdi + 0x50]
mov edx, 0x253b
mov rax, qword [rax + 0x18]
call qword [case.0x14006d218.0]
mov ebx, eax
mov r10, qword [0x140106190]
lea rax, [0x140106190]
cmp r10, rax
je 0x14009cee4
test byte [r10 + 0x1c], r12b
je 0x14009cee4
movzx ecx, byte [r10 + 0x19]
mov eax, r12d
test ebx, ebx
mov edx, 5
cmovns eax, edx
cmp ecx, eax
jb 0x14009cee4
mov edx, DispGetParam
mov r9d, ebx
mov r8, r13
mov rcx, qword [r10 + 0x10]
call fcn.1400035ec
mov dword [rsi], 0xc00d3814
test ebx, ebx
js 0x14009d02f
lea rdx, str.https:__:10245_WMPNSSv4_LibraryInfo_
lea rcx, [rdi + 0x78]
call fcn.140008b90
mov rcx, qword [0x140106190]
lea rax, [0x140106190]
cmp rcx, rax
je 0x14009cf36
test byte [rcx + 0x1c], r12b
je 0x14009cf36
cmp byte [rcx + 0x19], 4
jb 0x14009cf36
mov edx, DispGetParam
mov r9, qword [rdi + 0x78]
mov r8, r13
mov rcx, qword [rcx + 0x10]
call fcn.140003558
mov rcx, rdi
call fcn.14009f924
mov rcx, qword [0x140106190]
lea r14, [0x140106190]
cmp rcx, r14
je 0x14009cf6e
test byte [rcx + 0x1c], r12b
je 0x14009cf6e
cmp byte [rcx + 0x19], 4
jb 0x14009cf6e
mov edx, DispGetParam
mov r8, r13
mov rcx, qword [rcx + 0x10]
call fcn.140003538
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 8]
call qword [case.0x14006d218.0]
mov rcx, qword [0x140106190]
cmp rcx, r14
je 0x14009cfa7
test byte [rcx + 0x1c], r12b
je 0x14009cfa7
cmp byte [rcx + 0x19], 4
jb 0x14009cfa7
mov edx, reloc.OLEAUT32.dll_DispGetParam
mov r8, r13
mov rcx, qword [rcx + 0x10]
call fcn.140003538
lea rax, [rdi + 0x100]
mov qword [rsp + 0x28], rax
and dword [rsp + 0x20], 0
mov r9, rdi
lea r8, [0x1400a0050]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rdi + 0xf8], rax
test rax, rax
jne 0x14009d02f
mov rax, qword [0x140106190]
cmp rax, r14
je 0x14009d01f
test byte [rax + 0x1c], r12b
je 0x14009d01f
cmp byte [rax + 0x19], r12b
jb 0x14009d01f
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx r9d, ax
or r9d, 0x80070000
test eax, eax
cmovle r9d, eax
mov edx, 0x1c
mov r8, r13
mov rcx, qword [0x140106190]
mov rcx, qword [rcx + 0x10]
call fcn.1400035ec
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 0x10]
call qword [case.0x14006d218.0]
mov rcx, qword [0x140106190]
lea rax, [0x140106190]
cmp rcx, rax
je 0x14009d075
test byte [rcx + 0x1c], 1
je 0x14009d075
mov edx, ebx
sar edx, 0x1f
and edx, 0xfffffffd
add edx, 5
movzx eax, byte [rcx + 0x19]
cmp eax, edx
jl 0x14009d075
mov edx, 0x1d
mov eax, dword [rsi]
mov dword [rsp + 0x20], eax
mov r9d, ebx
mov r8, r13
mov rcx, qword [rcx + 0x10]
call fcn.1400053dc
mov eax, ebx
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.1400cc8d0
add rsp, 0x80
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret