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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x1e0
mov esi, ecx
mov byte [esp + 0x5c], 1
mov dword [esp + 0x58], 0x1010101
mov dword [esp + 0x54], 0x1010101
mov dword [esp + 0x50], 0x1010101
lea edi, [esp + 0xd0]
lea edx, [esp + 0x50]
mov ecx, edi
call sym.__LT_sysinfo..windows..system..System_u20_as_u20_sysinfo..traits..SystemExt_GT_::new_with_specifics::he868b2120717a13f
mov ecx, edi
mov edx, 0x10101
call sym.__ZN79__LT_sysinfo..windows..system..System_u20_as_u20_sysinfo..traits..SystemExt_GT_27refresh_processes_specifics17h723a4ffa9
mov eax, dword [esi]
mov dword [esp + 0x30], eax
mov eax, dword [esi + 4]
mov dword [esp + 0xbc], eax
mov eax, dword [esi + 8]
test eax, eax
je 0x54bef3
mov ecx, dword [esp + 0x30]
lea edx, [esp + 0xc]
mov dword [esp + 0xb8], edx
lea eax, [ecx + eax*8]
mov esi, ecx
mov dword [esp + 0xc0], eax
jmp 0x54b65d
cmp esi, dword [esp + 0xc0]
je 0x54bef3
mov ecx, dword [esi]
mov edx, dword [esi + 4]
mov eax, esi
mov eax, dword [esp + 0xdc]
add esi, 8
mov dword [esp + 0x34], esi
mov dword [esp + 0x44], ecx
mov dword [esp + 0x48], edx
mov edx, dword [esp + 0xd0]
movdqa xmm0, xmmword [edx]
lea ecx, [edx + 0x10]
mov dword [esp + 0x40], ecx
pmovmskb edi, xmm0
not edi
jmp 0x54b6fb
lea eax, [esp + 0x44]
lea ecx, [esp + 0x4c]
mov dword [esp + 0x50], 0x5bf788
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], sym.__LT__RF_T_u20_as_u20_core..fmt..Display_GT_::fmt::h03504413dc392ca9
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], sym.__LT__RF_T_u20_as_u20_core..fmt..Display_GT_::fmt::h83357ee6c2ae9bd4
lea eax, [esp + 0xc]
mov dword [esp + 0x54], 3
mov dword [esp + 0x60], 0
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], 2
lea ecx, [esp + 0x50]
call dbg._print
mov esi, dword [esp + 0x34]
mov edx, dword [esp + 0x28]
nop dword [eax]
mov eax, dword [esp + 0x2c]
mov edi, dword [esp + 0xc4]
sub eax, 1
jb 0x54b650
test di, di
mov dword [esp + 0x2c], eax
je 0x54b720
test edx, edx
je 0x54b650
lea eax, [edi - 1]
and eax, edi
jmp 0x54b758
mov eax, dword [esp + 0x40]
nop word cs:[eax + eax]
nop
movdqa xmm0, xmmword [eax]
add edx, 0xfffff180
add eax, 0x10
pmovmskb edi, xmm0
cmp di, 0xffff
je 0x54b730
mov ecx, 0xfffffffe
mov dword [esp + 0x40], eax
sub ecx, edi
not edi
mov eax, edi
and eax, ecx
mov ecx, edi
mov dword [esp + 0xc4], eax
tzcnt ecx, ecx
neg ecx
imul edi, ecx, 0xe8
lea eax, [edx + edi - 0xe8]
mov dword [esp + 0x4c], eax
mov eax, dword [edx + edi - 0x38]
cmp eax, dword [esp + 0x48]
jne 0x54b6f0
add edi, edx
push eax
push dword [esp + 0x48]
push dword [edi - 0x40]
mov dword [esp + 0x34], edx
call sub.msvcrt.dll_memcmp
mov edx, dword [esp + 0x34]
add esp, 0xc
test eax, eax
jne 0x54b6f0
movzx eax, byte [0x5da16c]
mov eax, dword [0x5da100]
test eax, eax
jne 0x54b7ca
call sub.kernel32.dll_GetProcessHeap
test eax, eax
je 0x54c7b7
mov dword [0x5da100], eax
push 0xc
push 0
push eax
call sub.kernel32.dll_HeapAlloc
test eax, eax
je 0x54c7b7
mov dword [eax + 8], 0x6578652e
mov dword [eax + 4], 0x6c6c696b
mov dword [eax], 0x6b736174
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], 0xc
mov dword [esp + 0x70], 0xc
mov byte [esp + 0x74], 0
mov dword [esp + 0x98], 4
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x80], 0
mov word [esp + 0x84], 0
mov byte [esp + 0x94], 2
mov dword [esp + 0xa4], 0
mov word [esp + 0xa8], 0
mov dword [esp + 0x50], 5
mov dword [esp + 0x58], 5
mov dword [esp + 0x60], 5
movzx eax, byte [0x5da16c]
mov eax, dword [0x5da100]
test eax, eax
jne 0x54b89e
call sub.kernel32.dll_GetProcessHeap
test eax, eax
je 0x54c7c8
mov dword [0x5da100], eax
push 4
push 0
push eax
call sub.kernel32.dll_HeapAlloc
test eax, eax
je 0x54c7c8
mov dword [eax], 0x4449502f
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 4
mov dword [esp + 0x18], 4
mov byte [esp + 0x1c], 0
mov dword [esp + 0xc], 0
lea ecx, [esp + 0x98]
xor edx, edx
call dbg.reserve_for_push<std::sys::windows::args::Arg, alloc::alloc::Global>
mov edx, dword [esp + 0xa0]
mov ebx, dword [esp + 0x98]
mov ecx, dword [esp + 0x1c]
add edi, 0xffffffe4
lea eax, [edx + edx*4]
inc edx
mov dword [ebx + eax*4 + 0x10], ecx
mov dword [esp + 4], edx
movq xmm0, qword [esp + 0xc]
movsd xmm1, qword [esp + 0x14]
movsd qword [ebx + eax*4 + 8], xmm1
movq qword [ebx + eax*4], xmm0
lea eax, [esp + 0xc8]
mov dword [esp + 0xc8], edi
mov dword [esp + 0xac], 1
mov dword [esp + 0xb0], 0
mov dword [esp + 0xc], 0x5bf394
mov dword [esp + 0x10], 1
mov dword [esp + 0xa0], edx
mov dword [esp + 0xb4], 0
mov dword [esp + 0xcc], sym.core::fmt::num::imp::__LT_impl_u20_core..fmt..Display_u20_for_u20_u32_GT_::fmt::ha05222cc52361d66
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 1
mov dword [esp + 0x1c], 0
lea eax, [esp + 0xc]
lea ecx, [esp + 0xac]
mov edx, 0x5bcea8
push eax
call sym.core::fmt::write::hbafebe5e7c26ad3e
add esp, 4
test al, al
jne 0x54c7ea
mov ecx, dword [esp + 0xb4]
mov eax, dword [esp + 0xac]
mov edx, dword [esp + 0xb0]
mov edi, ecx
test ecx, ecx
mov dword [esp], eax
mov dword [esp + 8], edx
je 0x54ba01
js 0x54c81b
movzx eax, byte [0x5da16c]
mov eax, dword [0x5da100]
test eax, eax
jne 0x54b9ed
call sub.kernel32.dll_GetProcessHeap
test eax, eax
je 0x54c80d
mov dword [0x5da100], eax
push edi
push 0
push eax
call sub.kernel32.dll_HeapAlloc
mov esi, eax
test eax, eax
jne 0x54ba06
jmp 0x54c80d
mov esi, 1
push edi
push dword [esp + 4]
push esi
call sym._memcpy
add esp, 0xc
mov edx, dword [esp + 4]
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], edi
mov byte [esp + 0x1c], 0
mov dword [esp + 0xc], 0
cmp edx, dword [esp + 0x9c]
jne 0x54ba54
lea ecx, [esp + 0x98]
call dbg.reserve_for_push<std::sys::windows::args::Arg, alloc::alloc::Global>
mov ebx, dword [esp + 0x98]
mov edx, dword [esp + 0xa0]
mov ecx, dword [esp + 0x1c]
lea eax, [edx + edx*4]
inc edx
cmp dword [esp + 8], 0
mov dword [ebx + eax*4 + 0x10], ecx
movq xmm0, qword [esp + 0xc]
movsd xmm1, qword [esp + 0x14]
movsd qword [ebx + eax*4 + 8], xmm1
movq qword [ebx + eax*4], xmm0
mov dword [esp + 0xa0], edx
je 0x54ba95
push dword [esp]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
movzx eax, byte [0x5da16c]
mov eax, dword [0x5da100]
test eax, eax
jne 0x54bab7
call sub.kernel32.dll_GetProcessHeap
test eax, eax
je 0x54c7d9
mov dword [0x5da100], eax
push 2
push 0
push eax
call sub.kernel32.dll_HeapAlloc
test eax, eax
je 0x54c7d9
mov word [eax], 0x462f
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 2
mov dword [esp + 0x18], 2
mov byte [esp + 0x1c], 0
mov dword [esp + 0xc], 0
mov edx, dword [esp + 0xa0]
cmp edx, dword [esp + 0x9c]
jne 0x54bb12
lea ecx, [esp + 0x98]
call dbg.reserve_for_push<std::sys::windows::args::Arg, alloc::alloc::Global>
mov edx, dword [esp + 0xa0]
mov eax, dword [esp + 0x98]
mov esi, dword [esp + 0x1c]
lea ecx, [edx + edx*4]
inc edx
mov dword [eax + ecx*4 + 0x10], esi
movq xmm0, qword [esp + 0xc]
movsd xmm1, qword [esp + 0x14]
movsd qword [eax + ecx*4 + 8], xmm1
movq qword [eax + ecx*4], xmm0
mov dword [esp + 0xa0], edx
mov dword [esp + 0xa4], 0x8000000
lea ecx, [esp + 0xc]
lea edx, [esp + 0x50]
call dbg.output
mov eax, dword [esp + 0xc]
test eax, eax
mov dword [esp + 0x3c], eax
je 0x54be7b
cmp dword [esp + 0x24], 0
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
sete al
cmp dword [esp + 0x10], 0
mov dword [esp + 0x38], eax
je 0x54bb97
push dword [esp + 0x3c]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
test edi, edi
je 0x54bba9
push esi
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [esp + 0x6c], 0
je 0x54bbc1
push dword [esp + 0x68]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov esi, dword [esp + 0xa0]
test esi, esi
je 0x54bbfd
mov edi, dword [esp + 0x98]
add edi, 8
jmp 0x54bbe6
add edi, 0x14
dec esi
je 0x54bbfd
cmp dword [edi], 0
je 0x54bbe0
push dword [edi - 4]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
jmp 0x54bbe0
cmp dword [esp + 0x9c], 0
je 0x54bc1b
push dword [esp + 0x98]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov edi, dword [esp + 0x78]
test edi, edi
je 0x54bdba
mov ecx, dword [esp + 0x80]
mov ebx, dword [esp + 0x7c]
test ecx, ecx
je 0x54bd96
mov eax, edi
xor edi, edi
jmp 0x54bc51
mov ecx, dword [esp]
mov ebx, dword [esp + 4]
xor eax, eax
test ecx, ecx
je 0x54bda0
test edi, edi
jne 0x54bc6f
mov edi, eax
sub ebx, 1
jb 0x54bc6b
nop dword [eax]
mov edi, dword [edi + 0x1ec]
sub ebx, 1
jae 0x54bc60
xor eax, eax
xor ebx, ebx
mov esi, 1
dec ecx
sub esi, eax
mov dword [esp], ecx
movzx eax, word [edi + 0x1ea]
mov ecx, edi
cmp ebx, eax
jb 0x54bcc1
nop word [eax + eax]
mov edi, dword [ecx + 0xb0]
test edi, edi
je 0x54c790
movzx ebx, word [ecx + 0x1e8]
push ecx
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
dec esi
movzx eax, word [edi + 0x1ea]
mov ecx, edi
cmp ebx, eax
jae 0x54bc90
cmp esi, 1
jne 0x54bce0
lea eax, [ebx + 1]
mov edi, ecx
mov dword [esp + 4], eax
jmp 0x54bd09
mov edi, dword [ecx + ebx*4 + 0x1f0]
test esi, esi
mov dword [esp + 4], 0
je 0x54bd09
neg esi
nop word cs:[eax + eax]
nop
mov edi, dword [edi + 0x1ec]
dec esi
jne 0x54bd00
lea eax, [ebx + ebx*8]
lea eax, [eax + eax*2]
add eax, ebx
cmp dword [ecx + eax + 0xc4], 0
lea esi, [ecx + eax + 0xb4]
je 0x54bd3e
push dword [esi + 0xc]
push 0
push dword [0x5da100]
mov dword [esp + 0x14], ebx
mov ebx, ecx
call sub.kernel32.dll_HeapFree
mov ecx, ebx
mov ebx, dword [esp + 8]
cmp dword [esi + 4], 0
je 0x54bd5b
push dword [esi]
push 0
push dword [0x5da100]
mov esi, ebx
mov ebx, ecx
call sub.kernel32.dll_HeapFree
mov ecx, ebx
mov ebx, esi
shl ebx, 4
cmp byte [ecx + ebx + 0xc], 2
je 0x54bc40
add ecx, ebx
cmp dword [ecx + 4], 0
je 0x54bc40
push dword [ecx]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
jmp 0x54bc40
mov edi, dword [edi + 0x1ec]
sub ebx, 1
jae 0x54bd90
nop dword [eax + eax]
mov esi, dword [edi + 0xb0]
push edi
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
test esi, esi
mov edi, esi
jne 0x54bda0
cmp byte [esp + 0x94], 2
je 0x54bde2
cmp dword [esp + 0x8c], 0
je 0x54bde2
push dword [esp + 0x88]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov eax, dword [esp + 0x50]
mov esi, 0x27
cmp eax, 5
ja 0x54be93
bt esi, eax
jae 0x54be93
mov eax, dword [esp + 0x58]
cmp eax, 5
ja 0x54bea9
bt esi, eax
jae 0x54bea9
mov eax, dword [esp + 0x60]
cmp eax, 5
ja 0x54bebf
bt esi, eax
jae 0x54bebf
cmp dword [esp + 0x3c], 0
jne 0x54bed3
cmp byte [esp + 0x10], 3
jne 0x54bed3
mov esi, dword [esp + 0x14]
mov edi, dword [esi]
mov ebx, dword [esi + 4]
push edi
call dword [ebx]
add esp, 4
cmp dword [ebx + 4], 0
je 0x54be6b
cmp dword [ebx + 8], 9
jb 0x54be5d
mov edi, dword [edi - 4]
push edi
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
push esi
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
jmp 0x54bed3
mov dword [esp + 0x38], 0
cmp dword [esp + 0x6c], 0
jne 0x54bbb0
jmp 0x54bbc1
push dword [esp + 0x54]
call sub.kernel32.dll_CloseHandle
mov eax, dword [esp + 0x58]
cmp eax, 5
jbe 0x54be0a
push dword [esp + 0x5c]
call sub.kernel32.dll_CloseHandle
mov eax, dword [esp + 0x60]
cmp eax, 5
jbe 0x54be20
push dword [esp + 0x64]
call sub.kernel32.dll_CloseHandle
cmp dword [esp + 0x3c], 0
je 0x54be34
cmp byte [esp + 0x38], 0
je 0x54b694
lea eax, [esp + 0x44]
lea ecx, [esp + 0x4c]
mov dword [esp + 0x50], 0x5bf754
jmp 0x54b6a4
cmp dword [esp + 0xbc], 0
je 0x54bf0e
push dword [esp + 0x30]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov ecx, dword [esp + 0xd4]
test ecx, ecx
je 0x54c161
mov edx, dword [esp + 0xdc]
test edx, edx
je 0x54c131
mov edi, dword [esp + 0xd0]
mov eax, edx
mov ecx, eax
movdqa xmm0, xmmword [edi]
lea ebx, [edi + 0x10]
pmovmskb edx, xmm0
not edx
jmp 0x54bf5c
mov edx, dword [esp + 0x2c]
test ecx, ecx
je 0x54c12a
test dx, dx
je 0x54bf70
lea eax, [edx - 1]
and eax, edx
jmp 0x54bfa6
mov esi, ecx
nop word cs:[eax + eax]
nop dword [eax]
movdqa xmm0, xmmword [ebx]
add edi, 0xfffff180
add ebx, 0x10
pmovmskb edx, xmm0
cmp dx, 0xffff
je 0x54bf80
mov ecx, 0xfffffffe
sub ecx, edx
not edx
mov eax, edx
and eax, ecx
mov ecx, esi
mov dword [esp + 4], ecx
mov ecx, edx
mov dword [esp + 0x2c], eax
mov dword [esp + 8], edi
tzcnt ecx, ecx
neg ecx
imul eax, ecx, 0xe8
cmp dword [edi + eax - 0x3c], 0
lea esi, [edi + eax]
je 0x54bfda
push dword [esi - 0x40]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov dword [esp], esi
mov esi, dword [esi - 0x2c]
test esi, esi
je 0x54c010
mov eax, dword [esp]
mov edi, dword [eax - 0x34]
add edi, 4
jmp 0x54bff6
add edi, 0xc
dec esi
je 0x54c010
cmp dword [edi], 0
je 0x54bff0
push dword [edi - 4]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
jmp 0x54bff0
mov esi, dword [esp]
cmp dword [esi - 0x30], 0
je 0x54c029
push dword [esi - 0x34]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [esi - 0xcc], 0
je 0x54c045
push dword [esi - 0xd0]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov eax, dword [esi - 0x18]
test eax, eax
je 0x54c060
cmp dword [esi - 0x14], 0
je 0x54c060
push eax
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov esi, dword [esi - 0x20]
test esi, esi
je 0x54c0a0
mov eax, dword [esp]
mov edi, dword [eax - 0x28]
add edi, 4
jmp 0x54c086
add edi, 0xc
dec esi
je 0x54c0a0
cmp dword [edi], 0
je 0x54c080
push dword [edi - 4]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
jmp 0x54c080
mov esi, dword [esp]
cmp dword [esi - 0x24], 0
je 0x54c0b9
push dword [esi - 0x28]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [esi - 0xbc], 0
mov ecx, dword [esp + 4]
mov edi, dword [esp + 8]
je 0x54c0e1
push dword [esi - 0xc0]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov ecx, dword [esp + 4]
cmp dword [esi - 0xac], 0
je 0x54c101
push dword [esi - 0xb0]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov ecx, dword [esp + 4]
mov eax, dword [esi - 0xc]
dec ecx
test eax, eax
je 0x54bf50
lock dec dword [eax]
jne 0x54bf50
mov eax, dword [esp]
mov esi, ecx
mov ecx, dword [eax - 0xc]
call sym.alloc::sync::Arc_LT_T_GT_::drop_slow::h56f80f3bef5c046b
mov ecx, esi
jmp 0x54bf50
mov ecx, dword [esp + 0xd4]
lea eax, [ecx + 1]
mov edx, 0xe8
mul edx
add eax, 0xf
and eax, 0xfffffff0
add ecx, eax
cmp ecx, 0xffffffef
je 0x54c161
mov ecx, dword [esp + 0xd0]
sub ecx, eax
push dword [ecx - 4]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [esp + 0x16c], 0
je 0x54c17f
push dword [esp + 0x168]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov eax, dword [esp + 0x190]
test eax, eax
je 0x54c1a2
cmp dword [esp + 0x194], 0
je 0x54c1a2
push eax
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [esp + 0x178], 0
je 0x54c1c0
push dword [esp + 0x174]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [esp + 0x184], 0
je 0x54c1de
push dword [esp + 0x180]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov esi, dword [esp + 0x1a8]
test esi, esi
je 0x54c264
mov edi, dword [esp + 0x1a0]
add edi, 0x34
jmp 0x54c206
add edi, 0x40
dec esi
je 0x54c264
cmp dword [edi - 0x28], 0
je 0x54c21c
push dword [edi - 0x2c]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov eax, dword [edi - 4]
test eax, eax
je 0x54c236
cmp dword [edi], 0
je 0x54c236
push eax
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [edi - 0x1c], 0
je 0x54c24c
push dword [edi - 0x20]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [edi - 0x10], 0
je 0x54c200
push dword [edi - 0x14]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
jmp 0x54c200
cmp dword [esp + 0x1a4], 0
je 0x54c282
push dword [esp + 0x1a0]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov esi, dword [esp + 0x1b8]
test esi, esi
je 0x54c361
mov edi, dword [esp + 0x1b0]
add edi, 8
jmp 0x54c2aa
add edi, 0x38
dec esi
je 0x54c361
cmp dword [edi + 0x20], 0
je 0x54c2c0
push dword [edi + 0x1c]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [edi], 2
je 0x54c2a0
mov eax, dword [edi + 0x14]
cmp dword [edi + 0x10], 0
mov dword [edi + 0x10], 0
je 0x54c2df
test eax, eax
je 0x54c2df
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [edi + 0xc]
cmp dword [edi + 8], 0
mov dword [edi + 8], 0
je 0x54c2f9
test eax, eax
je 0x54c2f9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [edi + 4]
cmp dword [edi], 0
mov dword [edi], 0
je 0x54c311
test eax, eax
je 0x54c311
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp byte [edi + 0x18], 0
je 0x54c31c
call sub.ole32.dll_CoUninitialize
cmp dword [edi], 0
je 0x54c32e
mov eax, dword [edi + 4]
test eax, eax
je 0x54c32e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp dword [edi + 8], 0
je 0x54c341
mov eax, dword [edi + 0xc]
test eax, eax
je 0x54c341
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp dword [edi + 0x10], 0
je 0x54c2a0
mov eax, dword [edi + 0x14]
test eax, eax
je 0x54c2a0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x54c2a0
cmp dword [esp + 0x1b4], 0
je 0x54c37f
push dword [esp + 0x1b0]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov esi, dword [esp + 0x1c4]
test esi, esi
je 0x54c3ff
mov edi, dword [esp + 0x1bc]
add edi, 0x44
jmp 0x54c3a6
add edi, 0x50
dec esi
je 0x54c3ff
cmp dword [edi - 0x38], 0
je 0x54c3bc
push dword [edi - 0x3c]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [edi - 0x18], 0
je 0x54c3d2
push dword [edi - 0x1c]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [edi - 0xc], 0
je 0x54c3e8
push dword [edi - 0x10]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [edi], 0
je 0x54c3a0
push dword [edi - 4]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
jmp 0x54c3a0
cmp dword [esp + 0x1c0], 0
je 0x54c41d
push dword [esp + 0x1bc]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov esi, dword [esp + 0x130]
test esi, esi
je 0x54c5b0
movdqa xmm0, xmmword [esi]
mov ecx, dword [esp + 0x13c]
lea edi, [esi + 0x10]
pmovmskb eax, xmm0
not eax
jmp 0x54c46d
lea ebx, [eax - 1]
and ebx, eax
tzcnt eax, eax
mov ecx, esi
shl eax, 4
sub ecx, eax
push dword [ecx - 4]
call sub.pdh.dll_PdhRemoveCounter
mov ecx, dword [esp]
mov eax, ebx
sub ecx, 1
jb 0x54c4a6
test ax, ax
mov dword [esp], ecx
jne 0x54c450
nop word [eax + eax]
movdqa xmm0, xmmword [edi]
add esi, 0xffffff00
add edi, 0x10
pmovmskb eax, xmm0
cmp ax, 0xffff
je 0x54c480
mov ecx, 0xfffffffe
sub ecx, eax
not eax
mov ebx, eax
and ebx, ecx
jmp 0x54c455
mov eax, dword [esp + 0x154]
test eax, eax
je 0x54c4b7
push eax
call sub.kernel32.dll_CloseHandle
mov eax, dword [esp + 0x150]
test eax, eax
je 0x54c4c8
push eax
call sub.pdh.dll_PdhCloseQuery
mov ecx, dword [esp + 0x134]
test ecx, ecx
je 0x54c5b0
mov edx, dword [esp + 0x13c]
test edx, edx
je 0x54c58b
mov esi, dword [esp + 0x130]
mov dword [esp + 4], ecx
movdqa xmm0, xmmword [esi]
lea edi, [esi + 0x10]
mov dword [esp + 8], esi
pmovmskb eax, xmm0
not eax
jmp 0x54c516
test edx, edx
mov eax, ebx
je 0x54c581
test ax, ax
je 0x54c530
lea ebx, [eax - 1]
and ebx, eax
jmp 0x54c554
movdqa xmm0, xmmword [edi]
add esi, 0xffffff00
add edi, 0x10
pmovmskb eax, xmm0
cmp ax, 0xffff
je 0x54c530
mov ecx, 0xfffffffe
sub ecx, eax
not eax
mov ebx, eax
and ebx, ecx
tzcnt ecx, eax
mov eax, esi
dec edx
shl ecx, 4
sub eax, ecx
cmp dword [eax - 0xc], 0
je 0x54c510
add eax, 0xfffffff0
push dword [eax]
push 0
push dword [0x5da100]
mov dword [esp + 0xc], edx
call sub.kernel32.dll_HeapFree
mov edx, dword [esp]
jmp 0x54c510
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
jmp 0x54c592
mov edx, dword [esp + 0x130]
mov eax, ecx
shl eax, 4
add ecx, eax
cmp ecx, 0xffffffdf
je 0x54c5b0
sub edx, eax
push dword [edx - 0x14]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov ecx, dword [esp + 0xf4]
test ecx, ecx
je 0x54c696
mov edx, dword [esp + 0xfc]
test edx, edx
je 0x54c66b
mov esi, dword [esp + 0xf0]
mov dword [esp + 4], ecx
movdqa xmm0, xmmword [esi]
lea edi, [esi + 0x10]
mov dword [esp + 8], esi
pmovmskb eax, xmm0
not eax
jmp 0x54c5f6
test edx, edx
mov eax, ebx
je 0x54c661
test ax, ax
je 0x54c610
lea ebx, [eax - 1]
and ebx, eax
jmp 0x54c634
movdqa xmm0, xmmword [edi]
add esi, 0xfffff800
add edi, 0x10
pmovmskb eax, xmm0
cmp ax, 0xffff
je 0x54c610
mov ecx, 0xfffffffe
sub ecx, eax
not eax
mov ebx, eax
and ebx, ecx
tzcnt ecx, eax
mov eax, esi
dec edx
shl ecx, 7
sub eax, ecx
cmp dword [eax - 0x7c], 0
je 0x54c5f0
add eax, 0xffffff80
push dword [eax]
push 0
push dword [0x5da100]
mov dword [esp + 0xc], edx
call sub.kernel32.dll_HeapFree
mov edx, dword [esp]
jmp 0x54c5f0
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
jmp 0x54c672
mov edx, dword [esp + 0xf0]
mov eax, ecx
shl eax, 7
add ecx, eax
cmp ecx, 0xffffff6f
je 0x54c696
sub edx, eax
push dword [edx - 0x84]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov eax, dword [esp + 0x1d0]
test eax, eax
mov dword [esp + 8], eax
je 0x54c76a
mov edi, dword [esp + 0x1c8]
xor ebx, ebx
mov dword [esp + 4], edi
jmp 0x54c6ca
cmp ebx, dword [esp + 8]
je 0x54c76a
lea esi, [ebx + ebx*4]
cmp dword [edi + esi*8 + 4], 0
je 0x54c6e6
lea eax, [edi + esi*8]
push dword [eax]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
cmp dword [edi + esi*8 + 0x10], 0
mov dword [esp], ebx
je 0x54c703
lea eax, [edi + esi*8 + 0xc]
push dword [eax]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov ebx, dword [edi + esi*8 + 0x20]
test ebx, ebx
je 0x54c740
mov eax, dword [esp + 4]
mov edi, dword [eax + esi*8 + 0x18]
add edi, 4
jmp 0x54c726
add edi, 0xc
dec ebx
je 0x54c740
cmp dword [edi], 0
je 0x54c720
push dword [edi - 4]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
jmp 0x54c720
mov edi, dword [esp + 4]
mov ebx, dword [esp]
lea eax, [edi + esi*8 + 0x18]
inc ebx
cmp dword [eax + 4], 0
je 0x54c6c0
push dword [eax]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
jmp 0x54c6c0
cmp dword [esp + 0x1cc], 0
je 0x54c788
push dword [esp + 0x1c8]
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push ecx
push 0
push dword [0x5da100]
call sub.kernel32.dll_HeapFree
mov ecx, str.called__Option::unwrap____on_a__None__valueC:UsersTEST.cargo_registry_srcindex.crates.io_6f17d22bba15001fwinapi_util_0.1.5_srcwin.rs
mov edx, 0x2b
push 0x5bf374
call dbg.panic
add esp, 4
ud2
mov ecx, 1
mov edx, 0xc
call dbg.handle_alloc_error
ud2
mov ecx, 1
mov edx, 4
call dbg.handle_alloc_error
ud2
mov ecx, 1
mov edx, 2
call dbg.handle_alloc_error
ud2
lea eax, [esp + 0xc]
mov ecx, str.a_Display_implementation_returned_an_error_unexpectedly_rustc_eb26296b556cef10fb713a38f3d16b9886080f26library_alloc_src_string.rs
mov edx, 0x37
push 0x5bf598
push 0x5bcec0
push eax
call dbg.unwrap_failed
add esp, 0xc
ud2
mov ecx, 1
mov edx, edi
call dbg.handle_alloc_error
ud2
call sym.alloc::raw_vec::capacity_overflow::h894971bc65aab54c
ud2