Function at 0x406e00
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x550
movzx eax, byte [0x5c6170]
mov eax, dword [0x5c6108]
mov esi, ecx
test eax, eax
jne 0x406e33
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x408aab
mov dword [0x5c6108], eax
push 6
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x408aab
mov dword [eax], 0x6972656d
mov ebx, eax
mov word [eax + 4], 0x6f6e
mov ecx, 0x1b3
mov dword [esp + 0x2f0], esi
movzx eax, byte [eax]
mov dword [esp + 4], ebx
xor eax, 0x811c9dc5
mov dword [esp + 0x318], eax
mul ecx
mov dword [esp + 0x31c], edx
movzx edx, byte [ebx + 1]
xor edx, eax
mov eax, edx
mov dword [esp + 0x310], edx
mul ecx
mov dword [esp + 0x314], edx
movzx edx, byte [ebx + 2]
xor edx, eax
mov eax, edx
mov dword [esp + 0x308], edx
mul ecx
mov dword [esp + 0x30c], edx
movzx edx, byte [ebx + 3]
xor edx, eax
mov eax, edx
mov dword [esp + 0x304], edx
mul ecx
mov esi, edx
movzx edx, byte [ebx + 4]
xor edx, eax
mov eax, edx
mov dword [esp + 0x2fc], edx
mul ecx
mov edi, edx
movzx edx, byte [ebx + 5]
mov dword [esp + 0x1a0], 8
mov dword [esp + 0x1a4], 0
mov dword [esp + 0x1a8], 0
mov dword [esp + 0x1ac], 4
mov dword [esp + 0x1b0], 0
mov dword [esp + 0x320], 8
mov dword [esp + 0x324], 0
mov dword [esp + 0x1b4], 0
mov dword [esp + 0x328], 0
xor edx, eax
mov eax, edx
mov dword [esp + 0x2f8], edx
mul ecx
xor eax, 0xff
mov ebx, edx
mov dword [esp + 0x300], eax
mul ecx
mov dword [esp + 0xc], eax
mov dword [esp + 8], edx
call dbg.__getit
test eax, eax
mov dword [esp + 0x2f4], esi
je 0x408aef
imul ecx, dword [esp + 0x318], 0x100
mov edx, dword [esp + 0x31c]
mov esi, dword [esp + 0x314]
movdqu xmm0, xmmword [eax]
or edx, ecx
imul ecx, dword [esp + 0x310], 0x100
pshufd xmm1, xmm0, 0x55
add esi, ecx
imul ecx, edx, 0x1b3
imul edx, dword [esp + 0x308], 0x100
add ecx, esi
mov esi, dword [esp + 0x30c]
imul ecx, ecx, 0x1b3
add esi, edx
imul edx, dword [esp + 0x304], 0x100
add ecx, esi
mov esi, dword [esp + 0x2f4]
imul ecx, ecx, 0x1b3
add esi, edx
mov edx, dword [esp + 8]
add esi, ecx
imul ecx, dword [esp + 0x2fc], 0x100
add edi, ecx
imul ecx, esi, 0x1b3
add edi, ecx
imul ecx, dword [esp + 0x2f8], 0x100
add ebx, ecx
imul ecx, edi, 0x1b3
add ebx, ecx
imul ecx, dword [esp + 0x300], 0x100
add edx, ecx
imul ecx, ebx, 0x1b3
add edx, ecx
movd ecx, xmm0
add ecx, 1
mov dword [eax], ecx
movd ecx, xmm1
adc ecx, 0
mov dword [eax + 4], ecx
movsd xmm1, qword [esp + 0x1b0]
movsd xmm2, qword [esp + 0x1a8]
mov eax, dword [esp + 0x328]
movsd qword [esp + 0x78], xmm1
movsd xmm1, qword [esp + 0x1a0]
movsd qword [esp + 0x70], xmm2
movsd qword [esp + 0x68], xmm1
movsd xmm1, qword [esp + 0x320]
mov dword [esp + 0x174], eax
mov eax, dword [esp + 0xc]
movsd qword [esp + 0x16c], xmm1
movsd xmm1, qword [0x5a4070]
movsd qword [esp + 0x80], xmm1
movsd xmm1, qword [0x5a4078]
movsd qword [esp + 0x88], xmm1
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 4]
movaps xmm1, xmmword [0x54b060]
mov dword [esp + 0xa4], edx
mov dword [esp + 0x13c], eax
mov dword [esp + 0x140], 6
mov dword [esp + 0x144], 6
mov dword [esp + 0xa8], 0
mov dword [esp + 0x138], 0x110000
mov dword [esp + 0x184], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0xd0], 0
mov dword [esp + 0xd8], 0
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe8], 0
mov dword [esp + 0xf0], 0
mov dword [esp + 0x148], 4
mov dword [esp + 0x14c], 0
mov dword [esp + 0x150], 0
mov dword [esp + 0x154], 4
mov dword [esp + 0x158], 0
mov dword [esp + 0x15c], 0
mov dword [esp + 0x160], 4
mov dword [esp + 0x164], 0
mov dword [esp + 0x168], 0
mov dword [esp + 0xf8], 0
mov dword [esp + 0x190], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x108], 0
movups xmmword [esp + 0x110], xmm1
movdqu xmmword [esp + 0x90], xmm0
mov dword [esp + 0x178], 8
mov dword [esp + 0x17c], 0
mov dword [esp + 0x180], 0
mov dword [esp + 0x120], 0
mov dword [esp + 0x128], 0
mov dword [esp + 0x130], 0
lea ecx, [esp + 0x320]
mov edx, str.helpPrint_help_informationversionPrint_version_informationunexpected_invalid_UTF_8_code_point_home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_3.0.7_src_parse_matches_arg_matches.rsVU
push 4
call sym.clap::build::arg::Arg::new::h6a32481546e4a765
add esp, 4
mov dword [esp + 0x370], str.helpPrint_help_informationversionPrint_version_informationunexpected_invalid_UTF_8_code_point_home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_3.0.7_src_parse_matches_arg_matches.rsVU
mov dword [esp + 0x374], 4
lea eax, [esp + 0x39c]
movsd xmm1, qword [esp + 0x350]
movsd xmm2, qword [esp + 0x348]
movsd xmm0, qword [esp + 0x358]
mov ebx, dword [esp + 0x390]
movsd xmm3, qword [esp + 0x368]
mov esi, dword [esp + 0x398]
movsd qword [esp + 0x1d0], xmm1
movsd xmm1, qword [esp + 0x340]
movsd qword [esp + 0x1c8], xmm2
movsd xmm2, qword [esp + 0x338]
movsd qword [esp + 0x1d8], xmm0
test ebx, ebx
mov edi, ebx
movsd qword [esp + 0x1c0], xmm1
movsd xmm1, qword [esp + 0x330]
movsd qword [esp + 0x1b8], xmm2
movsd xmm2, qword [esp + 0x320]
movsd qword [esp + 0x1b0], xmm1
movsd xmm1, qword [esp + 0x328]
movsd qword [esp + 0x1a0], xmm2
movsd xmm2, qword [esp + 0x380]
movsd qword [esp + 0x1a8], xmm1
movsd xmm1, qword [esp + 0x370]
movsd qword [esp + 0x1e8], xmm3
movsd qword [esp + 0x200], xmm2
movsd qword [esp + 0x1f0], xmm1
movsd xmm1, qword [esp + 0x378]
movsd qword [esp + 0x1f8], xmm1
movsd xmm1, qword [esp + 0x388]
movsd qword [esp + 0x208], xmm1
je 0x407397
mov edi, dword [esp + 0x394]
push 0xbc
push eax
lea eax, [esp + 0x224]
push eax
call sym._memcpy
add esp, 0xc
mov eax, dword [esp + 0x458]
mov ecx, dword [esp + 0x45c]
mov dword [esp + 0x1e0], 0x5555e4
mov dword [esp + 0x1e4], 0x16
mov dword [esp + 0x470], ecx
or eax, 8
cmp ebx, 1
mov dword [esp + 0x2d8], eax
movzx eax, word [esp + 0x471]
movzx ecx, byte [esp + 0x473]
adc ebx, 0
mov dword [esp + 0x210], ebx
mov dword [esp + 0x214], edi
mov dword [esp + 0x218], esi
mov byte [esp + 0x2dc], 0
mov word [esp + 0x320], ax
mov byte [esp + 0x322], cl
mov word [esp + 0x2dd], ax
mov byte [esp + 0x2df], cl
lea esi, [esp + 0x1a0]
lea ecx, [esp + 0x68]
mov edx, esi
call sym.clap::mkeymap::MKeyMap::push::hff2b48eeab6dab5d
lea eax, [esp + 0x50]
push 0x150
push eax
push esi
call sym._memcpy
add esp, 0xc
lea ecx, [esp + 0x320]
mov edx, 0x5555fa
push 7
call sym.clap::build::arg::Arg::new::h6a32481546e4a765
add esp, 4
mov dword [esp + 0x370], 0x5555fa
mov dword [esp + 0x374], 7
lea eax, [esp + 0xcc]
movsd xmm1, qword [esp + 0x350]
movsd xmm2, qword [esp + 0x348]
movsd xmm0, qword [esp + 0x358]
movsd xmm3, qword [esp + 0x368]
mov edi, dword [esp + 0x390]
mov esi, dword [esp + 0x394]
mov ebx, dword [esp + 0x398]
movsd qword [esp + 0x80], xmm1
movsd xmm1, qword [esp + 0x340]
movsd qword [esp + 0x78], xmm2
movsd xmm2, qword [esp + 0x338]
movsd qword [esp + 0x88], xmm0
movsd qword [esp + 0x70], xmm1
movsd xmm1, qword [esp + 0x330]
movsd qword [esp + 0x68], xmm2
movsd xmm2, qword [esp + 0x320]
movsd qword [esp + 0x60], xmm1
movsd xmm1, qword [esp + 0x328]
movsd qword [esp + 0x50], xmm2
movsd xmm2, qword [esp + 0x380]
movsd qword [esp + 0x58], xmm1
movsd xmm1, qword [esp + 0x370]
movsd qword [esp + 0x98], xmm3
movsd qword [esp + 0xb0], xmm2
movsd qword [esp + 0xa0], xmm1
movsd xmm1, qword [esp + 0x378]
movsd qword [esp + 0xa8], xmm1
movsd xmm1, qword [esp + 0x388]
movsd qword [esp + 0xb8], xmm1
push 0xbc
lea ecx, [esp + 0x3a0]
push ecx
push eax
call sym._memcpy
add esp, 0xc
mov ecx, dword [esp + 0x45c]
mov eax, dword [esp + 0x458]
mov dword [esp + 0x90], 0x555601
mov dword [esp + 0x94], 0x19
mov dword [esp + 0x470], ecx
or eax, 8
test edi, edi
movzx edx, word [esp + 0x471]
movzx ecx, byte [esp + 0x473]
mov dword [esp + 0x188], eax
mov word [esp + 0x10], dx
mov byte [esp + 0x12], cl
jne 0x4075ee
mov ebx, dword [esp + 0x274]
mov esi, dword [esp + 0x270]
cmp edi, 1
movzx eax, byte [esp + 0x12]
lea ecx, [esp + 0x1b8]
adc edi, 0
mov dword [esp + 0xc0], edi
mov dword [esp + 0xc4], esi
movzx esi, word [esp + 0x10]
mov dword [esp + 0xc8], ebx
mov byte [esp + 0x18c], 0
mov byte [esp + 0x18f], al
mov word [esp + 0x18d], si
lea edi, [esp + 0x50]
mov edx, edi
call sym.clap::mkeymap::MKeyMap::push::hff2b48eeab6dab5d
push 0x150
lea esi, [esp + 0x1a4]
push esi
lea eax, [esp + 0x328]
push eax
call sym._memcpy
add esp, 0xc
mov edx, 0x54be28
mov ecx, edi
push 4
call sym.clap::build::arg::Arg::new::h6a32481546e4a765
add esp, 4
or byte [esp + 0x188], 0x20
push 0x140
push edi
push esi
call sym._memcpy
add esp, 0xc
mov dword [esp + 0x470], 0x54bee0
mov dword [esp + 0x474], 4
lea edi, [esp + 0x50]
lea eax, [esp + 0x470]
mov edx, esi
mov ecx, edi
push eax
call sym.clap::build::arg::Arg::value_names::hd1ae3fa908a7307e
add esp, 4
and byte [esp + 0x188], 0xfe
push 0x140
push edi
push esi
call sym._memcpy
add esp, 0xc
movzx eax, byte [0x5c6170]
mov eax, dword [0x5c6108]
test eax, eax
jne 0x4076e8
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x408abc
mov dword [0x5c6108], eax
push 0x10
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x408abc
mov dword [eax], 1
mov dword [eax + 4], 1
mov dword [eax + 8], 0
mov byte [eax + 0xc], 0
mov ebx, eax
mov eax, dword [esp + 0x1f8]
test eax, eax
je 0x407737
lock dec dword [eax]
jne 0x407737
mov edx, dword [esp + 0x1fc]
mov ecx, dword [esp + 0x1f8]
call sym.alloc::sync::Arc_LT_T_C_A_GT_::drop_slow::h0a83d4e93c28894a
mov dword [esp + 0x1f8], ebx
mov dword [esp + sym.__ZN4core3ptr221drop_in_place_LT_clap..build..arg..Arg..validator_LT__LT_merino..Opt_u20_as_u20_clap..derive..Args_GT_..augmen], 0x555e08
lea eax, [esp + 0x1f8]
movsd xmm1, qword [esp + 0x1d0]
movsd xmm2, qword [esp + 0x1c8]
movsd xmm0, qword [esp + 0x1d8]
movsd xmm3, qword [eax]
mov ebx, dword [esp + 0x1ec]
movsd qword [esp + 0x4a0], xmm1
movsd xmm1, qword [esp + 0x1c0]
movsd qword [esp + 0x498], xmm2
movsd xmm2, qword [esp + 0x1b8]
movsd qword [esp + 0x4a8], xmm0
movsd qword [esp + 0x10], xmm3
movsd qword [esp + 0x490], xmm1
movsd xmm1, qword [esp + 0x1b0]
movsd qword [esp + 0x488], xmm2
movsd xmm2, qword [esp + 0x1a0]
movsd qword [esp + 0x480], xmm1
movsd xmm1, qword [esp + 0x1a8]
movsd qword [esp + 0x470], xmm2
movsd xmm2, qword [eax + 0x10]
movsd qword [esp + 0x478], xmm1
movsd xmm1, qword [eax + 8]
movsd qword [esp + 0x20], xmm2
movsd qword [esp + 0x18], xmm1
movsd xmm1, qword [eax + 0x18]
mov eax, dword [eax + 0x20]
movsd qword [esp + 0x28], xmm1
mov dword [esp + 0x30], eax
push 0xc4
lea eax, [esp + 0x220]
push eax
push edi
call sym._memcpy
add esp, 0xc
lea eax, [esp + 0x54]
push 0xc0
push eax
push esi
call sym._memcpy
add esp, 0xc
movsd xmm1, qword [esp + 0x478]
movsd xmm2, qword [esp + 0x480]
movsd xmm0, qword [esp + 0x470]
mov eax, dword [esp + 0x30]
movsd qword [esp + 0x58], xmm1
movsd xmm1, qword [esp + 0x488]
movsd qword [esp + 0x60], xmm2
movsd xmm2, qword [esp + 0x490]
movsd qword [esp + 0x50], xmm0
movsd qword [esp + 0x68], xmm1
movsd xmm1, qword [esp + 0x498]
movsd qword [esp + 0x70], xmm2
movsd xmm2, qword [esp + 0x4a0]
movsd qword [esp + 0x78], xmm1
movsd xmm1, qword [esp + 0x4a8]
movsd qword [esp + 0x80], xmm2
movsd xmm2, qword [esp + 0x28]
movsd qword [esp + 0x88], xmm1
movsd xmm1, qword [esp + 0x20]
mov dword [esp + 0x90], 0x54bee4
mov dword [esp + 0x94], 0x15
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], ebx
mov dword [esp + 0xa0], 0x54be28
mov dword [esp + 0xa4], 4
movsd qword [esp + 0xc0], xmm2
movsd xmm2, qword [esp + 0x10]
mov dword [esp + 0xc8], eax
lea eax, [esp + 0xd0]
movsd qword [esp + 0xb8], xmm1
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0xa8], xmm2
movsd qword [esp + 0xb0], xmm1
mov dword [esp + 0xcc], 0x70
push 0xc0
push esi
push eax
call sym._memcpy
add esp, 0xc
mov dword [esp + 0x10], 0x5c6058
mov eax, dword [0x5c6060]
cmp eax, 3
je 0x4079ac
lea eax, [esp + 0x10]
lea edi, [esp + 0x470]
mov dword [esp + 0x470], eax
mov dword [esp + 0x1a0], edi
xor edx, edx
lea ecx, [0x5c6060]
push 0x54cf18
push 0x54bdd0
push esi
call dbg.call
add esp, 0xc
mov eax, dword [esp + 0x10]
lea edx, [esp + 0x50]
lea ecx, [esp + 0x1a0]
push dword [eax + 4]
push dword [eax]
call sym.clap::build::arg::Arg::default_value::h638361f796530f91
add esp, 8
mov eax, dword [esp + 0x210]
lea edx, [esp + 0x218]
lea edi, [esp + 0x3f4]
lea ecx, [esp + 0x214]
lea esi, [esp + 0x3f0]
test eax, eax
cmovne edi, edx
cmovne esi, ecx
cmp eax, 1
mov ecx, 0x1c
mov edx, dword [edi]
adc eax, 0
mov dword [esp + 4], edx
lea edx, [esp + 0x50]
mov ebx, dword [esi]
lea esi, [esp + 0x1a0]
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0xc0], eax
mov edi, edx
lea esi, [esp + 0x338]
mov eax, dword [esp + 4]
mov dword [esp + 0xc4], ebx
mov dword [esp + 0xc8], eax
push 0xc4
lea eax, [esp + 0x220]
push eax
lea eax, [esp + 0xd4]
push eax
call sym._memcpy
add esp, 0xc
mov ecx, esi
mov edx, edi
call sym.clap::mkeymap::MKeyMap::push::hff2b48eeab6dab5d
push 0x150
lea ebx, [esp + 0x324]
push ebx
push edi
call sym._memcpy
add esp, 0xc
lea esi, [esp + 0x1a0]
mov edx, 0x54be62
mov ecx, esi
push 2
call sym.clap::build::arg::Arg::new::h6a32481546e4a765
add esp, 4
or byte [esp + 0x2d8], 0x20
push 0x140
push esi
push ebx
call sym._memcpy
add esp, 0xc
mov dword [esp + 0x470], 0x54bef9
mov dword [esp + 0x474], 2
lea esi, [esp + 0x1a0]
mov edx, ebx
lea eax, [esp + 0x470]
mov ecx, esi
push eax
call sym.clap::build::arg::Arg::value_names::hd1ae3fa908a7307e
add esp, 4
and byte [esp + 0x2d8], 0xfe
push 0x140
push esi
push ebx
call sym._memcpy
add esp, 0xc
movzx eax, byte [0x5c6170]
mov eax, dword [0x5c6108]
test eax, eax
jne 0x407b0c
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x408acd
mov dword [0x5c6108], eax
push 0x10
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x408acd
mov dword [eax], 1
mov dword [eax + 4], 1
mov dword [eax + 8], 0
mov byte [eax + 0xc], 0
mov edi, eax
mov eax, dword [esp + 0x378]
test eax, eax
je 0x407b5b
lock dec dword [eax]
jne 0x407b5b
mov edx, dword [esp + 0x37c]
mov ecx, dword [esp + 0x378]
call sym.alloc::sync::Arc_LT_T_C_A_GT_::drop_slow::h0a83d4e93c28894a
mov dword [esp + 0x378], edi
mov dword [esp + sym.__ZN4core3ptr221drop_in_place_LT_clap..build..arg..Arg..validator_LT__LT_merino..Opt_u20_as_u20_clap..derive..Args_GT_..augmen], 0x555e1c
lea eax, [esp + 0x378]
movsd xmm1, qword [esp + 0x350]
movsd xmm2, qword [esp + 0x348]
movsd xmm0, qword [esp + 0x358]
movsd xmm3, qword [esp + 0x320]
mov ecx, dword [eax + 0x20]
mov edi, dword [esp + 0x36c]
movsd qword [esp + 0x4a0], xmm1
movsd xmm1, qword [esp + 0x340]
movsd qword [esp + 0x498], xmm2
movsd xmm2, qword [esp + 0x338]
movsd qword [esp + 0x4a8], xmm0
movsd qword [esp + 0x470], xmm3
mov dword [esp + 0x30], ecx
movsd qword [esp + 0x490], xmm1
movsd xmm1, qword [esp + 0x330]
movsd qword [esp + 0x488], xmm2
movsd xmm2, qword [eax + 0x18]
movsd qword [esp + 0x480], xmm1
movsd xmm1, qword [esp + 0x328]
movsd qword [esp + 0x28], xmm2
movsd xmm2, qword [eax]
movsd qword [esp + 0x478], xmm1
movsd xmm1, qword [eax + 0x10]
movsd qword [esp + 0x10], xmm2
movsd qword [esp + 0x20], xmm1
movsd xmm1, qword [eax + 8]
movsd qword [esp + 0x18], xmm1
push 0xc4
lea eax, [esp + 0x3a0]
push eax
push esi
call sym._memcpy
add esp, 0xc
lea eax, [esp + 0x1a4]
push 0xc0
push eax
push ebx
call sym._memcpy
add esp, 0xc
movsd xmm1, qword [esp + 0x478]
movsd xmm2, qword [esp + 0x480]
movsd xmm0, qword [esp + 0x470]
mov eax, dword [esp + 0x30]
movsd qword [esp + 0x1a8], xmm1
movsd xmm1, qword [esp + 0x488]
movsd qword [esp + 0x1b0], xmm2
movsd xmm2, qword [esp + 0x490]
movsd qword [esp + 0x1a0], xmm0
movsd qword [esp + 0x1b8], xmm1
movsd xmm1, qword [esp + 0x498]
movsd qword [esp + 0x1c0], xmm2
movsd xmm2, qword [esp + 0x4a0]
movsd qword [esp + 0x1c8], xmm1
movsd xmm1, qword [esp + 0x4a8]
movsd qword [esp + 0x1d0], xmm2
movsd xmm2, qword [esp + 0x28]
movsd qword [esp + 0x1d8], xmm1
movsd xmm1, qword [esp + 0x20]
mov dword [esp + 0x1e0], 0x54befb
mov dword [esp + 0x1e4], 0x13
mov dword [esp + 0x1e8], 0
mov dword [esp + 0x1ec], edi
mov dword [esp + 0x1f0], 0x54be62
mov dword [esp + 0x1f4], 2
movsd qword [esp + 0x210], xmm2
movsd xmm2, qword [esp + 0x10]
mov dword [esp + 0x218], eax
lea eax, [esp + 0x220]
movsd qword [esp + 0x208], xmm1
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x1f8], xmm2
movsd qword [esp + 0x200], xmm1
mov dword [esp + 0x21c], 0x69
push 0xc0
push ebx
push eax
call sym._memcpy
add esp, 0xc
lea edx, [esp + 0x1a0]
lea ecx, [esp + 0x320]
push 9
push 0x54bf0e
call sym.clap::build::arg::Arg::default_value::h638361f796530f91
add esp, 8
mov eax, dword [esp + 0x390]
lea edx, [esp + 0x398]
lea edi, [esp + 0x124]
lea ecx, [esp + 0x394]
lea esi, [esp + 0x120]
test eax, eax
cmovne edi, edx
cmovne esi, ecx
cmp eax, 1
mov ecx, 0x1c
mov edx, dword [edi]
adc eax, 0
mov dword [esp + 4], edx
lea edx, [esp + 0x1a0]
mov ebx, dword [esi]
lea esi, [esp + 0x320]
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x210], eax
mov edi, edx
lea esi, [esp + 0x68]
mov eax, dword [esp + 4]
mov dword [esp + 0x214], ebx
mov dword [esp + 0x218], eax
push 0xc4
lea eax, [esp + 0x3a0]
push eax
lea eax, [esp + 0x224]
push eax
call sym._memcpy
add esp, 0xc
mov ecx, esi
mov edx, edi
call sym.clap::mkeymap::MKeyMap::push::hff2b48eeab6dab5d
push 0x150
lea eax, [esp + 0x54]
push eax
push edi
call sym._memcpy
add esp, 0xc
lea esi, [esp + 0x50]
mov edx, 0x54be98
mov ecx, esi
push 0xe
call sym.clap::build::arg::Arg::new::h6a32481546e4a765
add esp, 4
mov dword [esp + 0x90], 0x54bf17
mov dword [esp + 0x94], 0x1c
lea edi, [esp + 0x470]
mov ecx, 0x12
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x9c]
movsd xmm0, qword [esp + 0xa8]
movsd xmm2, qword [esp + 0xb0]
movsd xmm1, qword [esp + 0xb8]
mov ebx, dword [esp + 0xc0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xc4]
movsd qword [esp + 0x10], xmm0
movsd qword [esp + 0x18], xmm2
movsd qword [esp + 0x20], xmm1
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc8]
mov dword [esp + 8], eax
push 0xc4
lea eax, [esp + 0xd0]
push eax
lea eax, [esp + 0x328]
push eax
call sym._memcpy
add esp, 0xc
lea edi, [esp + 0x50]
mov ecx, 0x12
lea esi, [esp + 0x470]
rep movsd dword es:[edi], dword [esi]
mov esi, dword [esp + 0xc]
movsd xmm0, qword [esp + 0x20]
movsd xmm2, qword [esp + 0x10]
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0xb8], xmm0
movsd qword [esp + 0xb0], xmm1
movsd qword [esp + 0xa8], xmm2
push 0xc4
lea eax, [esp + 0x324]
push eax
lea eax, [esp + 0xd4]
push eax
call sym._memcpy
mov edx, dword [esp + 0x14]
add esp, 0xc
test ebx, ebx
jne 0x407f85
mov edx, dword [esp + 0x274]
mov esi, dword [esp + 0x270]
mov eax, dword [esp + 4]
cmp ebx, 1
mov dword [esp + 0x98], 0
lea ecx, [esp + 0x1b8]
adc ebx, 0
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], 0x54be98
mov dword [esp + 0xa4], 0xe
mov dword [esp + 0xc0], ebx
mov dword [esp + 0xc4], esi
mov dword [esp + 0xc8], edx
lea esi, [esp + 0x50]
mov edx, esi
call sym.clap::mkeymap::MKeyMap::push::hff2b48eeab6dab5d
push 0x150
lea eax, [esp + 0x1a4]
push eax
push esi
call sym._memcpy
add esp, 0xc
lea esi, [esp + 0x1a0]
mov edx, 0x54bea6
mov ecx, esi
push 7
call sym.clap::build::arg::Arg::new::h6a32481546e4a765
add esp, 4
mov dword [esp + 0x1e0], 0x54bf33
mov dword [esp + 0x1e4], 0x21
lea edi, [esp + 0x470]
mov ecx, 0x12
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x1ec]
movsd xmm0, qword [esp + 0x1f8]
movsd xmm2, qword [esp + 0x200]
movsd xmm1, qword [esp + 0x208]
mov ebx, dword [esp + 0x210]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x214]
movsd qword [esp + 0x10], xmm0
movsd qword [esp + 0x18], xmm2
movsd qword [esp + 0x20], xmm1
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x218]
mov dword [esp + 8], eax
push 0xc4
lea eax, [esp + 0x220]
push eax
lea eax, [esp + 0x328]
push eax
call sym._memcpy
add esp, 0xc
lea edi, [esp + 0x1a0]
mov ecx, 0x12
lea esi, [esp + 0x470]
rep movsd dword es:[edi], dword [esi]
lea esi, [esp + 0x320]
mov edi, dword [esp + 0xc]
movsd xmm0, qword [esp + 0x20]
movsd xmm2, qword [esp + 0x10]
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x208], xmm0
movsd qword [esp + 0x200], xmm1
movsd qword [esp + 0x1f8], xmm2
push 0xc4
push esi
lea eax, [esp + 0x224]
push eax
call sym._memcpy
mov edx, dword [esp + 0x14]
add esp, 0xc
test ebx, ebx
jne 0x40811b
mov edx, dword [esp + 0x124]
mov edi, dword [esp + 0x120]
mov eax, dword [esp + 4]
cmp ebx, 1
mov dword [esp + 0x1e8], 0
lea ecx, [esp + 0x68]
adc ebx, 0
mov dword [esp + 0x1ec], eax
mov dword [esp + 0x1f0], 0x54bea6
mov dword [esp + 0x1f4], 7
mov dword [esp + 0x210], ebx
mov dword [esp + 0x214], edi
mov dword [esp + 0x218], edx
lea edi, [esp + 0x1a0]
mov edx, edi
call sym.clap::mkeymap::MKeyMap::push::hff2b48eeab6dab5d
push 0x150
lea ebx, [esp + 0x54]
push ebx
push edi
call sym._memcpy
add esp, 0xc
mov edx, 0x54bead
mov ecx, ebx
push 5
call sym.clap::build::arg::Arg::new::h6a32481546e4a765
add esp, 4
or byte [esp + 0x188], 0x20
push 0x140
push ebx
push esi
call sym._memcpy
add esp, 0xc
mov dword [esp + 0x470], 0x54bf54
mov dword [esp + 0x474], 5
mov edx, esi
lea eax, [esp + 0x470]
lea ecx, [esp + 0x50]
push eax
call sym.clap::build::arg::Arg::value_names::hd1ae3fa908a7307e
add esp, 4
movzx eax, byte [0x5c6170]
mov eax, dword [0x5c6108]
test eax, eax
jne 0x4081fd
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x408ade
mov dword [0x5c6108], eax
push 0x10
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x408ade
mov dword [eax], 1
mov dword [eax + 4], 1
mov dword [eax + 8], 0
mov byte [eax + 0xc], 0
mov edi, eax
mov eax, dword [esp + 0xa8]
test eax, eax
je 0x40824c
lock dec dword [eax]
jne 0x40824c
mov edx, dword [esp + 0xac]
mov ecx, dword [esp + 0xa8]
call sym.alloc::sync::Arc_LT_T_C_A_GT_::drop_slow::h0a83d4e93c28894a
mov dword [esp + 0xa8], edi
mov dword [esp + 0xac], 0x555df4
lea eax, [esp + 0xa8]
movsd xmm1, qword [esp + 0x80]
movsd xmm2, qword [esp + 0x78]
movsd xmm0, qword [esp + 0x88]
movsd xmm3, qword [esp + 0x50]
mov ecx, dword [esp + 0x9c]
mov ebx, dword [esp + 0xc0]
mov edi, dword [esp + 0xc8]
movsd qword [esp + 0x40], xmm1
movsd xmm1, qword [esp + 0x70]
movsd qword [esp + 0x38], xmm2
movsd xmm2, qword [esp + 0x68]
movsd qword [esp + 0x48], xmm0
movsd qword [esp + 0x10], xmm3
mov dword [esp + 4], ecx
movsd qword [esp + 0x30], xmm1
movsd xmm1, qword [esp + 0x60]
movsd qword [esp + 0x28], xmm2
movsd xmm2, qword [eax]
movsd qword [esp + 0x20], xmm1
movsd xmm1, qword [esp + 0x58]
movsd qword [esp + 0x530], xmm2
movsd qword [esp + 0x18], xmm1
movsd xmm1, qword [eax + 8]
movsd qword [esp + 0x538], xmm1
movsd xmm1, qword [eax + 0x10]
mov eax, dword [esp + 0xc4]
movsd qword [esp + 0x540], xmm1
mov dword [esp + 8], eax
push 0xc4
lea eax, [esp + 0xd0]
push eax
push esi
call sym._memcpy
add esp, 0xc
lea eax, [esp + 0x324]
push 0xc0
push eax
lea esi, [esp + 0x478]
push esi
call sym._memcpy
add esp, 0xc
movsd xmm1, qword [esp + 0x40]
movsd xmm2, qword [esp + 0x38]
movsd xmm0, qword [esp + 0x48]
movsd xmm3, qword [esp + 0x10]
movsd qword [esp + 0x80], xmm1
movsd xmm1, qword [esp + 0x30]
movsd qword [esp + 0x78], xmm2
movsd xmm2, qword [esp + 0x28]
movsd qword [esp + 0x88], xmm0
movsd qword [esp + 0x50], xmm3
movsd qword [esp + 0x70], xmm1
movsd xmm1, qword [esp + 0x20]
movsd qword [esp + 0x68], xmm2
movsd xmm2, qword [esp + 0x530]
movsd qword [esp + 0x60], xmm1
movsd xmm1, qword [esp + 0x18]
movsd qword [esp + 0x58], xmm1
movsd xmm1, qword [esp + 0x538]
movsd qword [esp + 0xa8], xmm2
movsd qword [esp + 0xb0], xmm1
movsd xmm1, qword [esp + 0x540]
movsd qword [esp + 0xb8], xmm1
push 0xc0
push esi
lea esi, [esp + 0x328]
push esi
call sym._memcpy
mov ecx, dword [esp + 0x14]
add esp, 0xc
test ebx, ebx
jne 0x408413
mov edi, dword [esp + 0x274]
mov ecx, dword [esp + 0x270]
mov eax, dword [esp + 4]
cmp ebx, 1
mov dword [esp + 0x90], 0x54bf59
mov dword [esp + 0x94], 0x25
mov dword [esp + 0x98], 0
adc ebx, 0
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], 0x54bead
mov dword [esp + 0xa4], 5
mov dword [esp + 0xc0], ebx
mov dword [esp + 0xc4], ecx
mov dword [esp + 0xc8], edi
mov dword [esp + 0xcc], 0x75
push 0xc0
push esi
lea eax, [esp + 0xd8]
push eax
call sym._memcpy
add esp, 0xc
lea esi, [esp + 0x50]
lea ecx, [esp + 0x1b8]
mov edx, esi
call sym.clap::mkeymap::MKeyMap::push::hff2b48eeab6dab5d
push 0x150
lea eax, [esp + 0x1a4]
push eax
push esi
call sym._memcpy
add esp, 0xc
lea ecx, [esp + 0x320]
mov edx, 0x54beb2
push 9
call sym.clap::build::arg::Arg::new::h6a32481546e4a765
add esp, 4
or byte [esp + 0x458], 2
movsd xmm1, qword [esp + 0x350]
movsd xmm2, qword [esp + 0x348]
movsd xmm0, qword [esp + 0x358]
movsd xmm3, qword [esp + 0x36c]
mov eax, dword [esp + 0x38c]
mov ebx, dword [esp + 0x390]
mov edi, dword [esp + 0x394]
mov esi, dword [esp + 0x398]
movsd qword [esp + 0x1d0], xmm1
movsd xmm1, qword [esp + 0x340]
movsd qword [esp + 0x1c8], xmm2
movsd xmm2, qword [esp + 0x338]
movsd qword [esp + 0x1d8], xmm0
movsd qword [esp + 0x1c0], xmm1
movsd xmm1, qword [esp + 0x330]
movsd qword [esp + 0x1b8], xmm2
movsd xmm2, qword [esp + 0x320]
movsd qword [esp + 0x1b0], xmm1
movsd xmm1, qword [esp + 0x328]
movsd qword [esp + 0x1a0], xmm2
movsd xmm2, qword [esp + 0x37c]
movsd qword [esp + 0x1a8], xmm1
movsd xmm1, qword [esp + 0x374]
mov dword [esp + 0x20c], eax
movsd qword [esp + 0x1ec], xmm3
movsd qword [esp + 0x1fc], xmm2
lea eax, [esp + 0x3a0]
movsd qword [esp + 0x1f4], xmm1
movsd xmm1, qword [esp + 0x384]
movsd qword [esp + 0x204], xmm1
push 0xc0
push eax
lea eax, [esp + 0x478]
push eax
call sym._memcpy
add esp, 0xc
test ebx, ebx
jne 0x408601
mov esi, dword [esp + 0x124]
mov edi, dword [esp + 0x120]
cmp ebx, 1
mov dword [esp + 0x1e0], 0x54bf7e
mov dword [esp + 0x1e4], 0x63
mov dword [esp + 0x1e8], 0
adc ebx, 0
mov dword [esp + 0x210], ebx
mov dword [esp + 0x214], edi
mov dword [esp + 0x218], esi
mov dword [esp + 0x21c], 0x76
push 0xc0
lea eax, [esp + 0x474]
push eax
lea eax, [esp + 0x228]
push eax
call sym._memcpy
add esp, 0xc
lea ebx, [esp + 0x1a0]
lea ecx, [esp + 0x68]
mov edx, ebx
call sym.clap::mkeymap::MKeyMap::push::hff2b48eeab6dab5d
push 0x150
lea eax, [esp + 0x54]
push eax
push ebx
call sym._memcpy
add esp, 0xc
lea esi, [esp + 0x320]
mov edx, 0x54bebb
mov ecx, esi
push 5
call sym.clap::build::arg::Arg::new::h6a32481546e4a765
add esp, 4
mov dword [esp + 0x360], 0x54bfe1
mov dword [esp + 0x364], 0x3b
lea edi, [esp + 0x50]
mov ecx, 0x12
rep movsd dword es:[edi], dword [esi]
movsd xmm1, qword [esp + 0x37c]
mov eax, dword [esp + 0x38c]
movsd xmm0, qword [esp + 0x384]
movsd xmm2, qword [esp + 0x36c]
mov edi, dword [esp + 0x390]
mov esi, dword [esp + 0x394]
mov ebx, dword [esp + 0x398]
movsd qword [esp + 0xac], xmm1
movsd xmm1, qword [esp + 0x374]
mov dword [esp + 0xbc], eax
movsd qword [esp + 0xb4], xmm0
movsd qword [esp + 0x9c], xmm2
movsd qword [esp + 0xa4], xmm1
push 0xc0
lea eax, [esp + 0x3a4]
push eax
lea eax, [esp + 0x478]
push eax
call sym._memcpy
add esp, 0xc
test edi, edi
jne 0x40875d
mov ebx, dword [esp + 0x274]
mov esi, dword [esp + 0x270]
cmp edi, 1
mov dword [esp + 0x98], 0
adc edi, 0
mov dword [esp + 0xc0], edi
mov dword [esp + 0xc4], esi
mov dword [esp + 0xc8], ebx
mov dword [esp + 0xcc], 0x71
push 0xc0
lea eax, [esp + 0x474]
push eax
lea eax, [esp + 0xd8]
push eax
call sym._memcpy
add esp, 0xc
lea ecx, [esp + 0x1b8]
lea edx, [esp + 0x50]
call sym.clap::mkeymap::MKeyMap::push::hff2b48eeab6dab5d
lea ebx, [esp + 0x50]
lea esi, [esp + 0x1a0]
mov ecx, 0x1a
lea eax, [esp + 0x210]
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0xc0]
push 0xe0
push eax
push ecx
call sym._memcpy
add esp, 0xc
mov dword [esp + 0xb8], 0x54c01c
mov dword [esp + 0xbc], 5
mov dword [esp + 0x1a4], 0x6fc3d9d5
mov dword [esp + 0x1a0], 0xac8ba30
mov dword [esp + 0x1a8], 0x54c021
mov dword [esp + 0x1ac], 4
mov dword [esp + 0x1b0], 8
mov dword [esp + 0x1b4], 0
mov dword [esp + 0x1b8], 0
mov dword [esp + 0x1bc], 8
mov dword [esp + 0x1c0], 0
mov dword [esp + 0x1c4], 0
mov dword [esp + 0x1c8], 8
mov dword [esp + 0x1cc], 0
mov dword [esp + 0x1d0], 0
mov word [esp + 0x1d4], 1
lea esi, [esp + 0x1a0]
lea ecx, [esp + 0x320]
mov edx, esi
push 0x54c028
call sym.clap::build::arg_group::ArgGroup::args::h2fe3c4fd743ed915
add esp, 4
mov edx, dword [esp + 0x180]
cmp edx, dword [esp + 0x17c]
jne 0x4088db
lea ecx, [esp + 0x178]
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::reserve_for_push::h57dc3b7dd7269fe6
mov edx, dword [esp + 0x180]
mov eax, dword [esp + 0x178]
movsd xmm0, qword [esp + 0x350]
imul ecx, edx, 0x38
inc edx
movsd qword [eax + ecx + 0x30], xmm0
movsd xmm0, qword [esp + 0x348]
movsd qword [eax + ecx + 0x28], xmm0
movsd xmm0, qword [esp + 0x340]
movsd qword [eax + ecx + 0x20], xmm0
movsd xmm0, qword [esp + 0x338]
movsd qword [eax + ecx + 0x18], xmm0
movsd xmm0, qword [esp + 0x330]
movsd qword [eax + ecx + 0x10], xmm0
movsd xmm0, qword [esp + 0x320]
movsd xmm1, qword [esp + 0x328]
movsd qword [eax + ecx + 8], xmm1
movsd qword [eax + ecx], xmm0
mov dword [esp + 0x180], edx
push 0x150
push ebx
push esi
call sym._memcpy
add esp, 0xc
mov dword [esp + 0x54], 0x36276a46
mov dword [esp + 0x50], 0xab531aa
mov dword [esp + 0x58], 0x54c038
mov dword [esp + 0x5c], 3
mov dword [esp + 0x60], 8
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 8
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 8
mov dword [esp + 0x80], 0
mov dword [esp + 0x7c], 0
mov word [esp + 0x84], 0
lea edx, [esp + 0x50]
lea ecx, [esp + 0x320]
push 0x54c03c
call sym.clap::build::arg_group::ArgGroup::args::h2fe3c4fd743ed915
add esp, 4
mov edx, dword [esp + 0x2d0]
cmp edx, dword [esp + 0x2cc]
jne 0x408a14
lea ecx, [esp + 0x2c8]
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::reserve_for_push::h57dc3b7dd7269fe6
mov edx, dword [esp + 0x2d0]
mov eax, dword [esp + 0x2c8]
movsd xmm0, qword [esp + 0x350]
imul ecx, edx, 0x38
inc edx
movsd qword [eax + ecx + 0x30], xmm0
movsd xmm0, qword [esp + 0x348]
movsd qword [eax + ecx + 0x28], xmm0
movsd xmm0, qword [esp + 0x340]
movsd qword [eax + ecx + 0x20], xmm0
movsd xmm0, qword [esp + 0x338]
movsd qword [eax + ecx + 0x18], xmm0
movsd xmm0, qword [esp + 0x330]
movsd qword [eax + ecx + 0x10], xmm0
movsd xmm0, qword [esp + 0x320]
movsd xmm1, qword [esp + 0x328]
movsd qword [eax + ecx + 8], xmm1
movsd qword [eax + ecx], xmm0
mov dword [esp + 0x2d0], edx
push 0x150
push esi
push dword [esp + 0x2f8]
call sym._memcpy
add esp, 0xc
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, 1
mov edx, 6
call dbg.handle_alloc_error
ud2
mov ecx, 4
mov edx, 0x10
call dbg.handle_alloc_error
jmp 0x408b10
mov ecx, 4
mov edx, 0x10
call dbg.handle_alloc_error
jmp 0x408b10
mov ecx, 4
mov edx, 0x10
call dbg.handle_alloc_error
jmp 0x408b10
lea eax, [esp + 0x50]
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 0x5556c8
push eax
call dbg.unwrap_failed
add esp, 0xc
ud2