Function at 0x1400587f0
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x58
mov rdi, r8
mov r15, rdx
xor r13d, r13d
mov ebx, r13d
mov qword [rbp + 0x58], rbx
mov esi, r13d
mov qword [rbp + 0x60], r13
mov qword [rbp + 0x50], r13
mov r14d, r13d
mov qword [rbp - 0x28], r13
mov r12d, r13d
mov dword [rbp + 0x48], r13d
lea r8, str.CVdsCallbackObject::InitiateSecondAuction__
lea edx, [r13 + 0x5e]
lea rcx, [rbp - 0x20]
call qword [sym.imp.vdsutil.dll_public:_void___cdecl_CVdsCallTracer::constructor_unsigned_long_int__char_const____ptr64____ptr64]
nop dword [rax + rax]
nop
mov qword [rbp + 0x50], rdi
test r15, r15
je 0x140058a06
test rdi, rdi
je 0x140058a06
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov rcx, rax
lea edx, [r13 + 8]
lea r8d, [r13 + 0x20]
call qword [sym.imp.vdsutil.dll_VdsHeapAlloc]
nop dword [rax + rax]
mov rbx, rax
mov qword [rbp + 0x58], rax
test rax, rax
jne 0x1400588bd
lea eax, [rbx + 8]
mov r12d, eax
mov qword [rsp + 0x20], r15
mov r9d, eax
lea r8, str.CVdsCallbackObject::InitiateSecondAuction__2__error_lX__pwszDevicePath_s
xor edx, edx
lea ecx, [rbx + 0x5f]
call qword [sym.imp.vdsutil.dll_VdsTraceExW]
nop dword [rax + rax]
jmp 0x140058a40
mov qword [rax + 0x18], rdi
or r14, 0xffffffffffffffff
inc r14
cmp word [r15 + r14*2], r13w
jne 0x1400588c5
lea rsi, [r14*2 + 2]
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov rcx, rax
mov r8, rsi
mov edx, 8
call qword [sym.imp.vdsutil.dll_VdsHeapAlloc]
nop dword [rax + rax]
mov rsi, rax
mov qword [rbp + 0x60], rax
mov r8, r15
test rax, rax
jne 0x140058980
lea rdx, str.CVdsCallbackObject::InitiateSecondAuction__3___s
xor ecx, ecx
call qword [sym.imp.vdsutil.dll_VdsTraceW]
nop dword [rax + rax]
nop
lea rcx, [rbp - 0x20]
call qword [sym.imp.vdsutil.dll_public:_void___cdecl_CVdsCallTracer::destructor_void____ptr64]
nop dword [rax + rax]
nop
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.vdsutil.dll_VdsHeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x50], r13
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.vdsutil.dll_VdsHeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x58], r13
lea eax, [rsi + 8]
jmp 0x140058ae7
lea rdx, [r14 + 1]
mov rcx, rsi
call fcn.14000fa28
mov qword [rbx], rsi
lea rax, [rbp + 0x48]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r13d
mov r9, rbx
lea r8, [0x1400583b0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_CreateThread]
nop dword [rax + rax]
mov r14, rax
mov qword [rbp - 0x28], rax
test rax, rax
jne 0x1400589ef
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov r12d, eax
mov r9d, eax
mov r8, r15
lea rdx, str.CVdsCallbackObject::InitiateSecondAuction__4___s__error_ld
xor ecx, ecx
call qword [sym.imp.vdsutil.dll_VdsTraceW]
nop dword [rax + rax]
jmp 0x140058a40
mov rbx, r13
mov qword [rbp + 0x58], rbx
mov rsi, r13
mov qword [rbp + 0x60], r13
mov rdi, r13
mov qword [rbp + 0x50], r13
jmp 0x140058a40
mov r12d, 0x57
lea rax, str.UNKNOWN
test r15, r15
cmove r15, rax
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r15
mov r9d, r12d
lea r8, str.CVdsCallbackObject::InitiateSecondAuction__1__error_lX__pwszDevicePath_s__pLayout_p
xor edx, edx
lea ecx, [rdx + 0x5f]
call qword [sym.imp.vdsutil.dll_VdsTraceExW]
nop dword [rax + rax]
nop
lea rcx, [rbp - 0x20]
call qword [sym.imp.vdsutil.dll_public:_void___cdecl_CVdsCallTracer::destructor_void____ptr64]
nop dword [rax + rax]
nop
test r14, r14
je 0x140058a69
mov rcx, r14
call qword [sym.imp.api_ms_win_core_handle_l1_1_0.dll_CloseHandle]
nop dword [rax + rax]
mov qword [rbp - 0x28], r13
test rdi, rdi
je 0x140058a92
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.vdsutil.dll_VdsHeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x50], r13
test rsi, rsi
je 0x140058abb
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.vdsutil.dll_VdsHeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x60], r13
test rbx, rbx
je 0x140058ae4
call qword [sym.imp.api_ms_win_core_heap_l1_1_0.dll_GetProcessHeap]
nop dword [rax + rax]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.vdsutil.dll_VdsHeapFree]
nop dword [rax + rax]
mov qword [rbp + 0x58], r13
mov eax, r12d
add rsp, 0x58
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret