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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x1a0
movzx eax, byte [ebp + 0x14]
mov esi, edx
mov dword [esp + 0x6c], 4
mov dword [esp + 0x70], 0
mov dword [esp + 0x144], ecx
mov dword [esp + 0x5c], edx
mov dword [esp + 0x74], 0
mov byte [esp + 0xb3], al
call dbg.__getit
test eax, eax
je 0x44ef11
movdqu xmm0, xmmword [eax]
movd ecx, xmm0
pshufd xmm1, xmm0, 0x55
add ecx, 1
movd edx, xmm1
adc edx, 0
mov dword [eax], ecx
mov dword [eax + 4], edx
movdqu xmmword [esp + 0x148], xmm0
mov dword [esp + 0x158], 0x5a4060
mov dword [esp + 0x15c], 0
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
mov dword [esp + 0x168], 8
mov dword [esp + 0x16c], 0
mov dword [esp + 0x170], 0
mov eax, dword [esi]
mov edi, dword [eax + 0xc]
mov eax, dword [eax + 0x14]
lea eax, [eax + eax*2]
lea eax, [edi + eax*8]
mov dword [esp + 0xc], eax
jmp 0x44c769
mov edx, dword [edi]
lea esi, [edi + 0x18]
lea ecx, [esp + 0x148]
push dword [edi + 4]
call sym.indexmap::map::IndexMap_LT_K_C_V_C_S_GT_::insert_full::h4b59644cd6e8f2b1
add esp, 4
mov edi, esi
cmp edi, dword [esp + 0xc]
je 0x44c7f2
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x44c750
mov ecx, dword [esp + 0x5c]
mov ecx, dword [ecx]
mov edx, dword [ecx + 8]
lea ecx, [esp + 0x78]
push eax
push edi
call sym.clap::build::app::App::unroll_requirements_for_arg::h1f1a8e17dbd9c954
add esp, 8
mov dword [esp + 8], edi
mov edi, dword [esp + 0x80]
mov eax, dword [esp + 0x7c]
mov ebx, dword [esp + 0x78]
xor esi, esi
shl edi, 3
mov dword [esp + 0x20], eax
nop dword [eax]
cmp edi, esi
je 0x44c7d0
mov edx, dword [ebx + esi]
lea ecx, [esp + 0x148]
push dword [ebx + esi + 4]
add esi, 8
call sym.indexmap::map::IndexMap_LT_K_C_V_C_S_GT_::insert_full::h4b59644cd6e8f2b1
add esp, 4
jmp 0x44c7b0
cmp dword [esp + 0x20], 0
mov edi, dword [esp + 8]
je 0x44c750
push ebx
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
jmp 0x44c750
mov eax, dword [esp + 0x5c]
lea esi, [esp + 0x5c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov ecx, dword [eax + 0x128]
imul eax, dword [eax + 0x130], 0x38
add eax, ecx
mov dword [esp + 0x104], ecx
mov dword [esp + 0x108], eax
mov dword [esp + 0x10c], esi
mov dword [esp + 0x110], esi
mov dword [esp + 0x114], 0
mov dword [esp + 0x124], 0
lea ecx, [esp + 0x188]
lea edx, [esp + 0x104]
call sym.__ZN114__LT_core..iter..adapters..flatten..FlatMap_LT_I_C_U_C_F_GT__u20_as_u20_core..iter..traits..iterator..Iterator_GT_4next
cmp dword [esp + 0x188], 0
je 0x44c92e
mov eax, dword [esp + 0x120]
mov ebx, dword [esp + 0x114]
mov ecx, dword [esp + 0x130]
mov edx, dword [esp + 0x124]
mov esi, 3
sub eax, dword [esp + 0x11c]
shr eax, 3
test ebx, ebx
cmove eax, ebx
sub ecx, dword [esp + 0x12c]
shr ecx, 3
test edx, edx
cmove ecx, edx
add ecx, eax
cmp ecx, 4
cmovae esi, ecx
cmp esi, 0xffffffe
ja 0x44ef47
lea edi, [esi*8 + 8]
inc esi
test edi, edi
js 0x44ef47
mov ecx, dword [esp + 0x194]
mov edx, dword [esp + 0x190]
je 0x44c9a5
mov dword [esp + 0xc], ebx
movzx eax, byte [0x5c6170]
mov eax, dword [0x5c6108]
mov dword [esp + 0x20], ecx
mov dword [esp + 8], edx
test eax, eax
jne 0x44c902
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x44c91d
mov dword [0x5c6108], eax
push edi
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 8]
mov ebx, eax
test eax, eax
jne 0x44c9aa
mov ecx, 8
mov edx, edi
call dbg.handle_alloc_error
jmp 0x44ef93
mov eax, dword [esp + 0x114]
mov esi, dword [ebp + 0xc]
mov dword [esp + 0xf8], 8
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
test eax, eax
je 0x44c975
cmp dword [esp + 0x118], 0
je 0x44c975
push eax
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x124]
test eax, eax
je 0x44cb50
cmp dword [esp + 0x128], 0
je 0x44cb50
push eax
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
jmp 0x44cb50
mov ebx, 8
mov dword [ebx], edx
mov dword [ebx + 4], ecx
mov dword [esp + 0xb4], ebx
mov dword [esp + 0xb8], esi
mov esi, 1
mov dword [esp + 0xbc], 1
movsd xmm1, qword [esp + 0x124]
movsd xmm2, qword [esp + 0x11c]
movq xmm0, qword [esp + 0x12c]
movsd qword [esp + 0x98], xmm1
movsd xmm1, qword [esp + 0x114]
movsd qword [esp + 0x90], xmm2
movq xmm2, qword [esp + 0x104]
movq qword [esp + 0xa0], xmm0
movsd qword [esp + 0x88], xmm1
movq xmm1, qword [esp + 0x10c]
movq qword [esp + 0x78], xmm2
movq qword [esp + 0x80], xmm1
jmp 0x44ca4f
mov dword [ebx + esi*8], eax
mov dword [ebx + esi*8 + 4], edi
inc esi
mov dword [esp + 0xbc], esi
lea ecx, [esp + 0x178]
lea edx, [esp + 0x78]
call sym.__ZN114__LT_core..iter..adapters..flatten..FlatMap_LT_I_C_U_C_F_GT__u20_as_u20_core..iter..traits..iterator..Iterator_GT_4next
cmp dword [esp + 0x178], 1
jne 0x44cae7
mov edi, dword [esp + 0x184]
mov eax, dword [esp + 0x180]
cmp esi, dword [esp + 0xb8]
jne 0x44ca40
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0xa4]
mov ecx, dword [esp + 0x94]
mov ebx, dword [esp + 0x88]
mov edx, 1
sub eax, dword [esp + 0xa0]
sub ecx, dword [esp + 0x90]
shr eax, 3
shr ecx, 3
inc eax
test ebx, ebx
cmove ecx, ebx
cmp dword [esp + 0x98], 0
cmove eax, edx
add eax, ecx
mov edx, esi
lea ecx, [esp + 0xb4]
push eax
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::reserve::do_reserve_and_handle::h6c78a05572fb2686
add esp, 4
mov ebx, dword [esp + 0xb4]
mov eax, dword [esp + 0x20]
jmp 0x44ca40
mov eax, dword [esp + 0x88]
test eax, eax
je 0x44cb0a
cmp dword [esp + 0x8c], 0
je 0x44cb0a
push eax
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x98]
mov esi, dword [ebp + 0xc]
test eax, eax
je 0x44cb30
cmp dword [esp + 0x9c], 0
je 0x44cb30
push eax
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
movsd xmm0, qword [esp + 0xb4]
mov eax, dword [esp + 0xbc]
movsd qword [esp + 0xf8], xmm0
mov dword [esp + 0x100], eax
mov eax, dword [esp + 0x170]
mov edx, dword [esp + 0x168]
mov edi, dword [ebp + 8]
shl eax, 4
lea ecx, [edi + esi*8]
mov edi, edi
mov dword [esp + 0x3c], edx
add eax, edx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], eax
jmp 0x44cb9e
mov eax, dword [esp + 0x6c]
movdqa xmm0, xmmword [esp + 0x20]
lea ecx, [edx + edx*2]
mov edx, dword [esp + 0xc]
mov dword [eax + ecx*4], esi
movq qword [eax + ecx*4 + 4], xmm0
inc dword [esp + 0x74]
test edx, edx
je 0x44cdf0
mov ecx, dword [esp + 0xf8]
mov esi, dword [esp + 0x100]
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x48], ecx
mov ecx, dword [ebp + 0x10]
shl esi, 3
mov dword [esp + 0x4c], eax
mov dword [esp + 0x58], esi
mov dword [esp + 0xac], ecx
cmp edx, dword [esp + 0x54]
je 0x44cdf0
lea eax, [edx + 0x10]
mov esi, dword [edx]
mov edx, dword [edx + 4]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x20], esi
mov dword [esp + 8], edx
mov eax, dword [eax]
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 0x20]
mov ebx, dword [ecx + 0x18]
mov edi, ecx
test eax, eax
mov dword [esp + 0x14], eax
je 0x44cc50
mov edx, dword [esp + 0x14]
lea ecx, [ebx + 0x38]
shl edx, 6
lea edx, [edx + edx*4]
jmp 0x44cc2e
add ecx, 0x140
add edx, 0xfffffec0
je 0x44cc50
cmp dword [ecx + 0x18], 0
jne 0x44cc20
cmp dword [ecx + 0x44], 0x110000
jne 0x44cc20
mov esi, dword [ecx]
mov eax, dword [ecx + 4]
xor esi, dword [esp + 0x20]
xor eax, dword [esp + 8]
or eax, esi
jne 0x44cc20
jmp 0x44cc7b
mov ecx, dword [edi + 0x128]
imul eax, dword [edi + 0x130], 0x38
nop dword [eax]
test eax, eax
je 0x44cc90
mov edx, dword [ecx]
mov esi, dword [ecx + 4]
add eax, 0xffffffc8
add ecx, 0x38
xor edx, dword [esp + 0x20]
xor esi, dword [esp + 8]
or esi, edx
jne 0x44cc60
mov edx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
jmp 0x44cbd5
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x48]
mov edi, dword [esp + 0x1c]
nop dword [eax]
test eax, eax
je 0x44ccc4
mov edx, dword [ecx]
mov esi, dword [ecx + 4]
add eax, 0xfffffff8
add ecx, 8
xor edx, dword [esp + 0x20]
xor esi, dword [esp + 8]
or esi, edx
jne 0x44cca0
mov edx, dword [esp + 0x18]
jmp 0x44cbd5
mov eax, dword [esp + 0xac]
test eax, eax
je 0x44cde0
cmp dword [eax + 0x1c], 0
je 0x44cde0
mov edx, dword [eax + 4]
mov ecx, dword [eax]
push dword [esp + 8]
push dword [esp + 0x24]
push dword [eax + 0xc]
push dword [eax + 8]
mov esi, eax
call sym.indexmap::map::IndexMap_LT_K_C_V_C_S_GT_::hash::h24d0e31b59db8ae2
add esp, 0x10
mov ecx, eax
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x14]
mov dword [esp + 0x38], eax
mov eax, dword [esi + 0x28]
mov dword [esp + 0xc], edx
and edx, ecx
shr ecx, 0x19
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
mov dword [esp + 0x40], eax
mov eax, dword [esi + 0x10]
pshufd xmm0, xmm0, 0
movdqa xmm2, xmm0
movdqu xmm1, xmmword [eax + edx]
mov dword [esp + 0x10], eax
xor eax, eax
pcmpeqb xmm2, xmm1
pmovmskb esi, xmm2
test si, si
jne 0x44cd88
nop word [eax + eax]
pcmpeqd xmm2, xmm2
pcmpeqb xmm1, xmm2
pmovmskb ecx, xmm1
test ecx, ecx
jne 0x44cde0
lea edx, [eax + edx + 0x10]
mov ecx, dword [esp + 0x10]
movdqa xmm2, xmm0
add eax, 0x10
and edx, dword [esp + 0xc]
movdqu xmm1, xmmword [ecx + edx]
pcmpeqb xmm2, xmm1
pmovmskb esi, xmm2
test esi, esi
je 0x44cd50
tzcnt ecx, esi
mov edi, dword [esp + 0x10]
add ecx, edx
and ecx, dword [esp + 0xc]
shl ecx, 2
sub edi, ecx
mov ecx, dword [edi - 4]
cmp dword [esp + 0x40], ecx
jbe 0x44ec76
lea edi, [esi - 1]
imul ecx, ecx, 0x38
and edi, esi
mov dword [esp + 0x44], edi
mov edi, dword [esp + 0x38]
mov esi, dword [edi + ecx + 4]
mov ecx, dword [edi + ecx]
mov edi, dword [esp + 0x1c]
xor esi, dword [esp + 8]
xor ecx, dword [esp + 0x20]
or ecx, esi
mov esi, dword [esp + 0x44]
jne 0x44cd42
mov edx, dword [esp + 0x18]
jmp 0x44cbd5
mov eax, dword [esp + 0x18]
mov dword [esp + 0xc], eax
jmp 0x44d058
test edi, edi
je 0x44d14e
cmp edi, dword [esp + 0x50]
je 0x44d14e
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x100]
mov edx, dword [ebp + 0x10]
mov eax, dword [eax]
shl ecx, 3
mov dword [esp + 0xa8], edx
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0xf8]
mov eax, dword [eax + 8]
mov dword [esp + 0xac], ecx
mov ebx, dword [eax + 0x18]
mov dword [esp + 0x44], eax
mov eax, dword [eax + 0x20]
mov dword [esp + 0x14], eax
shl eax, 6
lea ecx, [ebx + 0x38]
lea eax, [eax + eax*4]
mov dword [esp + 0x48], ecx
mov dword [esp + 0x38], eax
jmp 0x44ce6a
cmp edi, dword [esp + 0x50]
je 0x44d14e
mov eax, edi
mov ecx, dword [edi]
mov eax, dword [edi + 4]
cmp dword [esp + 0x14], 0
lea edi, [edi + 8]
mov dword [esp + 0x20], ecx
mov dword [esp + 8], eax
je 0x44cec0
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x48]
jmp 0x44ce9d
add ecx, 0x140
add eax, 0xfffffec0
je 0x44cec0
cmp dword [ecx + 0x18], 0
jne 0x44ce90
cmp dword [ecx + 0x44], 0x110000
jne 0x44ce90
mov edx, dword [ecx]
mov esi, dword [ecx + 4]
xor edx, dword [esp + 0x20]
xor esi, dword [esp + 8]
or esi, edx
jne 0x44ce90
jmp 0x44ce60
mov eax, dword [esp + 0x44]
mov ecx, dword [eax + 0x128]
imul eax, dword [eax + 0x130], 0x38
nop word cs:[eax + eax]
nop dword [eax + eax]
test eax, eax
je 0x44cf00
mov edx, dword [ecx]
mov esi, dword [ecx + 4]
add eax, 0xffffffc8
add ecx, 0x38
xor edx, dword [esp + 0x20]
xor esi, dword [esp + 8]
or esi, edx
jne 0x44cee0
jmp 0x44ce60
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0xac]
nop dword [eax + eax]
test eax, eax
je 0x44cf30
mov edx, dword [ecx]
mov esi, dword [ecx + 4]
add eax, 0xfffffff8
add ecx, 8
xor edx, dword [esp + 0x20]
xor esi, dword [esp + 8]
or esi, edx
jne 0x44cf10
jmp 0x44ce60
mov esi, dword [esp + 0xa8]
test esi, esi
je 0x44d050
cmp dword [esi + 0x1c], 0
je 0x44d050
mov edx, dword [esi + 4]
mov ecx, dword [esi]
push dword [esp + 8]
push dword [esp + 0x24]
push dword [esi + 0xc]
push dword [esi + 8]
call sym.indexmap::map::IndexMap_LT_K_C_V_C_S_GT_::hash::h24d0e31b59db8ae2
add esp, 0x10
mov ecx, eax
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x14]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x4c], eax
mov eax, dword [esi + 0x28]
mov dword [esp + 0xc], edx
and edx, ecx
shr ecx, 0x19
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
mov dword [esp + 0x40], eax
mov eax, dword [esi + 0x10]
pshufd xmm0, xmm0, 0
movdqa xmm2, xmm0
movdqu xmm1, xmmword [eax + edx]
mov dword [esp + 0x10], eax
xor eax, eax
pcmpeqb xmm2, xmm1
pmovmskb esi, xmm2
test si, si
jne 0x44cff8
nop word cs:[eax + eax]
nop
pcmpeqd xmm2, xmm2
pcmpeqb xmm1, xmm2
pmovmskb ecx, xmm1
test ecx, ecx
jne 0x44d050
lea edx, [eax + edx + 0x10]
mov ecx, dword [esp + 0x10]
movdqa xmm2, xmm0
add eax, 0x10
and edx, dword [esp + 0xc]
movdqu xmm1, xmmword [ecx + edx]
pcmpeqb xmm2, xmm1
pmovmskb esi, xmm2
test esi, esi
je 0x44cfc0
tzcnt ecx, esi
mov edi, dword [esp + 0x10]
add ecx, edx
and ecx, dword [esp + 0xc]
shl ecx, 2
sub edi, ecx
mov ecx, dword [edi - 4]
cmp dword [esp + 0x40], ecx
jbe 0x44ec76
lea edi, [esi - 1]
imul ecx, ecx, 0x38
and edi, esi
mov dword [esp + 0x18], edi
mov edi, dword [esp + 0x4c]
mov esi, dword [edi + ecx + 4]
mov ecx, dword [edi + ecx]
mov edi, dword [esp + 0x1c]
xor esi, dword [esp + 8]
xor ecx, dword [esp + 0x20]
or ecx, esi
mov esi, dword [esp + 0x18]
jne 0x44cfb0
jmp 0x44ce60
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0x14]
add ebx, 0xfffffec0
shl eax, 6
lea eax, [eax + eax*4]
nop dword [eax + eax]
test eax, eax
je 0x44eca8
mov ecx, dword [ebx + 0x178]
mov edx, dword [ebx + 0x17c]
add ebx, 0x140
add eax, 0xfffffec0
xor ecx, dword [esp + 0x20]
xor edx, dword [esp + 8]
or edx, ecx
jne 0x44d070
lea eax, [esp + 0xb4]
mov dword [esp + 0xb4], 1
mov dword [esp + 0xb8], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x88], 0x20
mov byte [esp + 0x98], 3
mov dword [esp + 0x78], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], 0x54df5c
mov ecx, ebx
lea edx, [esp + 0x78]
call sym.__LT_clap..build..arg..Arg_u20_as_u20_core..fmt..Display_GT_::fmt::hed1612eb02c129e1
test al, al
jne 0x44edb6
mov edx, dword [esp + 0x74]
movsd xmm0, qword [esp + 0xb8]
mov esi, dword [esp + 0xb4]
cmp edx, dword [esp + 0x70]
movaps xmmword [esp + 0x20], xmm0
jne 0x44cb80
lea ecx, [esp + 0x6c]
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::reserve_for_push::h162a2e79bd6c5b6f
mov edx, dword [esp + 0x74]
jmp 0x44cb80
mov dword [esp + 0xec], 4
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0
jmp 0x44d18f
mov edi, dword [esp + 0x20]
mov ecx, dword [esp + 8]
lea eax, [edx + edx*2]
inc edx
mov dword [esi + eax*4], ecx
mov dword [esi + eax*4 + 4], ebx
mov dword [esi + eax*4 + 8], edi
mov dword [esp + 0xf4], edx
mov ecx, dword [esp + 0x5c]
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x20], ecx
cmp esi, dword [esp + 0x54]
je 0x44d7fb
mov ecx, dword [ecx]
lea eax, [esi + 0x10]
mov dword [esp + 0x4c], esi
mov dword [esp + 0x3c], eax
mov eax, dword [ecx + 8]
mov ecx, dword [esi]
mov esi, dword [esi + 4]
mov edx, dword [eax + 0x128]
imul edi, dword [eax + 0x130], 0x38
mov dword [esp + 8], eax
nop dword [eax + eax]
test edi, edi
je 0x44d1f0
mov ebx, dword [edx]
mov eax, dword [edx + 4]
add edi, 0xffffffc8
add edx, 0x38
xor ebx, ecx
xor eax, esi
or eax, ebx
jne 0x44d1d0
jmp 0x44d210
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x20]
cmp esi, dword [esp + 0x54]
jne 0x44d1a5
jmp 0x44d7fb
mov eax, dword [ebp + 0x10]
test eax, eax
mov dword [esp + 0x40], eax
je 0x44d3a0
mov edx, dword [esp + 8]
lea ecx, [esp + 0x78]
push dword [esp + 0x4c]
call sym.clap::build::app::App::unroll_args_in_group::he1857752d0d384d5
add esp, 4
mov ecx, dword [esp + 0x78]
mov eax, dword [esp + 0x80]
lea eax, [ecx + eax*8]
mov dword [esp + 0x38], ecx
mov dword [esp + 0x44], eax
jmp 0x44d257
mov ecx, dword [esp + 0x18]
add ecx, 8
cmp ecx, dword [esp + 0x44]
mov dword [esp + 0x18], ecx
je 0x44d36b
mov eax, dword [esp + 0x40]
cmp dword [eax + 0x1c], 0
je 0x44d250
mov esi, dword [esp + 0x40]
mov eax, dword [esp + 0x18]
mov edi, dword [eax]
mov edx, dword [esi + 4]
mov eax, dword [eax + 4]
mov ecx, dword [esi]
mov dword [esp + 0xc], eax
push eax
mov dword [esp + 0xc], edi
push edi
push dword [esi + 0xc]
push dword [esi + 8]
call sym.indexmap::map::IndexMap_LT_K_C_V_C_S_GT_::hash::h24d0e31b59db8ae2
add esp, 0x10
mov edi, dword [esi + 0x14]
mov ecx, dword [esi + 0x20]
mov ebx, edi
mov dword [esp + 0x10], ecx
mov ecx, dword [esi + 0x28]
mov dword [esp + 0x14], edi
and ebx, eax
shr eax, 0x19
movd xmm0, eax
mov eax, dword [esi + 0x10]
xor esi, esi
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
mov dword [esp + 0x20], ecx
pshufd xmm0, xmm0, 0
movdqu xmm1, xmmword [eax + ebx]
movdqa xmm2, xmm0
mov dword [esp + 0x1c], eax
pcmpeqb xmm2, xmm1
pmovmskb edx, xmm2
test dx, dx
jne 0x44d322
nop word cs:[eax + eax]
pcmpeqd xmm2, xmm2
pcmpeqb xmm1, xmm2
pmovmskb ecx, xmm1
test ecx, ecx
jne 0x44d250
lea ebx, [esi + ebx + 0x10]
movdqa xmm2, xmm0
add esi, 0x10
and ebx, edi
movdqu xmm1, xmmword [eax + ebx]
pcmpeqb xmm2, xmm1
pmovmskb edx, xmm2
test edx, edx
je 0x44d2f0
tzcnt ecx, edx
add ecx, ebx
and ecx, edi
mov edi, eax
shl ecx, 2
sub edi, ecx
mov ecx, dword [edi - 4]
cmp dword [esp + 0x20], ecx
jbe 0x44ec60
mov eax, dword [esp + 0x10]
lea edi, [edx - 1]
imul ecx, ecx, 0x38
and edi, edx
mov edx, dword [eax + ecx + 4]
mov ecx, dword [eax + ecx]
mov eax, dword [esp + 0x1c]
xor edx, dword [esp + 0xc]
xor ecx, dword [esp + 8]
or ecx, edx
mov edx, edi
mov edi, dword [esp + 0x14]
jne 0x44d2e1
cmp dword [esp + 0x7c], 0
je 0x44d383
push dword [esp + 0x38]
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x4c]
cmp eax, dword [esp + 0x44]
jne 0x44d18f
mov eax, dword [esp + 0x5c]
mov eax, dword [eax]
mov edx, dword [eax + 8]
jmp 0x44d3a8
mov edx, dword [esp + 8]
mov esi, dword [esp + 0x4c]
lea ecx, [esp + 0xd8]
mov dword [esp + 8], edx
push esi
call sym.clap::build::app::App::unroll_args_in_group::he1857752d0d384d5
add esp, 4
mov ecx, dword [esp + 0xd8]
mov eax, dword [esp + 0xe0]
lea eax, [ecx + eax*8]
mov dword [esp + 0x14], eax
cmp ecx, eax
je 0x44d600
mov edx, dword [esp + 8]
lea eax, [ecx + 8]
mov edi, 0xfffffec0
mov dword [esp + 0x20], eax
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov esi, dword [edx + 0x20]
mov edx, dword [edx + 0x18]
shl esi, 6
add edx, edi
lea esi, [esi + esi*4]
nop dword [eax]
test esi, esi
je 0x44d430
mov edi, dword [edx + 0x178]
mov ebx, dword [edx + 0x17c]
add edx, 0x140
add esi, 0xfffffec0
xor edi, eax
xor ebx, ecx
or ebx, edi
jne 0x44d400
jmp 0x44d450
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x14]
cmp ecx, eax
jne 0x44d3d9
jmp 0x44d600
lea ecx, [esp + 0x78]
call sym.__ZN4core3ops8function5impls80__LT_impl_u20_core..ops..function..FnOnce_LT_A_GT__u20_for_u20__RF_mut_u20_F_GT_9call_once17h4e4
mov edi, dword [esp + 0x78]
test edi, edi
je 0x44d600
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0x80]
movzx eax, byte [0x5c6170]
mov eax, dword [0x5c6108]
test eax, eax
jne 0x44d492
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x44eddc
mov dword [0x5c6108], eax
push 0x30
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x44eddc
mov dword [eax], edi
mov edi, dword [esp + 8]
mov edx, 1
mov dword [eax + 4], esi
mov dword [eax + 8], ebx
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], 4
mov dword [esp + 0xbc], 1
jmp 0x44d4fe
mov eax, dword [esp + 0x10]
lea ecx, [edx + edx*2]
inc edx
mov dword [eax + ecx*4], ebx
mov ebx, dword [esp + 0x1c]
mov dword [eax + ecx*4 + 8], esi
mov dword [eax + ecx*4 + 4], ebx
mov dword [esp + 0xbc], edx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
cmp ecx, dword [esp + 0x14]
je 0x44d5e0
mov esi, dword [edi + 0x20]
lea eax, [ecx + 8]
mov edx, dword [edi + 0x18]
mov edi, 0xfffffec0
mov dword [esp + 0x20], eax
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
shl esi, 6
add edx, edi
lea esi, [esi + esi*4]
nop word cs:[eax + eax]
nop dword [eax]
test esi, esi
je 0x44d570
mov ebx, dword [edx + 0x178]
mov edi, dword [edx + 0x17c]
add edx, 0x140
add esi, 0xfffffec0
xor ebx, eax
xor edi, ecx
or edi, ebx
jne 0x44d540
jmp 0x44d580
mov ecx, dword [esp + 0x20]
mov edi, dword [esp + 8]
cmp ecx, dword [esp + 0x14]
jne 0x44d514
jmp 0x44d5e0
lea ecx, [esp + 0x78]
call sym.__ZN4core3ops8function5impls80__LT_impl_u20_core..ops..function..FnOnce_LT_A_GT__u20_for_u20__RF_mut_u20_F_GT_9call_once17h4e4
mov ebx, dword [esp + 0x78]
mov edi, dword [esp + 8]
test ebx, ebx
je 0x44d5e0
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 0x7c]
mov esi, dword [esp + 0x80]
cmp edx, dword [esp + 0xb8]
mov dword [esp + 0x1c], eax
jne 0x44d4e0
lea ecx, [esp + 0xb4]
push 1
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::reserve::do_reserve_and_handle::hc1f1587e11372e7e
add esp, 4
mov eax, dword [esp + 0xb4]
mov edx, dword [esp + 0xc]
mov dword [esp + 0x10], eax
jmp 0x44d4e0
movq xmm0, qword [esp + 0xb4]
mov ebx, dword [esp + 0xbc]
movq qword [esp + 0x60], xmm0
mov dword [esp + 0x68], ebx
mov esi, dword [esp + 0x60]
jmp 0x44d61f
mov dword [esp + 0x60], 4
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
mov esi, 4
xor ebx, ebx
mov edx, esi
lea ecx, [esp + 0x78]
push 1
push 0x54d924
push ebx
call sym.alloc::str::join_generic_copy::hdbb228f7612ee090
add esp, 0xc
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x7c]
mov edi, dword [esp + 0x80]
add esi, 4
mov dword [esp + 0x20], eax
mov dword [esp + 8], ecx
jmp 0x44d663
add esi, 0xc
sub ebx, 1
jb 0x44d680
cmp dword [esi], 0
je 0x44d660
push dword [esi - 4]
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
jmp 0x44d660
cmp dword [esp + 0x64], 0
je 0x44d698
push dword [esp + 0x60]
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
cmp dword [esp + 0xdc], 0
mov esi, dword [esp + 0x20]
je 0x44d6ba
push dword [esp + 0xd8]
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
lea eax, [esp + 0xd8]
mov dword [esp + 0xd8], esi
mov dword [esp + 0xdc], edi
lea edi, [esp + 0x60]
mov dword [esp + 0x78], 0x54e444
mov dword [esp + 0x7c], 2
mov dword [esp + 0x88], 0
mov dword [esp + 0x60], eax
mov dword [esp + 0x80], edi
mov dword [esp + 0x64], sym.__LT__RF_T_u20_as_u20_core..fmt..Display_GT_::fmt::h09d8bcc9c7492b64
mov dword [esp + 0x84], 1
lea ecx, [esp + 0xb4]
lea edx, [esp + 0x78]
call dbg.format_inner
cmp dword [esp + 8], 0
je 0x44d731
push esi
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0xf4]
mov esi, dword [esp + 0xec]
xor ebx, ebx
mov dword [esp + 8], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x20], eax
lea eax, [ecx*4]
lea edi, [eax + eax*2]
jmp 0x44d773
add ebx, 0xc
cmp edi, ebx
je 0x44d7c0
mov eax, dword [esp + 0x20]
cmp dword [esi + ebx + 8], eax
jne 0x44d770
push eax
push dword [esp + 0xc]
push dword [esi + ebx]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x44d770
cmp dword [esp + 0xb8], 0
je 0x44d18f
push dword [esp + 8]
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
jmp 0x44d18f
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0xb8]
cmp edx, dword [esp + 0xf0]
jne 0x44d171
lea ecx, [esp + 0xec]
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::reserve_for_push::h162a2e79bd6c5b6f
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0xec]
mov edx, dword [esp + 0xf4]
jmp 0x44d175
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x74]
mov edi, dword [esp + 0xf4]
mov eax, dword [esp + 0xec]
sub ecx, edx
mov dword [esp + 0x10], eax
cmp ecx, edi
jae 0x44d834
mov bl, 1
lea ecx, [esp + 0x6c]
push edi
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::reserve::do_reserve_and_handle::hc1f1587e11372e7e
add esp, 4
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x74]
jmp 0x44d840
test edi, edi
je 0x44d8f7
mov eax, dword [esp + 0x6c]
lea ecx, [edx + edx*2]
mov esi, 8
lea eax, [eax + ecx*4]
mov dword [esp + 0x14], eax
jmp 0x44d8a0
push edi
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
mov ecx, dword [esp + 0xc]
mov ebx, eax
test eax, eax
je 0x44ed59
push edi
push ecx
push ebx
call sym._memcpy
add esp, 0xc
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
mov dword [eax + esi - 8], ebx
mov dword [eax + esi - 4], edi
mov dword [eax + esi], edi
mov edi, dword [esp + 8]
inc edx
add esi, 0xc
dec edi
je 0x44d8f7
mov eax, dword [esp + 0x10]
mov dword [esp + 8], edi
mov dword [esp + 0x20], edx
mov edi, dword [eax + esi]
mov ecx, dword [eax + esi - 8]
test edi, edi
je 0x44d8f0
js 0x44ed6a
movzx eax, byte [0x5c6170]
mov eax, dword [0x5c6108]
mov dword [esp + 0xc], ecx
test eax, eax
jne 0x44d860
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x44ed59
mov dword [0x5c6108], eax
jmp 0x44d860
mov ebx, 1
jmp 0x44d877
mov ecx, dword [esp + 0x170]
mov eax, dword [esp + 0x168]
mov dword [esp + 0x74], edx
lea edx, [esp + 0x5c]
mov esi, dword [ebp + 8]
mov dword [esp + 0xb4], edx
shl ecx, 4
mov dword [esp + 0xb8], eax
add ecx, eax
mov dword [esp + 0xbc], ecx
mov ecx, dword [esp + 0x50]
mov dword [esp + 0xc0], esi
lea esi, [ebp + 0x10]
mov dword [esp + 0xc4], ecx
lea ecx, [esp + 0xb3]
mov dword [esp + 0xc8], esi
mov dword [esp + 0xcc], edx
lea edx, [esp + 0xf8]
lea esi, [esp + 0x78]
mov dword [esp + 0xd0], ecx
lea ecx, [esp + 0xcc]
mov dword [esp + 0xd4], edx
lea edx, [esp + 0xd0]
mov dword [esp + 0x80], ecx
lea ecx, [esp + 0xd4]
mov dword [esp + 0x84], edx
lea edx, [esp + 0xc8]
mov dword [esp + 0x88], ecx
lea ecx, [esp + 0xb4]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], edx
nop dword [eax]
mov eax, dword [esp + 0xb8]
cmp eax, dword [esp + 0xbc]
je 0x44dc3f
lea ecx, [eax + 0x10]
mov dword [esp + 0xb8], ecx
mov edx, dword [eax]
mov ecx, esi
push dword [eax + 4]
call sym.core::iter::adapters::filter::filter_try_fold::__u7b__u7b_closure_u7d__u7d_::h770ac3caa7e63101
add esp, 4
mov edi, eax
test eax, eax
je 0x44d9b0
cmp dword [edi + 0x28], 0
mov dword [esp + 0x138], esi
je 0x44dc9c
mov ebx, dword [edi + 0x2c]
movzx eax, byte [0x5c6170]
mov eax, dword [0x5c6108]
test eax, eax
jne 0x44da19
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x44ef34
mov dword [0x5c6108], eax
push 0x20
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x44ef34
mov dword [eax], ebx
mov dword [eax + 4], edi
mov dword [esp + 0x60], eax
mov dword [esp + 0x20], eax
lea ecx, [esp + 0x90]
lea edx, [esp + 0x94]
mov edi, 1
mov dword [esp + 0x64], 4
mov dword [esp + 0x68], 1
mov dword [esp + 0xac], 0
movsd xmm1, qword [esp + 0xc4]
mov eax, dword [esp + 0xd4]
movq xmm0, qword [esp + 0xcc]
movq xmm2, qword [esp + 0xb4]
movsd qword [esp + 0x88], xmm1
movq xmm1, qword [esp + 0xbc]
mov dword [esp + 0x98], eax
lea eax, [esp + 0x98]
movq qword [esp + 0x90], xmm0
movq qword [esp + 0x78], xmm2
movq qword [esp + 0x80], xmm1
jmp 0x44dafc
dec dword [esp + 0xac]
mov dword [eax + edi*8], esi
mov dword [eax + edi*8 + 4], ebx
inc edi
mov dword [esp + 0x20], eax
lea eax, [esp + 0x98]
lea ecx, [esp + 0x90]
lea edx, [esp + 0x94]
mov dword [esp + 0x68], edi
cmp dword [esp + 0x7c], 0
mov dword [esp + 0xe0], ecx
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], eax
lea eax, [esp + 0x78]
lea esi, [esp + 0x8c]
mov dword [esp + 0xd8], eax
mov dword [esp + 0xdc], esi
je 0x44db78
nop word cs:[eax + eax]
nop dword [eax + eax]
mov eax, dword [esp + 0x7c]
cmp eax, dword [esp + 0x80]
je 0x44db70
lea ecx, [eax + 0x10]
mov dword [esp + 0x7c], ecx
mov edx, dword [eax]
lea ecx, [esp + 0xd8]
push dword [eax + 4]
call sym.core::iter::adapters::filter::filter_try_fold::__u7b__u7b_closure_u7d__u7d_::h770ac3caa7e63101
add esp, 4
mov ebx, eax
test eax, eax
je 0x44db40
jmp 0x44dbbe
mov dword [esp + 0x7c], 0
mov eax, dword [esp + 0x84]
mov dword [esp + 0x3c], edi
test eax, eax
je 0x44dbed
mov esi, dword [esp + 0x88]
nop
cmp eax, esi
je 0x44dbed
lea edi, [eax + 8]
mov dword [esp + 0x84], edi
mov edx, dword [eax]
lea ecx, [esp + 0xd8]
push dword [eax + 4]
call sym.core::iter::adapters::filter::filter_try_fold::__u7b__u7b_closure_u7d__u7d_::h770ac3caa7e63101
add esp, 4
mov ebx, eax
test eax, eax
mov eax, edi
mov edi, dword [esp + 0x3c]
je 0x44db90
cmp dword [ebx + 0x28], 0
mov eax, dword [esp + 0x20]
je 0x44eef5
mov esi, dword [ebx + 0x2c]
cmp edi, dword [esp + 0x64]
jne 0x44dad0
lea ecx, [esp + 0x60]
mov edx, edi
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::reserve::do_reserve_and_handle::h384dbbf760aae4d5
mov eax, dword [esp + 0x60]
jmp 0x44dad0
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x64]
test edi, edi
mov dword [esp + 0x38], eax
mov dword [esp + 0xa8], ecx
je 0x44dcc8
cmp edi, 0x15
jae 0x44dd23
cmp edi, 1
jbe 0x44dc26
mov ecx, dword [esp + 0x38]
mov edx, edi
push 1
call sym.core::slice::sort::insertion_sort_shift_left::h1b67306a49322c86
add esp, 4
movzx eax, byte [0x5c6170]
mov eax, dword [0x5c6108]
test eax, eax
jne 0x44e422
jmp 0x44e410
mov dword [esp + 0xb8], 0
mov eax, dword [esp + 0xc0]
test eax, eax
je 0x44dcb0
mov ebx, dword [esp + 0xc4]
nop dword [eax]
cmp eax, ebx
je 0x44dcb0
lea esi, [eax + 8]
mov dword [esp + 0xc0], esi
mov edx, dword [eax]
lea ecx, [esp + 0x78]
push dword [eax + 4]
call sym.core::iter::adapters::filter::filter_try_fold::__u7b__u7b_closure_u7d__u7d_::h770ac3caa7e63101
add esp, 4
mov edi, eax
test eax, eax
mov eax, esi
je 0x44dc60
lea esi, [esp + 0x78]
cmp dword [edi + 0x28], 0
mov dword [esp + 0x138], esi
jne 0x44d9f4
mov eax, 0x54e064
mov edx, 0x2b
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_std_src_threadmod.rs
jmp 0x44eeac
mov dword [esp + 0xd8], 0
mov dword [esp + 0xe0], 0
jmp 0x44dd13
cmp dword [esp + 0xa8], 0
mov dword [esp + 0xd8], 0
mov dword [esp + 0xe0], 0
je 0x44dd13
push dword [esp + 0x38]
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
mov edi, dword [esp + 0xd8]
mov ebx, dword [esp + 0xe0]
mov edx, dword [esp + 0xdc]
jmp 0x44e966
mov edx, dword [esp + 0xdc]
xor ebx, ebx
xor edi, edi
jmp 0x44e966
movzx eax, byte [0x5c6170]
mov eax, dword [0x5c6108]
test eax, eax
jne 0x44dd45
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x44ef63
mov dword [0x5c6108], eax
lea ecx, [edi*4]
and ecx, 0x7ffffff8
push ecx
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
mov dword [esp + 8], eax
je 0x44ef63
movzx eax, byte [0x5c6170]
mov eax, dword [0x5c6108]
test eax, eax
jne 0x44dd89
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x44ef7c
mov dword [0x5c6108], eax
push pe_nt_image_headers32
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
mov dword [esp + 0x10], eax
je 0x44ef7c
mov eax, dword [esp + 0x38]
xor ebx, ebx
mov dword [esp + 0x58], 0x10
lea ecx, [eax - 0x10]
lea esi, [eax + 4]
lea edx, [eax - 4]
add eax, 0xfffffff8
mov dword [esp + 0x50], eax
xor eax, eax
mov dword [esp + 0x134], ecx
mov dword [esp + 0x140], esi
mov dword [esp + 0x13c], edx
jmp 0x44ddf0
mov edi, dword [esp + 0x3c]
mov eax, dword [esp + 0x48]
cmp eax, edi
jae 0x44e3de
mov ecx, edi
mov edx, eax
sub ecx, eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x14], edx
cmp ecx, 2
lea eax, [eax + edx*8]
jae 0x44def0
mov dword [esp + 0xc], ecx
mov ecx, edi
mov edi, ecx
sub edi, edx
jb 0x44edf0
cmp ecx, dword [esp + 0x3c]
ja 0x44edf0
jae 0x44df20
cmp dword [esp + 0xc], 0xa
jae 0x44df20
mov esi, dword [esp + 0x3c]
lea edi, [edx + 0xa]
mov ecx, eax
cmp edi, esi
cmovae edi, esi
mov dword [esp + 0x48], edi
sub edi, edx
jb 0x44ee71
mov eax, dword [esp + 0xc]
cmp eax, 1
adc eax, 0
mov edx, edi
push eax
call sym.core::slice::sort::insertion_sort_shift_left::h1b67306a49322c86
add esp, 4
mov edx, dword [esp + 0x14]
cmp ebx, dword [esp + 0x58]
jne 0x44df2e
movzx eax, byte [0x5c6170]
mov eax, dword [0x5c6108]
test eax, eax
jne 0x44de94
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x44ee35
mov dword [0x5c6108], eax
mov ecx, ebx
shl ecx, 4
push ecx
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x44ee35
mov esi, ebx
mov ebx, eax
lea eax, [esi + esi]
mov dword [esp + 0x58], eax
lea eax, [esi*8]
push eax
push dword [esp + 0x14]
push ebx
call sym._memcpy
add esp, 0xc
push dword [esp + 0x10]
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
mov edx, dword [esp + 0x14]
jmp 0x44df34
mov edi, dword [eax]
mov esi, dword [eax + 8]
mov dword [esp + 0x18], ebx
cmp esi, edi
jae 0x44e220
cmp ecx, 2
jne 0x44e239
mov ebx, dword [esp + 0x18]
lea ecx, [edx + 2]
mov dword [esp + 0xc], 2
jmp 0x44e2d0
mov dword [esp + 0x48], ecx
cmp ebx, dword [esp + 0x58]
je 0x44de72
mov esi, ebx
mov ebx, dword [esp + 0x10]
mov dword [ebx + esi*8], edi
mov dword [ebx + esi*8 + 4], edx
inc esi
mov dword [esp + 0x10], ebx
cmp esi, 2
mov ebx, esi
jb 0x44dde0
mov edi, dword [esp + 0x3c]
mov esi, dword [esp + 0x10]
jmp 0x44dfb7
mov ecx, dword [esp + 8]
mov eax, esi
mov esi, dword [esp + 0x18]
mov edx, dword [esp + 0x20]
lea ebx, [esi - 1]
sub edx, ecx
push edx
push ecx
push eax
call sym._memcpy
add esp, 0xc
mov edx, dword [esp + 0x40]
mov eax, esi
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
add edx, dword [esp + 0x14]
mov dword [esi + ecx*8 + 8], edx
mov edx, dword [esp + 0x44]
mov dword [esi + ecx*8 + 0xc], edx
mov edx, dword [esp + 0x54]
not ecx
add ecx, eax
shl ecx, 3
lea eax, [edx + 8]
push ecx
push eax
push edx
call sub.msvcrt.dll_memmove
add esp, 0xc
mov edi, dword [esp + 0x3c]
cmp ebx, 1
jbe 0x44e210
mov eax, dword [esi + ebx*8 - 8]
mov ecx, dword [esi + ebx*8 - 4]
add ecx, eax
cmp ecx, edi
je 0x44e020
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + ebx*8 - 0x10]
cmp edx, eax
jbe 0x44e020
cmp ebx, 2
jbe 0x44e3ca
lea ecx, [ebx - 3]
lea esi, [edx + eax]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x10]
mov ecx, dword [ecx + ebx*8 - 0x18]
cmp ecx, esi
jbe 0x44e1f7
cmp ebx, 3
jbe 0x44e3d4
mov esi, dword [esp + 0x10]
add edx, ecx
cmp dword [esi + ebx*8 - 0x20], edx
mov esi, dword [esp + 0x1c]
jbe 0x44e030
jmp 0x44dde4
cmp ebx, 3
jb 0x44e034
mov ecx, dword [esp + 0x10]
lea esi, [ebx - 3]
mov ecx, dword [ecx + ebx*8 - 0x18]
cmp ecx, eax
jb 0x44e037
lea esi, [ebx - 2]
cmp ebx, esi
jbe 0x44ece7
lea eax, [esi + 1]
mov dword [esp + 0x18], ebx
cmp ebx, eax
jbe 0x44ecd8
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + esi*8 + 8]
mov edx, dword [eax + esi*8 + 0xc]
mov ecx, dword [eax + esi*8 + 4]
add edx, ebx
mov dword [esp + 0x40], ebx
mov ebx, edx
sub ebx, ecx
jb 0x44ed25
cmp edx, edi
mov eax, edx
mov dword [esp + 0x4c], edx
ja 0x44ed3b
mov eax, dword [esp + 0x10]
mov dword [esp + 0x1c], esi
mov dword [esp + 0x44], ecx
lea edi, [eax + esi*8]
mov edx, dword [eax + esi*8]
mov esi, dword [esp + 0x38]
mov dword [esp + 0x54], edi
lea ecx, [esi + ecx*8]
mov esi, ebx
mov dword [esp + 0x14], edx
sub esi, edx
lea edi, [ecx + edx*8]
cmp esi, edx
jae 0x44e150
mov dword [esp + 0xc], ecx
lea eax, [esi*8]
push eax
push edi
mov ebx, dword [esp + 0x10]
push ebx
call sym._memcpy
add esp, 0xc
cmp dword [esp + 0x14], 0
lea eax, [ebx + esi*8]
mov dword [esp + 0x20], eax
jle 0x44e139
test esi, esi
mov esi, dword [esp + 0x18]
jle 0x44e1db
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x4c]
lea eax, [eax + ecx*8]
mov ecx, dword [esp + 0x20]
nop
mov edx, dword [ecx - 8]
mov ebx, dword [edi - 8]
mov esi, 0
mov dword [esp + 0x20], eax
mov eax, 0
cmp edx, ebx
sbb esi, esi
cmp edx, ebx
adc eax, 0xffffffff
cmp edx, ebx
lea edi, [edi + esi*8]
lea ecx, [ecx + eax*8]
mov eax, ecx
cmovb eax, edi
cmp edi, dword [esp + 0xc]
movq xmm0, qword [eax]
mov eax, dword [esp + 0x20]
movq qword [eax], xmm0
jbe 0x44e135
add eax, 0xfffffff8
cmp ecx, dword [esp + 8]
ja 0x44e0f0
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 8]
mov eax, edi
jmp 0x44df5b
lea eax, [edx*8]
push eax
mov esi, ecx
push ecx
push dword [esp + 0x10]
call sym._memcpy
mov eax, dword [esp + 0x20]
add esp, 0xc
mov ecx, dword [esp + 8]
test eax, eax
lea ecx, [ecx + eax*8]
mov dword [esp + 0x20], ecx
jle 0x44e1e6
cmp ebx, eax
jle 0x44df55
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x4c]
lea eax, [eax + ecx*8]
mov ecx, dword [esp + 8]
mov dword [esp + 0xc], eax
nop word cs:[eax + eax]
nop
mov eax, dword [edi]
xor ebx, ebx
xor edx, edx
cmp eax, dword [ecx]
mov eax, ecx
cmovb eax, edi
setae bl
movq xmm0, qword [eax]
lea ecx, [ecx + ebx*8]
setb bl
movq qword [esi], xmm0
add esi, 8
cmp ecx, dword [esp + 0x20]
jae 0x44df59
mov dl, bl
lea edi, [edi + edx*8]
cmp edi, dword [esp + 0xc]
jb 0x44e1a0
jmp 0x44df59
mov ecx, dword [esp + 8]
mov eax, edi
jmp 0x44df5f
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 8]
mov eax, esi
mov esi, edx
jmp 0x44df5f
mov esi, dword [esp + 0x1c]
cmp ecx, eax
jae 0x44e034
jmp 0x44e037
mov ebx, 1
jmp 0x44dde4
cmp ecx, 2
jne 0x44e275
mov ebx, dword [esp + 0x18]
lea ecx, [edx + 2]
mov dword [esp + 0xc], 2
jmp 0x44de10
mov dword [esp + 0x20], edi
mov edi, eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0xc], ecx
mov ebx, esi
lea ecx, [eax + edx]
mov eax, edi
mov edi, 2
nop word cs:[eax + eax]
mov edx, ebx
mov ebx, dword [eax + edi*8]
cmp ebx, edx
jae 0x44e2b7
lea edx, [ecx + edi + 1]
inc edi
cmp edx, 1
jne 0x44e260
jmp 0x44e2b3
mov dword [esp + 0x20], edi
mov edi, eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0xc], ecx
mov ebx, esi
lea ecx, [eax + edx]
mov eax, edi
mov edi, 2
nop word cs:[eax + eax]
nop dword [eax]
mov edx, ebx
mov ebx, dword [eax + edi*8]
cmp ebx, edx
jb 0x44e2b7
lea edx, [ecx + edi + 1]
inc edi
cmp edx, 1
jne 0x44e2a0
mov edi, dword [esp + 0xc]
mov edx, dword [esp + 0x14]
cmp esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xc], edi
lea ecx, [edi + edx]
jae 0x44de10
cmp edx, ecx
mov edx, dword [esp + 0x3c]
ja 0x44eed2
cmp ecx, edx
ja 0x44eebc
mov edi, dword [esp + 0xc]
cmp edi, 2
jae 0x44e2f6
mov edx, dword [esp + 0x14]
jmp 0x44de10
mov edx, dword [esp + 0x14]
mov ebx, edi
mov dword [esp + 0x48], ecx
xor esi, esi
mov ecx, edi
shr ebx, 1
cmp edi, 4
jb 0x44e36e
mov esi, ebx
mov dword [esp + 0x20], ebx
mov ebx, eax
mov eax, dword [esp + 0x134]
add ecx, edx
and esi, 0xfffffffe
lea edi, [eax + ecx*8]
mov eax, ebx
mov ebx, esi
mov ecx, eax
nop dword [eax + eax]
movdqu xmm0, xmmword [ecx]
movdqu xmm1, xmmword [edi]
pshufd xmm1, xmm1, 0x4e
pshufd xmm0, xmm0, 0x4e
movdqu xmmword [ecx], xmm1
movdqu xmmword [edi], xmm0
add ecx, 0x10
add edi, 0xfffffff0
add ebx, 0xfffffffe
jne 0x44e330
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0xc]
cmp ebx, esi
jne 0x44e36e
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x48]
jmp 0x44de10
lea edi, [edx + ecx]
sub ebx, esi
shl esi, 3
mov dword [esp + 0x1c], eax
shl edi, 3
sub edi, esi
lea esi, [esi + edx*8]
add esi, dword [esp + 0x140]
add edi, dword [esp + 0x13c]
mov dword [esp + 0x20], ebx
mov ecx, dword [esi - 4]
mov ebx, dword [esi]
mov eax, dword [edi - 4]
mov edx, dword [edi]
mov dword [esi - 4], eax
mov dword [esi], edx
mov dword [edi - 4], ecx
mov dword [edi], ebx
mov ebx, dword [esp + 0x20]
add esi, 8
add edi, 0xfffffff8
dec ebx
jne 0x44e390
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
jmp 0x44de10
mov ebx, 2
jmp 0x44dde4
mov ebx, 3
jmp 0x44dde4
push dword [esp + 0x10]
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
push dword [esp + 8]
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
movzx eax, byte [0x5c6170]
mov eax, dword [0x5c6108]
test eax, eax
jne 0x44e422
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x44ef52
mov dword [0x5c6108], eax
push 0x60
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x44ef52
mov dword [eax], 0
mov ebx, dword [esp + 0x38]
mov edi, eax
mov word [eax + 0x5e], 0
mov eax, dword [esp + 0x3c]
mov cl, 1
xor edx, edx
xor esi, esi
lea eax, [ebx + eax*8]
mov dword [esp + 0x40], ebx
mov dword [esp + 0x14], eax
mov eax, edi
jmp 0x44e47e
lea ecx, [esi + 1]
mov ebx, dword [esp + 8]
mov word [eax + 0x5e], cx
mov ecx, dword [esp + 0x20]
mov dword [eax + esi*4 + 4], ecx
mov dword [eax + esi*4 + 0x30], ebx
mov esi, dword [esp + 0xc]
inc esi
xor ecx, ecx
test cl, 1
mov dword [esp + 0xc], esi
je 0x44e4b0
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x40]
cmp ebx, esi
je 0x44e70d
mov ecx, dword [ebx]
mov esi, dword [ebx + 4]
mov dword [esp + 0x20], ecx
lea ecx, [ebx + 8]
mov ebx, dword [esp + 0x14]
jmp 0x44e4ce
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x44]
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x20], esi
test ecx, ecx
mov esi, ecx
mov ecx, dword [esp + 0x40]
je 0x44e70d
cmp ecx, ebx
mov dword [esp + 8], esi
je 0x44e530
mov esi, dword [ecx]
mov dword [esp + 0x1c], eax
lea eax, [ecx + 8]
mov ebx, ecx
mov ecx, dword [ecx + 4]
cmp dword [esp + 0x20], esi
mov dword [esp + 0x18], ecx
mov dword [esp + 0x44], esi
jne 0x44e550
mov ecx, dword [esp + 0x18]
nop word cs:[eax + eax]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x14]
cmp eax, ecx
je 0x44e554
mov esi, dword [eax]
mov ecx, dword [eax + 4]
lea ebx, [eax + 8]
mov eax, ebx
cmp dword [esp + 0x20], esi
je 0x44e500
mov dword [esp + 0x18], ecx
mov ecx, ebx
mov dword [esp + 0x44], esi
jmp 0x44e564
mov dword [esp + 0x18], 0
mov ecx, ebx
movzx esi, word [eax + 0x5e]
mov dword [esp + 0x40], ecx
cmp esi, 0xb
jae 0x44e579
jmp 0x44e460
mov ecx, eax
jmp 0x44e564
mov eax, dword [esp + 0x20]
mov dword [esp + 0x18], 0
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x1c]
movzx esi, word [eax + 0x5e]
mov dword [esp + 0x40], ecx
cmp esi, 0xb
jb 0x44e460
xor esi, esi
nop dword [eax + eax]
mov eax, dword [eax]
test eax, eax
je 0x44e590
inc esi
cmp word [eax + 0x5e], 0xb
jae 0x44e580
jmp 0x44e5e9
movzx eax, byte [0x5c6170]
mov eax, dword [0x5c6108]
mov ebx, edx
test eax, eax
jne 0x44e5b4
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x44ee78
mov dword [0x5c6108], eax
push 0x90
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x44ee78
mov edx, ebx
mov dword [eax], 0
mov word [eax + 0x5e], 0
mov dword [eax + 0x60], edi
mov dword [edi], eax
mov word [edi + 0x5c], 0
mov edi, eax
inc edx
mov esi, edx
mov ebx, edx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x10], edx
movzx eax, byte [0x5c6170]
mov eax, dword [0x5c6108]
test eax, eax
jne 0x44e613
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x44ee10
mov dword [0x5c6108], eax
push 0x60
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x44ee10
mov dword [esp + 0x54], esi
mov ebx, eax
dec esi
mov dword [eax], 0
mov word [eax + 0x5e], 0
je 0x44e693
nop word [eax + eax]
movzx eax, byte [0x5c6170]
mov eax, dword [0x5c6108]
test eax, eax
jne 0x44e662
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x44ecc4
mov dword [0x5c6108], eax
push 0x90
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x44ecc4
mov dword [eax], 0
mov word [eax + 0x5e], 0
mov dword [eax + 0x60], ebx
mov dword [ebx], eax
mov word [ebx + 0x5c], 0
dec esi
mov ebx, eax
jne 0x44e640
mov esi, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
movzx eax, word [esi + 0x5e]
cmp eax, 0xb
jae 0x44ee55
lea ecx, [eax + 1]
mov dword [esp + 0x3c], ecx
mov word [esi + 0x5e], cx
mov ecx, dword [esp + 0x20]
mov dword [esi + eax*4 + 4], ecx
mov ecx, dword [esp + 8]
mov dword [esi + eax*4 + 0x30], ecx
mov dword [esi + eax*4 + 0x64], ebx
mov eax, dword [esp + 0x3c]
mov dword [ebx], esi
mov word [ebx + 0x5c], ax
mov ebx, dword [esp + 0x54]
test ebx, ebx
je 0x44e700
mov esi, dword [esp + 0xc]
mov eax, dword [esp + 0x1c]
nop word cs:[eax + eax]
nop dword [eax + eax]
movzx ecx, word [eax + 0x5e]
dec ebx
mov eax, dword [eax + ecx*4 + 0x60]
jne 0x44e6f0
jmp 0x44e47b
mov esi, dword [esp + 0xc]
mov eax, dword [esp + 0x1c]
jmp 0x44e47b
cmp dword [esp + 0xa8], 0
je 0x44e72c
push dword [esp + 0x38]
push 0
push dword [0x5c6108]
mov esi, edx
call sub.KERNEL32.dll_HeapFree
mov edx, esi
test edx, edx
je 0x44e94d
mov ecx, edi
mov eax, edx
mov dword [esp + 0x10], edx
jmp 0x44e7e1
mov esi, dword [esp + 0x54]
mov ecx, dword [esp + 0x3c]
lea edx, [ebx + 0x60]
mov dword [esp + 0x1c], edx
lea eax, [ebx + esi*4 + 0x60]
add ecx, 4
push ecx
push edx
push eax
call sub.msvcrt.dll_memmove
add esp, 0xc
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x14]
shl esi, 2
lea eax, [eax + ecx*4 + 0x60]
push esi
push eax
push dword [esp + 0x24]
call sym._memcpy
mov edx, dword [esp + 0x1c]
add esp, 0xc
mov eax, dword [ebx + 0x60]
mov dword [eax], ebx
mov word [eax + 0x5c], 0
mov eax, dword [ebx + 0x64]
mov dword [eax], ebx
mov word [eax + 0x5c], 1
mov eax, dword [ebx + 0x68]
mov dword [eax], ebx
mov word [eax + 0x5c], 2
mov eax, dword [ebx + 0x6c]
mov dword [eax], ebx
mov word [eax + 0x5c], 3
mov eax, dword [ebx + 0x70]
mov dword [eax], ebx
mov word [eax + 0x5c], 4
mov eax, dword [ebx + 0x74]
mov dword [eax], ebx
mov word [eax + 0x5c], 5
mov eax, dword [esp + 0x44]
dec eax
mov ecx, ebx
je 0x44e94d
movzx esi, word [ecx + 0x5e]
test esi, esi
je 0x44ee24
mov ebx, dword [ecx + esi*4 + 0x60]
mov dword [esp + 0x20], ebx
mov ebx, dword [esp + 0x20]
movzx ebx, word [ebx + 0x5e]
mov dword [esp + 0x14], ebx
cmp ebx, 5
mov ebx, dword [esp + 0x20]
jae 0x44e7d8
mov dword [esp + 0x4c], ecx
mov ecx, dword [ecx + esi*4 + 0x5c]
mov dword [esp + 0x44], eax
mov eax, 5
mov dword [esp + 0x38], esi
sub eax, dword [esp + 0x14]
movzx esi, word [ecx + 0x5e]
mov dword [esp + 8], ecx
mov dword [esp + 0x1c], esi
sub esi, eax
jb 0x44ee8c
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 8]
mov dword [esp + 0x54], eax
lea eax, [ebx + eax*4 + 4]
mov word [ecx + 0x5e], si
lea edx, [edx*4]
lea ecx, [ebx + 4]
mov word [ebx + 0x5e], 5
mov dword [esp + 0x3c], edx
push edx
mov dword [esp + 0x1c], ecx
push ecx
push eax
call sub.msvcrt.dll_memmove
add esp, 0xc
mov eax, dword [esp + 0x54]
lea ecx, [ebx + 0x30]
lea eax, [ebx + eax*4 + 0x30]
push dword [esp + 0x3c]
mov dword [esp + 0x44], ecx
push ecx
push eax
call sub.msvcrt.dll_memmove
add esp, 0xc
mov eax, 4
mov ecx, dword [esp + 0x1c]
lea edx, [esi + 1]
sub eax, dword [esp + 0x14]
sub ecx, edx
cmp ecx, eax
jne 0x44ee9d
mov eax, dword [esp + 8]
lea eax, [eax + edx*4 + 4]
mov dword [esp + 0x14], eax
lea eax, [ecx*4]
mov dword [esp + 0x50], eax
push eax
push dword [esp + 0x18]
push dword [esp + 0x20]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x20], edx
call sym._memcpy
add esp, 0xc
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x14]
lea eax, [eax + ecx*4 + 0x30]
push dword [esp + 0x50]
push eax
push dword [esp + 0x48]
call sym._memcpy
add esp, 0xc
mov eax, dword [esp + 8]
cmp dword [esp + 0x44], 1
mov ecx, dword [eax + esi*4 + 4]
mov eax, dword [eax + esi*4 + 0x30]
mov dword [esp + 0x50], ecx
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x38]
mov edx, dword [ecx + eax*4]
mov esi, dword [ecx + eax*4 + 0x2c]
mov dword [esp + 0x58], edx
mov edx, dword [esp + 0x50]
mov dword [ecx + eax*4], edx
mov edx, dword [esp + 0x48]
mov dword [ecx + eax*4 + 0x2c], edx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x58]
mov dword [ecx + eax*4], edx
mov edx, dword [esp + 0x40]
mov dword [edx + eax*4], esi
mov edx, dword [esp + 0x10]
jne 0x44e750
mov ebx, dword [esp + 0xc]
mov dword [esp + 0xd8], edi
mov dword [esp + 0xdc], edx
mov dword [esp + 0xe0], ebx
xor ecx, ecx
test edi, edi
setne cl
cmove ebx, edi
xor esi, esi
jmp 0x44e9a5
mov eax, dword [esp + 0x6c]
movdqa xmm0, xmmword [esp + 0x20]
lea ecx, [edx + edx*2]
inc edx
mov dword [eax + ecx*4], edi
movq qword [eax + ecx*4 + 4], xmm0
mov dword [esp + 0x74], edx
xor edi, edi
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
test ebx, ebx
je 0x44eb6d
test ecx, ecx
je 0x44e9d0
test esi, esi
jne 0x44e9d0
mov ecx, 1
mov esi, edi
test edx, edx
je 0x44e9c6
mov esi, dword [esi + 0x60]
dec edx
jne 0x44e9c0
xor edi, edi
xor edx, edx
jmp 0x44e9d8
test ecx, ecx
je 0x44ed9a
movzx eax, word [esi + 0x5e]
cmp edx, eax
mov eax, esi
mov esi, edx
jb 0x44ea07
nop word cs:[eax + eax]
nop
mov edx, dword [eax]
test edx, edx
je 0x44ec8c
movzx esi, word [eax + 0x5c]
inc edi
mov eax, edx
cmp si, word [edx + 0x5e]
jae 0x44e9f0
test edi, edi
mov edx, esi
mov dword [esp + 0x14], esi
mov dword [esp + 0x1c], ecx
je 0x44ea40
mov esi, dword [eax + esi*4 + 0x64]
dec edi
je 0x44ea26
nop dword [eax]
mov esi, dword [esi + 0x60]
dec edi
jne 0x44ea20
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x10], 0
jmp 0x44ea4b
lea ecx, [esi + 1]
mov dword [esp + 0x10], ecx
mov ecx, esi
mov esi, eax
dec ebx
mov edx, dword [esp + 0x100]
mov edi, dword [esp + 0xf8]
mov dword [esp + 0xc], ebx
mov ebx, dword [eax + ecx*4 + 0x30]
shl edx, 3
mov ecx, dword [ebx + 0x38]
mov ebx, dword [ebx + 0x3c]
mov dword [esp + 0x20], ecx
mov dword [esp + 8], ebx
nop word cs:[eax + eax]
nop dword [eax]
test edx, edx
je 0x44eab0
mov ebx, dword [edi]
mov ecx, dword [edi + 4]
add edx, 0xfffffff8
add edi, 8
xor ebx, dword [esp + 0x20]
xor ecx, dword [esp + 8]
or ecx, ebx
jne 0x44ea80
mov ebx, dword [esp + 0xc]
jmp 0x44e99b
lea ecx, [esp + 0xb4]
mov dword [esp + 0x94], 0
mov dword [esp + 0x88], 0x20
mov byte [esp + 0x98], 3
mov dword [esp + 0x78], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0xb4], 1
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0x8c], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x90], 0x54df5c
mov ecx, dword [eax + ecx*4 + 0x30]
lea edx, [esp + 0x78]
call sym.__LT_clap..build..arg..Arg_u20_as_u20_core..fmt..Display_GT_::fmt::hed1612eb02c129e1
mov ebx, dword [esp + 0xc]
test al, al
jne 0x44ed74
mov edx, dword [esp + 0x74]
movsd xmm0, qword [esp + 0xb8]
mov edi, dword [esp + 0xb4]
cmp edx, dword [esp + 0x70]
movaps xmmword [esp + 0x20], xmm0
jne 0x44e980
lea ecx, [esp + 0x6c]
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::reserve_for_push::h162a2e79bd6c5b6f
mov edx, dword [esp + 0x74]
jmp 0x44e980
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x144]
movq xmm0, qword [esp + 0x6c]
xor ebx, ebx
mov dword [ecx + 8], eax
movq qword [ecx], xmm0
lea ecx, [esp + 0xd8]
call sym.__ZN99__LT_alloc..collections..btree..map..BTreeMap_LT_K_C_V_C_A_GT__u20_as_u20_core..ops..drop..Drop_GT_4drop17h7028a562e6b23
mov esi, dword [esp + 0xec]
mov edi, dword [esp + 0xf4]
add esi, 4
jmp 0x44ebb3
add esi, 0xc
sub edi, 1
jb 0x44ebcf
cmp dword [esi], 0
je 0x44ebb0
push dword [esi - 4]
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
jmp 0x44ebb0
cmp dword [esp + 0xf0], 0
je 0x44ebed
push dword [esp + 0xec]
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
cmp dword [esp + 0xfc], 0
je 0x44ec0b
push dword [esp + 0xf8]
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x15c]
test eax, eax
je 0x44ec3a
mov ecx, dword [esp + 0x158]
lea eax, [eax*4 + 0x13]
and eax, 0xfffffff0
neg eax
push dword [ecx + eax - 4]
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
cmp dword [esp + 0x16c], 0
je 0x44ec58
push dword [esp + 0x168]
push 0
push dword [0x5c6108]
call sub.KERNEL32.dll_HeapFree
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov edx, dword [esp + 0x20]
push 0x55543c
call dbg.panic_bounds_check
add esp, 4
jmp 0x44ef93
mov edx, dword [esp + 0x40]
push 0x55543c
call dbg.panic_bounds_check
add esp, 4
jmp 0x44ef93
mov edx, 0x2b
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_std_src_threadmod.rs
push 0x54dcdc
call dbg.panic
add esp, 4
jmp 0x44ef93
mov edx, 0x63
mov ecx, 0x54e3b3
push 0x54e054
call dbg.expect_failed
add esp, 4
jmp 0x44ef93
mov ecx, 4
mov edx, 0x90
call dbg.handle_alloc_error
jmp 0x44ef93
mov edx, 0x5a4b50
mov dword [esp + 0x78], 0x5a4ad8
jmp 0x44ecf4
mov dword [esp + 0x78], str.Index_out_of_bounds
mov edx, 0x5a4b40
mov ecx, dword [esp + 0x138]
mov dword [ecx + 4], 1
mov dword [ecx + 0x10], 0
mov dword [ecx + 8], str.called__Option::unwrap____on_a__None__value_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_std_src_threadmod.rs
mov dword [ecx + 0xc], 0
mov edi, dword [esp + 0x10]
call dbg.panic_fmt
jmp 0x44ef93
push 0x5a4b60
mov edi, dword [esp + 0x14]
call dbg.slice_index_order_fail
add esp, 4
jmp 0x44ef93
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x4c]
push 0x5a4b60
mov edi, dword [esp + 0x14]
call dbg.slice_end_index_len_fail
add esp, 4
jmp 0x44ef93
mov ecx, 1
mov edx, edi
call dbg.handle_alloc_error
jmp 0x44ef93
call sym.alloc::raw_vec::capacity_overflow::hd0578b62e5d0dfac
jmp 0x44ef93
mov edx, 0x37
mov ecx, str.a_Display_implementation_returned_an_error_unexpectedly
push 0x559ff4
push 0x54df74
lea eax, [esp + 0x68]
push eax
call dbg.unwrap_failed
add esp, 0xc
jmp 0x44ef93
mov edx, 0x2b
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_std_src_threadmod.rs
push 0x54dccc
call dbg.panic
add esp, 4
jmp 0x44ef93
lea eax, [esp + 0x60]
mov edx, 0x37
mov ecx, str.a_Display_implementation_returned_an_error_unexpectedly
push 0x559ff4
push 0x54df74
push eax
call dbg.unwrap_failed
add esp, 0xc
jmp 0x44ef93
mov ecx, 4
mov edx, 0x30
call dbg.handle_alloc_error
jmp 0x44ef93
mov edx, 0x2c
mov ecx, str.assertion_failed:_end___start__end___len
push 0x5a4bcc
mov edi, dword [esp + 0x14]
call dbg.panic
add esp, 4
jmp 0x44ef93
mov ecx, 4
mov edx, 0x60
call dbg.handle_alloc_error
jmp 0x44ef93
mov eax, 0x54d54c
mov edx, 0x19
mov ecx, str.assertion_failed:_len___0
jmp 0x44eeac
mov edx, 0x2b
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_std_src_threadmod.rs
push 0x5a4b90
mov edi, dword [esp + 0x14]
call dbg.panic
add esp, 4
jmp 0x44ef93
mov edx, 0x20
mov ecx, str.assertion_failed:_idx___CAPACITY_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_alloc_srccollections_btree_node.rsassertion_failed:_edge.height__self.height___1
push 0x5589f4
call dbg.panic
add esp, 4
jmp 0x44ef93
mov eax, 0x5a4bdc
jmp 0x44eedb
mov ecx, 4
mov edx, 0x90
call dbg.handle_alloc_error
jmp 0x44ef93
mov eax, 0x54d520
mov edx, 0x27
mov ecx, str.assertion_failed:_old_left_len___count
jmp 0x44eeac
mov eax, 0x558a2c
mov edx, 0x28
mov ecx, str.assertion_failed:_src.len____dst.len__X
mov bl, 1
push eax
call dbg.panic
add esp, 4
jmp 0x44ef93
push 0x5a4b30
mov edi, dword [esp + 0x14]
call dbg.slice_end_index_len_fail
add esp, 4
jmp 0x44ef93
mov eax, 0x5a4b30
mov dword [esp + 0x48], ecx
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x14]
push eax
mov edi, dword [esp + 0x14]
call dbg.slice_index_order_fail
add esp, 4
jmp 0x44ef93
mov edx, 0x2b
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_std_src_threadmod.rs
push 0x54e064
call dbg.panic
add esp, 4
jmp 0x44ef93
lea eax, [esp + 0x60]
mov edx, 0x46
mov ecx, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destruction_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_std_src_threadlocal.rs
push 0x5a5754
push 0x54ddb0
push eax
call dbg.unwrap_failed
add esp, 0xc
jmp 0x44ef93
mov bl, 1
mov ecx, 4
mov edx, 0x20
call dbg.handle_alloc_error
jmp 0x44ef93
mov dword [esp + 0xc], ebx
call sym.alloc::raw_vec::capacity_overflow::hd0578b62e5d0dfac
jmp 0x44ef93
mov ecx, 4
mov edx, 0x60
call dbg.handle_alloc_error
jmp 0x44ef93
mov edx, 0x2b
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_std_src_threadmod.rs
push 0x5a4b70
call dbg.panic
add esp, 4
jmp 0x44ef93
mov edx, 0x2b
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_std_src_threadmod.rs
push 0x5a4b80
call dbg.panic
add esp, 4
ud2