Function at 0x454204
Capabilities:
Accept command line arguments

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x860
mov qword [rsp + 0x250], 0xfffffffffffffffe
call qword [sym.imp.KERNEL32.dll_SetFileApisToOEM]
xor r13d, r13d
mov qword [rsp + 0xb8], r13
mov dword [rsp + 0xc0], r13d
mov dword [rsp + 0xc4], r13d
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov rdx, rax
lea rcx, [rsp + 0x90]
call fcn.004034c8
nop
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0x90]
call fcn.004011b8
nop
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_free
mov ebp, 0xffffffff
mov ebx, dword [rsp + 0xc0]
cmp ebx, r13d
jbe 0x4542de
mov rcx, qword [rsp + 0xb8]
mov rdi, qword [rcx]
cmp rdi, r13
je 0x4542bd
mov rcx, qword [rdi]
call sub.msvcrt.dll_free
mov rcx, rdi
call sub.msvcrt.dll_free
mov ebx, dword [rsp + 0xc0]
mov rcx, qword [rsp + 0xb8]
lea r8d, [rbx - 1]
shl r8, 3
lea rdx, [rcx + 8]
call sub.msvcrt.dll_memmove
mov ebx, dword [rsp + 0xc0]
add ebx, ebp
mov dword [rsp + 0xc0], ebx
cmp ebx, r13d
jne 0x45436e
mov rdi, qword [0x0047bcb8]
cmp rdi, r13
je 0x454322
mov rdx, qword [rdi]
lea rcx, str._n7_Zip_21.07__x64__:_Copyright__c__1999_2021_Igor_Pavlov_:_2021_12_26_n
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rdi
call fcn.004024d8
mov rdx, qword [rdi]
lea rcx, str.Usage:_7z__command____switches_...___archive_name____file_names_...____listfile__n_n_Commands__n__a_:_Add_files_to_archive_n__b_:_Benchmark_n__d_:_Delete_files_from_archive_n__e_:_Extract_files_from_archive__without_using_directory_names__n__h_:_Calculate_hash_values_for_files_n__i_:_Show_information_about_supported_formats_n__l_:_List_contents_of_archive_n__rn_:_Rename_files_in_archive_n__t_:_Test_integrity_of_archive_n__u_:_Update_files_to_archive_n__x_:_eXtract_files_with_full_paths_n_n_Switches__n_____:_Stop_switches_and__listfile_parsing_n___ai_r__0___listfile_wildcard_:_Include_archives_n___ax_r__0___listfile_wildcard_:_eXclude_archives_n___aoastu_:_set_Overwrite_mode_n___an_:_disable_archive_name_field_n___bb_0_3__:_set_output_log_level_n___bd_:_disable_progress_indicator_n___bsoep012_:_set_output_stream_for_output_error_progress_line_n___bt_:_show_execution_time_statistics_n___i_r__0___listfile_wildcard_:_Include_filenames_n___mParameters_:_set_compression_Method_n_____mmt_N__:_set_number_of_CPU_threads_n_____mx_N__:_set_compression_level:__mx1__fastest__...__mx9__ultra__n___oDirectory_:_set_Output_directory_n___pPassword_:_set_Password_n___r__0__:_Recurse_subdirectories_for_name_search_n___saaes_:_set_Archive_name_mode_n___sccUTF_8WINDOS_:_set_charset_for_for_console_input_output_n___scsUTF_8UTF_16LEUTF_16BEWINDOSid_:_set_charset_for_list_files_n___scrc_CRC32CRC64SHA1SHA256__:_set_hash_function_for_x__e__h_commands_n___sdel_:_delete_files_after_compression_n___seml_.__:_send_archive_by_email_n___sfx_name__:_Create_SFX_archive_n___si_name__:_read_data_from_stdin_n___slp_:_set_Large_Pages_mode_n___slt_:_show_technical_information_for_l__List__command_n___snh_:_store_hard_links_as_links_n___snl_:_store_symbolic_links_as_links_n___sni_:_store_NT_security_information_n___sns____:_store_NTFS_alternate_streams_n___so_:_write_data_to_stdout_n___spd_:_disable_wildcard_matching_for_file_names_n___spe_:_eliminate_duplication_of_root_folder_for_extract_command_n___spf_:_use_fully_qualified_file_paths_n___ssc____:_set_sensitive_case_mode_n___sse_:_stop_archive_creating__if_it_cant_open_some_input_file_n___ssp_:_do_not_change_Last_Access_Time_of_source_files_while_archiving_n___ssw_:_compress_shared_files_n___stl_:_set_archive_timestamp_from_the_most_recently_modified_file_n___stmHexMask_:_set_CPU_thread_affinity_mask__hexadecimal_number__n___stxType_:_exclude_archive_type_n___tType_:_Set_type_of_archive_n___u____p__q__r__x__y__z___newArchiveName__:_Update_options_n___vSize_bkmg__:_Create_volumes_n___w_path__:_assign_Work_directory._Empty_path_means_a_temporary_directory_n___x_r__0___listfile_wildcard_:_eXclude_filenames_n___y_:_assume_Yes_on_all_queries_n
call qword [sym.imp.msvcrt.dll_fputs]
mov ebx, dword [rsp + 0xc0]
movsxd rdi, ebx
cmp ebx, r13d
je 0x45435a
shl rdi, 3
add ebx, ebp
sub rdi, 8
mov rax, qword [rsp + 0xb8]
mov rsi, qword [rdi + rax]
cmp rsi, r13
je 0x454355
mov rcx, qword [rsi]
call sub.msvcrt.dll_free
mov rcx, rsi
call sub.msvcrt.dll_free
cmp ebx, r13d
jne 0x45432e
mov rcx, qword [rsp + 0xb8]
call sub.msvcrt.dll_free
xor eax, eax
jmp 0x456571
lea rcx, [rsp + 0x260]
call fcn.00453ec4
nop
lea rcx, [rsp + 0x200]
call fcn.004010d4
nop
lea rcx, [rsp + 0x240]
call fcn.0040345c
nop
lea r8, [rsp + 0x260]
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0x200]
call fcn.00411350
mov r11b, byte [rsp + 0x264]
mov byte [0x0047b041], r11b
mov al, byte [rsp + 0x265]
mov byte [0x0047b051], al
lea rcx, [0x0047b048]
mov edi, 2
cmp dword [rsp + 0x518], 1
je 0x4543fe
mov rbx, r13
cmp dword [rsp + 0x518], edi
cmove rbx, rcx
mov qword [0x0047bcb8], rbx
jmp 0x454405
mov rbx, qword [0x0047bcb8]
lea rsi, [0x0047b038]
cmp dword [rsp + 0x51c], edi
je 0x45442b
mov rax, r13
cmp dword [rsp + 0x51c], 1
cmove rax, rsi
mov qword [0x0047bcc0], rax
mov r14, r13
mov eax, dword [rsp + 0x520]
cmp eax, r13d
je 0x454443
mov r14, rsi
cmp eax, edi
cmove r14, rcx
cmp byte [rsp + 0x260], r13b
je 0x4544fc
cmp rbx, r13
je 0x45447f
mov rdx, qword [rbx]
lea rcx, str._n7_Zip_21.07__x64__:_Copyright__c__1999_2021_Igor_Pavlov_:_2021_12_26_n
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rbx
call fcn.004024d8
mov rdx, qword [rbx]
lea rcx, str.Usage:_7z__command____switches_...___archive_name____file_names_...____listfile__n_n_Commands__n__a_:_Add_files_to_archive_n__b_:_Benchmark_n__d_:_Delete_files_from_archive_n__e_:_Extract_files_from_archive__without_using_directory_names__n__h_:_Calculate_hash_values_for_files_n__i_:_Show_information_about_supported_formats_n__l_:_List_contents_of_archive_n__rn_:_Rename_files_in_archive_n__t_:_Test_integrity_of_archive_n__u_:_Update_files_to_archive_n__x_:_eXtract_files_with_full_paths_n_n_Switches__n_____:_Stop_switches_and__listfile_parsing_n___ai_r__0___listfile_wildcard_:_Include_archives_n___ax_r__0___listfile_wildcard_:_eXclude_archives_n___aoastu_:_set_Overwrite_mode_n___an_:_disable_archive_name_field_n___bb_0_3__:_set_output_log_level_n___bd_:_disable_progress_indicator_n___bsoep012_:_set_output_stream_for_output_error_progress_line_n___bt_:_show_execution_time_statistics_n___i_r__0___listfile_wildcard_:_Include_filenames_n___mParameters_:_set_compression_Method_n_____mmt_N__:_set_number_of_CPU_threads_n_____mx_N__:_set_compression_level:__mx1__fastest__...__mx9__ultra__n___oDirectory_:_set_Output_directory_n___pPassword_:_set_Password_n___r__0__:_Recurse_subdirectories_for_name_search_n___saaes_:_set_Archive_name_mode_n___sccUTF_8WINDOS_:_set_charset_for_for_console_input_output_n___scsUTF_8UTF_16LEUTF_16BEWINDOSid_:_set_charset_for_list_files_n___scrc_CRC32CRC64SHA1SHA256__:_set_hash_function_for_x__e__h_commands_n___sdel_:_delete_files_after_compression_n___seml_.__:_send_archive_by_email_n___sfx_name__:_Create_SFX_archive_n___si_name__:_read_data_from_stdin_n___slp_:_set_Large_Pages_mode_n___slt_:_show_technical_information_for_l__List__command_n___snh_:_store_hard_links_as_links_n___snl_:_store_symbolic_links_as_links_n___sni_:_store_NT_security_information_n___sns____:_store_NTFS_alternate_streams_n___so_:_write_data_to_stdout_n___spd_:_disable_wildcard_matching_for_file_names_n___spe_:_eliminate_duplication_of_root_folder_for_extract_command_n___spf_:_use_fully_qualified_file_paths_n___ssc____:_set_sensitive_case_mode_n___sse_:_stop_archive_creating__if_it_cant_open_some_input_file_n___ssp_:_do_not_change_Last_Access_Time_of_source_files_while_archiving_n___ssw_:_compress_shared_files_n___stl_:_set_archive_timestamp_from_the_most_recently_modified_file_n___stmHexMask_:_set_CPU_thread_affinity_mask__hexadecimal_number__n___stxType_:_exclude_archive_type_n___tType_:_Set_type_of_archive_n___u____p__q__r__x__y__z___newArchiveName__:_Update_options_n___vSize_bkmg__:_Create_volumes_n___w_path__:_assign_Work_directory._Empty_path_means_a_temporary_directory_n___x_r__0___listfile_wildcard_:_eXclude_filenames_n___y_:_assume_Yes_on_all_queries_n
call qword [sym.imp.msvcrt.dll_fputs]
nop
mov rcx, qword [rsp + 0x240]
call sub.msvcrt.dll_free
lea rcx, [rsp + 0x200]
call fcn.0040182c
nop
lea rcx, [rsp + 0x260]
call fcn.00453bb8
nop
movsxd rbx, dword [rsp + 0xc0]
mov rdi, rbx
cmp ebx, r13d
je 0x4544e8
shl rdi, 3
add ebx, ebp
sub rdi, 8
mov rax, qword [rsp + 0xb8]
mov rsi, qword [rdi + rax]
cmp rsi, r13
je 0x4544e3
mov rcx, qword [rsi]
call sub.msvcrt.dll_free
mov rcx, rsi
call sub.msvcrt.dll_free
cmp ebx, r13d
jne 0x4544bc
mov rcx, qword [rsp + 0xb8]
call sub.msvcrt.dll_free
xor eax, eax
jmp 0x456571
cmp byte [rsp + 0x268], r13b
je 0x454544
cmp rbx, r13
je 0x45452a
mov rdx, qword [rbx]
lea rcx, str._n7_Zip_21.07__x64__:_Copyright__c__1999_2021_Igor_Pavlov_:_2021_12_26_n
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rbx
call fcn.004024d8
mov rbx, qword [0x0047bcb8]
cmp dword [rsp + 0x248], r13d
je 0x454544
mov rdx, qword [rsp + 0x240]
mov rcx, rbx
call fcn.004027a4
lea rdx, [rsp + 0x260]
lea rcx, [rsp + 0x200]
call fcn.00412b60
mov r11d, dword [rsp + 0x280]
mov rax, 0xffffffffffffffff
cmp r11d, eax
je 0x454582
mov dword [0x0047b044], r11d
mov dword [0x0047b054], r11d
mov dword [0x0047b034], r11d
mov dword [rsp + 0x8a0], 1
cmp dword [rsp + 0x524], r13d
je 0x4545a7
mov eax, dword [rsp + 0x518]
cmp dword [rsp + 0x520], eax
je 0x4545ae
mov dword [rsp + 0x8a0], edi
mov r15d, 0x50
cmp r14, r13
je 0x4545e3
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
lea rdx, [rsp + 0x90]
call qword [sym.imp.KERNEL32.dll_GetConsoleScreenBufferInfo]
cmp eax, r13d
je 0x4545e3
movsx r15d, word [rsp + 0x90]
mov ecx, 0x88
call fcn.00402308
mov qword [rsp + 0x8a8], rax
cmp rax, r13
je 0x454607
mov rcx, rax
call fcn.0045385c
mov rbp, rax
jmp 0x45460a
mov rbp, r13
mov qword [rsp + 0x118], r13
mov rcx, r13
mov qword [rsp + 0x120], r13
mov qword [rsp + 0x128], r13
mov dword [rsp + 0x130], r13d
mov dword [rsp + 0x134], r13d
mov qword [rsp + 0x138], r13
mov dword [rsp + 0x140], r13d
mov dword [rsp + 0x144], r13d
cmp rbp, r13
je 0x454681
mov rax, qword [rbp]
mov rcx, rbp
call qword [rax + VariantCopy]
mov rcx, qword [rsp + 0x118]
cmp rcx, r13
je 0x454679
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rsp + 0x120]
jmp 0x454681
mov rcx, qword [rsp + 0x120]
mov qword [rsp + 0x118], rbp
lea rdx, [rbp + 8]
mov rax, rbp
neg rax
sbb rbx, rbx
and rbx, rdx
je 0x4546ac
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + VariantCopy]
mov rcx, qword [rsp + 0x120]
cmp rcx, r13
je 0x4546b7
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rsp + 0x120], rbx
mov qword [rsp + 0x258], rbp
mov al, byte [rsp + 0x261]
mov byte [rbp + 0x80], al
mov al, byte [rsp + 0x262]
mov byte [rbp + 0x81], al
mov rcx, rbp
call fcn.00435960
cmp eax, r13d
je 0x45470a
mov dword [rsp + 0x8a0], eax
lea rdx, [0x00479b88]
lea rcx, [rsp + 0x8a0]
call sub.msvcrt.dll__CxxThrowException
int3
mov rcx, rbp
call fcn.0042dfe0
lea r11, [rsp + 0x118]
mov qword [0x0047bca8], r11
lea rcx, [rsp + 0x90]
call fcn.0040345c
nop
lea rdx, [rsp + 0x90]
mov rcx, rbp
call fcn.00434378
cmp dword [rsp + 0x98], r13d
je 0x45477e
mov rax, qword [0x0047bcb8]
mov rdi, rsi
cmp rax, r13
cmovne rdi, rax
mov rbx, qword [rsp + 0x90]
mov rcx, rdi
call fcn.004024d8
mov rdx, rbx
mov rcx, rdi
call fcn.004027a4
mov rcx, rax
call fcn.004024d8
nop
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_free
lea rcx, [rsp + 0x2b0]
call fcn.0041097c
mov dil, al
cmp dword [rbp + 0x58], r13d
jne 0x454840
cmp al, r13b
jne 0x4547c6
cmp dword [rsp + 0x2b0], 6
je 0x4547c6
lea rcx, [rsp + 0x2b0]
call fcn.00410988
cmp al, r13b
je 0x454840
cmp dword [rbp + 0x30], r13d
je 0x45481c
lea rdx, str.Cant_load_module:
lea rcx, [rsp + 0x90]
call fcn.00403510
nop
lea rdx, [rbp + 0x28]
lea rcx, [rsp + 0x90]
call fcn.004038d0
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0xc8]
call fcn.004035b8
lea rdx, [0x00479ad8]
lea rcx, [rsp + 0xc8]
call sub.msvcrt.dll__CxxThrowException
nop
lea rax, str.7_Zip_cannot_find_the_code_that_works_with_archives.
mov qword [rsp + 0x8a0], rax
lea rdx, [0x00479a20]
lea rcx, [rsp + 0x8a0]
call sub.msvcrt.dll__CxxThrowException
int3
mov qword [rsp + 0xf8], r13
mov dword [rsp + 0x100], r13d
mov dword [rsp + 0x104], r13d
lea r8, [rsp + 0xf8]
lea rdx, [rsp + 0x4f8]
mov rcx, rbp
call fcn.0043fa54
cmp al, r13b
jne 0x454899
lea rax, str.Unsupported_archive_type
mov qword [rsp + 0x8a0], rax
lea rdx, [0x00479a20]
lea rcx, [rsp + 0x8a0]
call sub.msvcrt.dll__CxxThrowException
int3
mov qword [rsp + 0x108], r13
mov dword [rsp + 0x110], r13d
mov dword [rsp + 0x114], r13d
mov ebx, r13d
cmp dword [rsp + 0x510], r13d
jbe 0x4549a4
xor eax, eax
mov qword [rsp + 0x90], rax
mov dword [rsp + 0x98], eax
mov dword [rsp + 0x9c], eax
mov rax, qword [rsp + 0x508]
lea r8, [rsp + 0x90]
mov rdx, qword [rax + r13]
mov rcx, rbp
call fcn.004340c0
test al, al
je 0x454980
cmp dword [rsp + 0x98], 1
jne 0x454980
mov r9, qword [rsp + 0x90]
mov r10d, dword [r9]
xor r8d, r8d
mov edx, dword [rsp + 0x110]
test edx, edx
je 0x454948
mov r11, qword [rsp + 0x108]
lea ecx, [rdx + r8]
shr ecx, 1
cmp r10d, dword [r11 + rcx*4]
je 0x454960
cmp r10d, dword [r11 + rcx*4]
jge 0x45493f
mov edx, ecx
jmp 0x454943
lea r8d, [rcx + 1]
cmp r8d, edx
jne 0x454929
mov r8d, r10d
lea rcx, [rsp + 0x108]
call fcn.0043779c
mov r9, qword [rsp + 0x90]
mov rcx, r9
call sub.msvcrt.dll_free
inc ebx
add r13, 8
cmp ebx, dword [rsp + 0x510]
jb 0x4548c2
xor r13d, r13d
jmp 0x4549a4
lea rax, str.Unsupported_archive_type
mov qword [rsp + 0x8a0], rax
lea rdx, [0x00479a20]
lea rcx, [rsp + 0x8a0]
call sub.msvcrt.dll__CxxThrowException
nop
cmp dil, r13b
jne 0x4549cd
lea rcx, [rsp + 0x2b0]
call fcn.00410988
cmp al, r13b
jne 0x4549cd
mov rax, qword [rsp + 0x2b0]
cmp eax, 9
je 0x4549cd
cmp eax, 7
jne 0x454a03
lea rcx, [rsp + 0x118]
call fcn.0040d650
cmp eax, r13d
je 0x4549fb
mov dword [rsp + 0x8a0], eax
lea rdx, [0x00479b88]
lea rcx, [rsp + 0x8a0]
call sub.msvcrt.dll__CxxThrowException
int3
mov rax, qword [rsp + 0x2b0]
mov dword [rsp + 0x8a8], r13d
mov dword [rsp + 0x8b8], r13d
cmp eax, 8
jne 0x4552cf
mov rax, qword [0x0047bcb8]
test rax, rax
cmovne rsi, rax
mov rcx, rsi
call fcn.004024d8
mov rdx, qword [rsi]
lea rcx, str.Libs:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.004024d8
xor edi, edi
cmp dword [rbp + 0x20], edi
jbe 0x454a96
xor r14d, r14d
mov edx, edi
mov rcx, rsi
call fcn.00451e5c
mov r11, qword [rbp + 0x18]
mov rax, qword [r14 + r11]
mov rbx, qword [rax + 8]
mov rdx, qword [rsi]
mov ecx, 0x20
call qword [sym.imp.msvcrt.dll_fputc]
mov rdx, rbx
mov rcx, rsi
call fcn.004027a4
mov rcx, rax
call fcn.004024d8
inc edi
add r14, 8
cmp edi, dword [rbp + 0x20]
jb 0x454a54
mov rcx, rsi
call fcn.004024d8
mov rdx, qword [rsi]
lea rcx, str.Formats:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.004024d8
lea rcx, str.KSNFMGOPBELHXC
call sub.msvcrt.dll_strlen
mov r15, rax
mov qword [rsp + 0xc8], rax
mov dword [rsp + 0x8a0], 0
cmp dword [rbp + 0x58], 0
jbe 0x454e0e
xor ecx, ecx
mov qword [rsp + 0xf0], rcx
lea r13d, [rcx + 0x20]
mov rax, qword [rbp + 0x50]
mov rdi, qword [rcx + rax]
mov edx, dword [rdi + 0x58]
mov rcx, rsi
call fcn.00451e5c
mov r11b, byte [rdi + 0x40]
neg r11b
sbb al, al
and al, 0x23
add al, r13b
movzx ecx, al
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
xor ebx, ebx
test r15d, r15d
je 0x454b4e
lea r14, str.KSNFMGOPBELHXC
bt dword [rdi], ebx
jae 0x454b35
mov al, byte [r14]
jmp 0x454b38
mov al, r13b
movzx ecx, al
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
inc ebx
inc r14
cmp ebx, r15d
jb 0x454b2b
mov rdx, qword [rsi]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_fputc]
mov ebx, dword [rdi + 0x20]
mov rdx, qword [rdi + 0x18]
mov rcx, rsi
call fcn.004027a4
cmp ebx, 8
jae 0x454b88
mov eax, 8
sub eax, ebx
mov ebx, eax
mov rdx, qword [rsi]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_fputc]
dec rbx
jne 0x454b77
mov rdx, qword [rsi]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_fputc]
lea rcx, [rsp + 0x90]
call fcn.0040345c
nop
xor ebx, ebx
cmp dword [rdi + 0x30], ebx
jbe 0x454c5e
xor r15d, r15d
test ebx, ebx
je 0x454bc1
lea rcx, [rsp + 0x90]
call fcn.00403cfc
mov rax, qword [rdi + 0x28]
mov r14, qword [r15 + rax]
mov rdx, r14
lea rcx, [rsp + 0x90]
call fcn.004038d0
cmp dword [r14 + 0x18], 0
je 0x454c4f
lea rdx, [0x00461700]
lea rcx, [rsp + 0x90]
call fcn.00403914
lea rdx, [r14 + 0x10]
lea rcx, [rsp + 0x90]
call fcn.004038d0
mov r11d, dword [rsp + 0x98]
cmp dword [rsp + 0x9c], r11d
jne 0x454c2c
lea rcx, [rsp + 0x90]
call fcn.00403240
mov r11d, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x90]
mov eax, r11d
mov word [rcx + rax*2], 0x29
inc r11d
mov word [rcx + r11*2], 0
mov dword [rsp + 0x98], r11d
inc ebx
add r15, 8
cmp ebx, dword [rdi + 0x30]
jb 0x454bb0
mov ebx, dword [rsp + 0x98]
mov rdx, qword [rsp + 0x90]
mov rcx, rsi
call fcn.004027a4
cmp ebx, 0xd
jae 0x454c94
mov eax, 0xd
sub eax, ebx
mov ebx, eax
mov rdx, qword [rsi]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_fputc]
dec rbx
jne 0x454c83
mov rdx, qword [rsi]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_fputc]
cmp dword [rdi + 0x44], 0
je 0x454ccd
mov rdx, qword [rsi]
lea rcx, str.offset
call qword [sym.imp.msvcrt.dll_fputs]
mov edx, dword [rdi + 0x44]
mov rcx, rsi
call fcn.00402620
mov rdx, qword [rax]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_fputc]
xor r15d, r15d
cmp dword [rdi + 0x50], r15d
jbe 0x454db7
xor r13d, r13d
test r15d, r15d
je 0x454cf2
mov rdx, qword [rsi]
lea rcx, str.__
call qword [sym.imp.msvcrt.dll_fputs]
mov rax, qword [rdi + 0x48]
mov rbx, qword [r13 + rax]
mov qword [rsp + 0x180], rbx
xor r14d, r14d
cmp qword [rbx + 8], r14
jbe 0x454da0
test r14, r14
je 0x454d23
mov rdx, qword [rsi]
mov ecx, 0x20
call qword [sym.imp.msvcrt.dll_fputc]
mov rax, qword [rbx]
mov cl, byte [rax + r14]
lea eax, [rcx - 0x21]
cmp al, 0x5e
ja 0x454d3f
movzx ecx, cl
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
jmp 0x454d93
movzx ebx, cl
mov r8d, ebx
shr r8d, 4
lea edx, [r8 + 0x30]
lea eax, [r8 + 0x37]
movzx ecx, al
movzx eax, dl
cmp r8d, 0xa
cmovb ecx, eax
movzx ecx, cl
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
and ebx, 0xf
lea edx, [rbx + 0x30]
lea eax, [rbx + 0x37]
movzx ecx, al
movzx eax, dl
cmp ebx, 0xa
cmovb ecx, eax
movzx ecx, cl
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
mov rbx, qword [rsp + 0x180]
inc r14
cmp r14, qword [rbx + 8]
jb 0x454d10
inc r15d
add r13, 8
cmp r15d, dword [rdi + 0x50]
jb 0x454cdd
mov r13d, 0x20
mov rcx, rsi
call fcn.004024d8
nop
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_free
mov r14d, dword [rsp + 0x8a0]
inc r14d
mov dword [rsp + 0x8a0], r14d
mov rcx, qword [rsp + 0xf0]
add rcx, 8
mov qword [rsp + 0xf0], rcx
cmp r14d, dword [rbp + 0x58]
mov r15, qword [rsp + 0xc8]
jb 0x454af0
mov r13d, dword [rsp + 0x8b8]
mov rcx, rsi
call fcn.004024d8
mov rdx, qword [rsi]
lea rcx, str.Codecs:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.004024d8
xor r15d, r15d
mov r14d, r15d
cmp dword [0x0047ba10], r15d
jbe 0x454f41
lea rdi, [0x0047b810]
mov rbx, qword [rdi]
mov rdx, qword [rsi]
lea rcx, [0x0045e2d0]
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsi]
mov ecx, 0x20
call qword [sym.imp.msvcrt.dll_fputc]
mov edx, dword [rbx + 0x20]
cmp edx, 1
jne 0x454e81
mov rdx, qword [rsi]
mov ecx, 0x20
call qword [sym.imp.msvcrt.dll_fputc]
jmp 0x454e89
mov rcx, rsi
call fcn.00402620
mov rax, qword [rbx + 8]
neg rax
sbb cl, cl
and cl, 0x25
add cl, 0x20
movzx ecx, cl
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
mov r11, qword [rbx]
neg r11
sbb al, al
and al, 0x24
add al, 0x20
movzx ecx, al
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
mov r11b, byte [rbx + 0x24]
neg r11b
sbb al, al
and al, 0x26
add al, 0x20
movzx ecx, al
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
mov rdx, qword [rsi]
mov ecx, 0x20
call qword [sym.imp.msvcrt.dll_fputc]
lea rdx, [rsp + 0x90]
mov rcx, qword [rbx + 0x10]
call fcn.00401c38
mov r8d, 8
lea rdx, [rsp + 0x90]
mov rcx, rsi
call fcn.00451e08
mov rdx, qword [rsi]
mov ecx, 0x20
call qword [sym.imp.msvcrt.dll_fputc]
mov rdx, qword [rsi]
mov rcx, qword [rbx + 0x18]
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.004024d8
inc r14d
add rdi, 8
cmp r14d, dword [0x0047ba10]
jb 0x454e48
mov rax, qword [rbp]
lea rdx, [rsp + 0x8b0]
mov rcx, rbp
call qword [rax + 0x18]
cmp eax, r15d
jne 0x4550e4
mov edi, r15d
cmp dword [rsp + 0x8b0], r15d
jbe 0x4550e4
mov r14d, 0x20
mov r13, 0xffffffffffffffff
mov edx, edi
mov rcx, rbp
call fcn.00433a5c
mov edx, eax
mov rcx, rsi
call fcn.00451e5c
mov edx, edi
mov rcx, rbp
call fcn.00433604
cmp eax, 1
jne 0x454fab
mov rdx, qword [rsi]
mov ecx, r14d
call qword [sym.imp.msvcrt.dll_fputc]
jmp 0x454fb5
mov edx, eax
mov rcx, rsi
call fcn.00402620
mov edx, edi
mov rcx, rbp
call fcn.00433a8c
neg al
sbb cl, cl
and cl, 0x25
add cl, r14b
movzx ecx, cl
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
mov edx, edi
mov rcx, rbp
call fcn.00433a78
neg al
sbb cl, cl
and cl, 0x24
add cl, r14b
movzx ecx, cl
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
lea r8, [rsp + 0x8a0]
mov edx, edi
mov rcx, rbp
call fcn.00433aa0
mov cl, byte [rsp + 0x8a0]
neg cl
sbb dl, dl
and dl, 0xf6
add dl, 0x2a
movzx ecx, dl
mov edx, 0x46
cmp al, r15b
cmovne ecx, edx
movzx ecx, cl
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
mov rdx, qword [rsi]
mov ecx, r14d
call qword [sym.imp.msvcrt.dll_fputc]
lea r8, [rsp + 0xf0]
mov edx, edi
mov rcx, rbp
call fcn.0043368c
mov rcx, qword [rsp + 0xf0]
cmp eax, r15d
cmovne rcx, r13
mov qword [rsp + 0xf0], rcx
lea rdx, [rsp + 0xc8]
call fcn.00401c38
mov r8d, 8
lea rdx, [rsp + 0xc8]
mov rcx, rsi
call fcn.00451e08
mov r8d, edi
lea rdx, [rsp + 0x90]
mov rcx, rbp
call fcn.00433714
mov rbx, qword [rax]
mov rdx, qword [rsi]
mov ecx, r14d
call qword [sym.imp.msvcrt.dll_fputc]
mov rdx, qword [rsi]
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.004024d8
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_free
inc edi
cmp edi, dword [rsp + 0x8b0]
jb 0x454f7a
mov r13d, dword [rsp + 0x8b8]
mov rcx, rsi
call fcn.004024d8
mov rdx, qword [rsi]
lea rcx, str.Hashers:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.004024d8
mov r14d, r15d
cmp dword [0x0047ba14], r15d
jbe 0x4551ce
lea rdi, [0x0047b790]
mov rbx, qword [rdi]
mov rdx, qword [rsi]
lea rcx, [0x0045e2d0]
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsi]
mov ecx, 0x20
call qword [sym.imp.msvcrt.dll_fputc]
lea rdx, [rsp + 0x90]
mov ecx, dword [rbx + 0x18]
call fcn.00401adc
mov r8d, 4
lea rdx, [rsp + 0x90]
mov rcx, rsi
call fcn.00451e08
mov rdx, qword [rsi]
mov ecx, 0x20
call qword [sym.imp.msvcrt.dll_fputc]
lea rdx, [rsp + 0xc8]
mov rcx, qword [rbx + 8]
call fcn.00401c38
mov r8d, 8
lea rdx, [rsp + 0xc8]
mov rcx, rsi
call fcn.00451e08
mov rdx, qword [rsi]
mov ecx, 0x20
call qword [sym.imp.msvcrt.dll_fputc]
mov rdx, qword [rsi]
mov rcx, qword [rbx + 0x10]
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.004024d8
inc r14d
add rdi, 8
cmp r14d, dword [0x0047ba14]
jb 0x45511b
lea rcx, [rbp + 8]
mov rax, qword [rcx]
call qword [rax + 0x18]
mov dword [rsp + 0x8b0], eax
mov edi, r15d
cmp eax, r15d
jbe 0x456451
mov r14d, 0x20
mov edx, edi
mov rcx, rbp
call fcn.00433a6c
mov edx, eax
mov rcx, rsi
call fcn.00451e5c
mov edx, edi
mov rcx, rbp
call fcn.0043394c
lea rdx, [rsp + 0x90]
mov ecx, eax
call fcn.00401adc
mov r8d, 4
lea rdx, [rsp + 0x90]
mov rcx, rsi
call fcn.00451e08
mov rdx, qword [rsi]
mov ecx, r14d
call qword [sym.imp.msvcrt.dll_fputc]
mov edx, edi
mov rcx, rbp
call fcn.004337ec
lea rdx, [rsp + 0x180]
mov rcx, rax
call fcn.00401c38
mov r8d, 8
lea rdx, [rsp + 0x180]
mov rcx, rsi
call fcn.00451e08
mov r8d, edi
lea rdx, [rsp + 0xc8]
mov rcx, rbp
call fcn.00433864
mov rbx, qword [rax]
mov rdx, qword [rsi]
mov ecx, r14d
call qword [sym.imp.msvcrt.dll_fputc]
mov rdx, qword [rsi]
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.004024d8
mov rcx, qword [rsp + 0xc8]
call sub.msvcrt.dll_free
inc edi
cmp edi, dword [rsp + 0x8b0]
jb 0x4551f1
mov r14d, dword [rsp + 0x8a8]
jmp 0x456459
cmp eax, 7
jne 0x455343
mov rax, qword [0x0047bcb8]
xor r15d, r15d
cmp rax, r15
cmovne rsi, rax
mov r9, qword [rsi]
mov r8d, dword [rsp + 0x528]
lea rdx, [rsp + 0x330]
lea rcx, [rsp + 0x118]
call fcn.0044b85c
mov r13d, eax
cmp eax, 1
jne 0x456447
mov rcx, rsi
call fcn.004024d8
mov rdx, qword [0x0047bcc0]
cmp rdx, r15
je 0x455335
mov rdx, qword [rdx]
lea rcx, str._nDecoding_ERROR_n
call qword [sym.imp.msvcrt.dll_fputs]
mov r14d, 2
mov r13d, r15d
jmp 0x456459
xor r13d, r13d
cmp dil, r13b
jne 0x4558d4
cmp eax, 6
je 0x4558d4
lea rcx, [rsp + 0x2b0]
call fcn.00410988
cmp al, r13b
je 0x45568f
cmp byte [rsp + 0x454], r13b
je 0x455396
cmp dword [rsp + 0x460], r13d
jne 0x455396
lea rdx, str.7zCon.sfx
lea rcx, [rsp + 0x458]
call fcn.004037bc
lea rax, [0x00462570]
mov qword [rsp + 0x530], rax
mov edx, 0xc8
lea rcx, [rsp + 0x538]
call fcn.0044ea44
nop
mov byte [rsp + 0x620], r13b
mov qword [rsp + 0x628], r13
mov byte [rsp + 0x630], r13b
mov byte [rsp + 0x631], r13b
lea rcx, [rsp + 0x638]
call fcn.0040345c
nop
mov rax, qword [0x0047bcb8]
mov qword [rsp + 0x610], rax
mov rax, qword [0x0047bcc0]
mov qword [rsp + 0x618], rax
mov qword [rsp + 0x600], r14
cmp byte [rsp + 0x2c8], r13b
je 0x455424
cmp dword [rsp + 0x2d8], r13d
je 0x455424
mov bl, 1
jmp 0x455427
mov bl, r13b
mov byte [rsp + 0x631], bl
lea rdx, [rsp + 0x2d0]
lea rcx, [rsp + 0x638]
call fcn.004036a8
lea rcx, [rsp + 0x650]
call fcn.00453398
nop
mov eax, dword [rsp + 0x524]
mov dword [rsp + 0x750], eax
mov eax, dword [rsp + 0x8a0]
mov dword [rsp + 0x74c], eax
cmp r14, r13
je 0x45547d
lea eax, [r15 - 1]
mov dword [rsp + 0x734], eax
mov byte [rsp + 0x7c1], bl
xor r15d, r15d
cmp byte [rsp + 0x2c8], r15b
je 0x4554a5
cmp dword [rsp + 0x2d8], r15d
jne 0x4554a5
mov byte [rsp + 0x7d8], 1
jmp 0x4554ad
mov byte [rsp + 0x7d8], r15b
lea rdx, [rsp + 0x2d0]
lea rcx, [rsp + 0x7c8]
call fcn.004036a8
mov r11b, byte [rsp + 0x480]
mov byte [rsp + 0x748], r11b
mov r9, r14
mov r8, qword [0x0047bcc0]
mov rdx, qword [0x0047bcb8]
lea rcx, [rsp + 0x660]
call fcn.004524c8
mov dword [rsp + 0x90], r15d
lea rcx, [rsp + 0x98]
call fcn.00402d6c
mov qword [rsp + 0xa8], r15
mov dword [rsp + 0xb0], r15d
mov dword [rsp + 0xb4], r15d
mov byte [rsp + 0x40], 1
lea rax, [rsp + 0x650]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x530]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x90]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x388]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x288]
lea r8, [rsp + 0x2b8]
lea rdx, [rsp + 0xf8]
mov rcx, rbp
call fcn.00444c04
mov r13d, eax
cmp qword [rsp + 0x728], r15
je 0x455592
mov dl, 1
lea rcx, [rsp + 0x660]
call fcn.004570c0
mov r9, qword [0x0047bcb8]
mov rax, r9
cmp r9, r15
cmove rax, qword [0x0047bcc0]
mov byte [rsp + 0x28], 1
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x90]
lea rdx, [rsp + 0x660]
mov ecx, r13d
call fcn.004527a4
mov r14d, eax
movsxd rbx, dword [rsp + 0xb0]
mov rdi, rbx
cmp ebx, r15d
je 0x45560d
shl rdi, 3
add ebx, 0xffffffff
sub rdi, 8
mov rcx, qword [rsp + 0xa8]
mov rsi, qword [rcx + rdi]
cmp rsi, r15
je 0x455608
mov rcx, qword [rsi]
call sub.msvcrt.dll_free
mov rcx, rsi
call sub.msvcrt.dll_free
cmp ebx, r15d
jne 0x4555e0
mov rcx, qword [rsp + 0xa8]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x98]
call sub.msvcrt.dll_free
nop
lea rax, [0x00463d30]
mov qword [rsp + 0x650], rax
lea rax, [0x00463d20]
mov qword [rsp + 0x658], rax
mov rcx, qword [rsp + 0x7c8]
call sub.msvcrt.dll_free
lea rcx, [rsp + 0x660]
call fcn.00452558
nop
lea rax, [0x00462570]
mov qword [rsp + 0x530], rax
mov rcx, qword [rsp + 0x638]
call sub.msvcrt.dll_free
lea rcx, [rsp + 0x538]
call fcn.00457208
jmp 0x456459
cmp dword [rsp + 0x2b0], 9
jne 0x455878
lea rcx, [rsp + 0x650]
call fcn.004534bc
nop
cmp r14, r13
je 0x4556bb
lea eax, [r15 - 1]
mov dword [rsp + 0x72c], eax
mov r9, r14
mov r8, qword [0x0047bcc0]
mov rdx, qword [0x0047bcb8]
lea rcx, [rsp + 0x658]
call fcn.004524c8
mov r11b, byte [rsp + 0x268]
mov byte [rsp + 0x7d9], r11b
lea rdx, [rsp + 0x270]
lea rcx, [rsp + 0x7e0]
call fcn.00402e80
lea rcx, [rsp + 0x90]
call fcn.00402d6c
nop
lea rax, [rsp + 0x650]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x90]
lea r8, [rsp + 0x4d8]
lea rdx, [rsp + 0x288]
lea rcx, [rsp + 0x118]
call fcn.0042edf0
mov r13d, eax
xor r15d, r15d
mov dword [rsp + 0xc8], r15d
lea rcx, [rsp + 0xd0]
call fcn.00402d6c
mov qword [rsp + 0xe0], r15
mov dword [rsp + 0xe8], r15d
mov dword [rsp + 0xec], r15d
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0xd0]
call fcn.00402e80
mov r9, qword [0x0047bcb8]
mov rcx, r9
cmp r9, r15
cmove rcx, qword [0x0047bcc0]
mov al, byte [rsp + 0x268]
mov byte [rsp + 0x28], al
mov qword [rsp + 0x20], rcx
lea r8, [rsp + 0xc8]
lea rdx, [rsp + 0x658]
mov ecx, r13d
call fcn.004527a4
mov r14d, eax
movsxd rbx, dword [rsp + 0xe8]
mov rdi, rbx
cmp ebx, r15d
je 0x455807
shl rdi, 3
add ebx, 0xffffffff
sub rdi, 8
mov rax, qword [rsp + 0xe0]
mov rsi, qword [rax + rdi]
cmp rsi, r15
je 0x455802
mov rcx, qword [rsi]
call sub.msvcrt.dll_free
mov rcx, rsi
call sub.msvcrt.dll_free
cmp ebx, r15d
jne 0x4557da
mov rcx, qword [rsp + 0xe0]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0xd0]
call sub.msvcrt.dll_free
nop
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_free
nop
lea rax, [0x00463a50]
mov qword [rsp + 0x650], rax
mov rcx, qword [rsp + 0x7e0]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x7c8]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x7b8]
call sub.msvcrt.dll_free
lea rcx, [rsp + 0x658]
call fcn.00452558
jmp 0x456459
mov rbx, qword [0x0047bcc0]
cmp rbx, r13
je 0x4558b4
mov rcx, rbx
call fcn.004024d8
mov rdx, qword [rbx]
lea rcx, [0x004616c8]
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rbx]
lea rcx, str.Incorrect_command_line
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rbx
call fcn.004024d8
mov dword [rsp + 0x8a0], 7
lea rdx, [0x00479b30]
lea rcx, [rsp + 0x8a0]
call sub.msvcrt.dll__CxxThrowException
int3
mov qword [rsp + 0x90], r13
mov dword [rsp + 0x98], r13d
mov dword [rsp + 0x9c], r13d
mov qword [rsp + 0xc8], r13
mov dword [rsp + 0xd0], r13d
mov dword [rsp + 0xd4], r13d
cmp byte [rsp + 0x266], r13b
je 0x45598c
mov ebx, 0x10
mov rcx, rbx
call fcn.00402308
mov qword [rsp + 0x8b0], rax
cmp rax, r13
je 0x45593a
lea rdx, [rsp + 0x320]
mov rcx, rax
call fcn.004035b8
jmp 0x45593d
mov rax, r13
mov rdx, rax
lea rcx, [rsp + 0x90]
call fcn.0040d02c
mov rcx, rbx
call fcn.00402308
mov qword [rsp + 0x8b0], rax
cmp rax, r13
je 0x455974
lea rdx, [rsp + 0x320]
mov rcx, rax
call fcn.004035b8
jmp 0x455977
mov rax, r13
mov rdx, rax
lea rcx, [rsp + 0xc8]
call fcn.0040d02c
jmp 0x455b12
lea rax, [0x00463748]
mov qword [rsp + 0x530], rax
mov edx, 0xc8
lea rcx, [rsp + 0x548]
call fcn.0044ea44
nop
mov dl, byte [rsp + 0x268]
mov al, dl
neg al
sbb rcx, rcx
mov rbx, qword [0x0047bcb8]
and rcx, rbx
mov qword [rsp + 0x538], rcx
mov rax, qword [0x0047bcc0]
mov qword [rsp + 0x540], rax
mov qword [rsp + 0x610], r14
lea eax, [r15 - 1]
mov dword [rsp + 0x61c], eax
cmp rbx, r13
je 0x455a12
cmp dl, r13b
je 0x455a12
mov rdx, qword [rbx]
lea rcx, str.Scanning_the_drive_for_archives:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rbx
call fcn.004024d8
mov qword [rsp + 0x148], r13
mov qword [rsp + 0x150], r13
mov qword [rsp + 0x158], r13
mov qword [rsp + 0x160], r13
mov qword [rsp + 0x168], r13
mov qword [rsp + 0x170], r13
lea rcx, [rsp + 0x530]
call fcn.0044b960
lea rcx, [rsp + 0x180]
call fcn.0040345c
nop
lea rcx, [rsp + 0x530]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x148]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0xc8]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x90]
mov r8, rax
xor edx, edx
lea rcx, [rsp + 0x2f8]
call fcn.00428224
mov r13d, eax
mov rcx, qword [rsp + 0x180]
call sub.msvcrt.dll_free
cmp qword [rsp + 0x610], 0
je 0x455ac8
mov dl, 1
lea rcx, [rsp + 0x548]
call fcn.004570c0
test r13d, r13d
jne 0x455aed
cmp byte [rsp + 0x268], r13b
je 0x455aed
lea rdx, [rsp + 0x148]
lea rcx, [rsp + 0x530]
call fcn.0044bd78
nop
lea rax, [0x00463748]
mov qword [rsp + 0x530], rax
lea rcx, [rsp + 0x548]
call fcn.00457208
test r13d, r13d
jne 0x456393
cmp dil, r13b
je 0x4561fc
mov ecx, 0x1c8
call fcn.00402308
mov qword [rsp + 0x8b0], rax
cmp rax, r13
je 0x455b3f
mov rcx, rax
call fcn.00452f64
mov rdi, rax
jmp 0x455b42
mov rdi, r13
mov qword [rsp + 0x8b0], rdi
cmp rdi, r13
je 0x455b59
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + VariantCopy]
nop
mov al, byte [rsp + 0x2c8]
mov byte [rdi + 0x119], al
lea rcx, [rdi + 0x120]
lea rdx, [rsp + 0x2d0]
call fcn.004036a8
mov r11, qword [0x0047bcc0]
lea rbx, [rdi + 0x18]
mov rax, qword [0x0047bcb8]
mov qword [rbx + 0xe0], rax
mov qword [rbx + 0xe8], r11
mov qword [rbx + 0xd0], r14
mov qword [rdi + 0x168], r13
mov byte [rdi + 0x170], r13b
mov byte [rdi + 0x171], r13b
mov qword [rdi + 0x178], r13
mov qword [rdi + 0x180], r13
mov qword [rdi + 0x188], r13
mov qword [rdi + 0x190], r13
mov qword [rdi + 0x198], r13
mov qword [rdi + 0x1a0], r13
mov qword [rdi + 0x1a8], r13
mov qword [rdi + 0x1b0], r13
cmp dword [rsp + 0x98], 1
seta al
mov byte [rdi + 0x118], al
mov eax, dword [rsp + 0x524]
mov dword [rdi + 0x1c0], eax
mov eax, dword [rsp + 0x8a0]
mov dword [rdi + 0x1bc], eax
cmp r14, r13
je 0x455c28
lea eax, [r15 - 1]
mov dword [rdi + 0xf4], eax
lea rcx, [rsp + 0x1a0]
call fcn.00451cf0
xor r15d, r15d
mov byte [rsp + 0x1e0], r15b
mov byte [rsp + 0x1e1], r15b
mov byte [rsp + 0x1e2], r15b
mov byte [rsp + 0x1e3], r15b
mov qword [rsp + 0x1e8], r15
mov dword [rsp + 0x1f0], r15d
mov dword [rsp + 0x1f4], r15d
lea rdx, [rsp + 0x340]
lea rcx, [rsp + 0x1a0]
call fcn.004523bc
mov r11b, byte [rsp + 0x266]
mov byte [rsp + 0x1e0], r11b
mov al, byte [rsp + 0x267]
mov byte [rsp + 0x1e1], al
mov al, byte [rsp + 0x269]
mov byte [rsp + 0x1e2], al
cmp dword [rsp + 0x2b0], 3
sete byte [rsp + 0x1e3]
lea rdx, [rsp + 0x330]
lea rcx, [rsp + 0x1e8]
call fcn.00410b74
lea rcx, [rsp + 0x180]
call fcn.0040345c
nop
lea rcx, [rsp + 0x7f0]
call fcn.0042cdf4
nop
mov r14, r15
cmp dword [rsp + 0x2e8], r15d
je 0x455d45
lea r14, [rsp + 0x7f0]
lea r8, [rsp + 0x2e0]
lea rdx, [rsp + 0x118]
lea rcx, [rsp + 0x7f0]
call fcn.0042e368
cmp eax, r15d
je 0x455d45
mov dword [rsp + 0x8a0], eax
lea rdx, [0x00479b88]
lea rcx, [rsp + 0x8a0]
call sub.msvcrt.dll__CxxThrowException
int3
mov rax, qword [rsp + 0x288]
mov rcx, qword [rax]
add rcx, 0x10
lea rax, [rsp + 0x148]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x180]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], rbx
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rcx
lea rax, [rsp + 0xc8]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x90]
lea r8, [rsp + 0x108]
lea rdx, [rsp + 0xf8]
mov rcx, rbp
call fcn.00429e4c
mov r13d, eax
cmp qword [rbx + 0xd0], r15
je 0x455dd3
lea rcx, [rbx + 8]
mov dl, 1
call fcn.004570c0
cmp dword [rsp + 0x188], r15d
je 0x455e30
mov rsi, qword [0x0047bcc0]
cmp rsi, r15
je 0x455e24
mov rbx, qword [rsp + 0x180]
mov rcx, rsi
call fcn.004024d8
mov rdx, qword [rsi]
lea rcx, str.ERROR:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.004024d8
mov rdx, rbx
mov rcx, rsi
call fcn.004027a4
mov rcx, rax
call fcn.004024d8
mov eax, 0x80004005
cmp r13d, r15d
cmove r13d, eax
mov rsi, qword [0x0047bcb8]
mov bl, r15b
cmp rsi, r15
je 0x455e9f
mov rcx, rsi
call fcn.004024d8
cmp qword [rdi + 0x168], 1
jbe 0x455e9f
mov rdx, qword [rsi]
lea rcx, str.Archives:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rdi + 0x168]
mov rcx, rsi
call fcn.00402650
mov rcx, rax
call fcn.004024d8
mov rdx, qword [rsi]
lea rcx, str.OK_archives:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rdi + 0x178]
mov rcx, rsi
call fcn.00402650
mov rcx, rax
call fcn.004024d8
cmp qword [rdi + 0x180], r15
je 0x455ed6
mov bl, 1
cmp rsi, r15
je 0x455ed6
mov rdx, qword [rsi]
lea rcx, str.Cant_open_as_archive:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rdi + 0x180]
mov rcx, rsi
call fcn.00402650
mov rcx, rax
call fcn.004024d8
cmp qword [rdi + 0x188], r15
je 0x455f11
mov bl, 1
cmp rsi, r15
je 0x455f87
mov rdx, qword [rsi]
lea rcx, str.Archives_with_Errors:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rdi + 0x188]
mov rcx, rsi
call fcn.00402650
mov rcx, rax
call fcn.004024d8
cmp rsi, r15
je 0x455f87
cmp qword [rdi + 0x190], r15
je 0x455f46
mov rdx, qword [rsi]
lea rcx, str.Archives_with_Warnings:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rdi + 0x190]
mov rcx, rsi
call fcn.00402650
mov rcx, rax
call fcn.004024d8
cmp qword [rdi + 0x1a0], r15
je 0x455f87
mov rcx, rsi
call fcn.004024d8
cmp qword [rdi + 0x1a0], r15
je 0x455f87
mov rdx, qword [rsi]
lea rcx, str.Warnings:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rdi + 0x1a0]
mov rcx, rsi
call fcn.00402650
mov rcx, rax
call fcn.004024d8
cmp qword [rdi + 0x198], r15
je 0x455fcf
mov bl, 1
cmp rsi, r15
je 0x455fd4
mov rcx, rsi
call fcn.004024d8
cmp qword [rdi + 0x198], r15
je 0x455fd4
mov rdx, qword [rsi]
lea rcx, str.Open_Errors:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rdi + 0x198]
mov rcx, rsi
call fcn.00402650
mov rcx, rax
call fcn.004024d8
cmp bl, r15b
je 0x455fdf
mov dword [rsp + 0x8a8], 2
cmp rsi, r15
je 0x456193
cmp qword [rdi + 0x188], r15
jne 0x45615a
cmp qword [rdi + 0x1a8], r15
jne 0x45615a
cmp r13d, r15d
jne 0x456193
mov rax, qword [rsp + 0x168]
cmp rax, r15
je 0x456048
mov rdx, qword [rsi]
lea rcx, str.Folders:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x168]
mov rcx, rsi
call fcn.00402650
mov rcx, rax
call fcn.004024d8
mov rax, qword [rsp + 0x168]
cmp qword [rsp + 0x170], 1
jne 0x456066
cmp rax, r15
jne 0x456066
cmp qword [rsp + 0x178], r15
je 0x4560e8
mov rdx, qword [rsi]
lea rcx, str.Files:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x170]
mov rcx, rsi
call fcn.00402650
mov rcx, rax
call fcn.004024d8
cmp qword [rsp + 0x178], r15
je 0x4560e8
mov rdx, qword [rsi]
lea rcx, str.Alternate_Streams:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x178]
mov rcx, rsi
call fcn.00402650
mov rcx, rax
call fcn.004024d8
mov rdx, qword [rsi]
lea rcx, str.Alternate_Streams_Size:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x158]
mov rcx, rsi
call fcn.00402650
mov rcx, rax
call fcn.004024d8
mov rdx, qword [rsi]
lea rcx, str.Size:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x150]
mov rcx, rsi
call fcn.00402650
mov rbx, rax
mov rcx, rax
call fcn.004024d8
mov rdx, qword [rbx]
lea rcx, str.Compressed:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x160]
mov rcx, rbx
call fcn.00402650
mov rcx, rax
call fcn.004024d8
cmp r14, r15
je 0x456193
mov rcx, rsi
call fcn.004024d8
lea rdx, [rsp + 0x7f0]
mov rcx, rsi
call fcn.0044e080
jmp 0x456193
mov rcx, rsi
call fcn.004024d8
cmp qword [rdi + 0x1a8], r15
je 0x456193
mov rdx, qword [rsi]
lea rcx, str.Sub_items_Errors:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rdi + 0x1a8]
mov rcx, rsi
call fcn.00402650
mov rcx, rax
call fcn.004024d8
nop
lea rax, fcn.0042c748
mov qword [rsp + 0x7f0], rax
mov rcx, qword [rsp + 0x850]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x840]
call sub.msvcrt.dll_free
lea rcx, [rsp + 0x7f8]
call fcn.0042cb08
nop
mov rcx, qword [rsp + 0x180]
call sub.msvcrt.dll_free
nop
lea rcx, [rsp + 0x1a0]
call fcn.0045359c
nop
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x10]
mov r14d, dword [rsp + 0x8a8]
jmp 0x4563a8
xor r15d, r15d
mov qword [rsp + 0x8b8], r15
mov qword [rsp + 0x8b0], r15
mov al, byte [rsp + 0x298]
mov byte [rsp + 0x8a0], al
mov al, byte [rsp + 0x299]
mov byte [rsp + 0x8a1], al
mov rax, qword [rsp + 0x288]
mov rcx, qword [rax]
add rcx, 0x10
lea rax, [rsp + 0x8b0]
mov qword [rsp + 0x80], rax
lea rax, [rsp + 0x8b8]
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x330]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x2d0]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0x2c8]
mov qword [rsp + 0x60], rax
mov al, byte [rsp + 0x26b]
mov byte [rsp + 0x58], al
mov al, byte [rsp + 0x268]
mov byte [rsp + 0x50], al
mov qword [rsp + 0x48], rcx
mov al, byte [rsp + 0x382]
mov byte [rsp + 0x40], al
mov al, byte [rsp + 0x368]
mov byte [rsp + 0x38], al
lea rax, [rsp + 0xc8]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x90]
mov qword [rsp + 0x28], rax
mov al, byte [rsp + 0x266]
mov byte [rsp + 0x20], al
lea r9, [rsp + 0x108]
lea r8, [rsp + 0xf8]
mov rdx, rbp
lea rcx, [rsp + 0x8a0]
call fcn.00450100
mov r13d, eax
mov al, byte [rsp + 0x268]
cmp al, r15b
je 0x456348
cmp qword [rsp + 0x8b0], r15
jbe 0x456348
mov rcx, rsi
call fcn.004024d8
mov rdx, qword [0x0047b038]
lea rcx, str.Warnings:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x8b0]
mov rcx, rsi
call fcn.00402650
mov rcx, rax
call fcn.004024d8
mov al, byte [rsp + 0x268]
cmp qword [rsp + 0x8b8], r15
jbe 0x4563a0
cmp al, r15b
je 0x45638b
mov rcx, rsi
call fcn.004024d8
mov rdx, qword [0x0047b038]
lea rcx, str.Errors:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x8b8]
mov rcx, rsi
call fcn.00402650
mov rcx, rax
call fcn.004024d8
mov r14d, 2
jmp 0x4563a8
mov r14d, dword [rsp + 0x8a8]
xor r15d, r15d
jmp 0x4563a8
mov r14d, dword [rsp + 0x8a8]
movsxd rbx, dword [rsp + 0xd0]
mov rdi, rbx
cmp ebx, r15d
je 0x4563e9
shl rdi, 3
add ebx, 0xffffffff
sub rdi, 8
mov rax, qword [rsp + 0xc8]
mov rsi, qword [rax + rdi]
cmp rsi, r15
je 0x4563e4
mov rcx, qword [rsi]
call sub.msvcrt.dll_free
mov rcx, rsi
call sub.msvcrt.dll_free
cmp ebx, r15d
jne 0x4563bc
mov rcx, qword [rsp + 0xc8]
call sub.msvcrt.dll_free
nop
movsxd rbx, dword [rsp + 0x98]
mov rdi, rbx
cmp ebx, r15d
je 0x456438
shl rdi, 3
add ebx, 0xffffffff
sub rdi, 8
mov rax, qword [rsp + 0x90]
mov rsi, qword [rax + rdi]
cmp rsi, r15
je 0x456433
mov rcx, qword [rsi]
call sub.msvcrt.dll_free
mov rcx, rsi
call sub.msvcrt.dll_free
cmp ebx, r15d
jne 0x45640b
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_free
jmp 0x456459
mov r14d, dword [rsp + 0x8a8]
jmp 0x456459
mov r14d, dword [rsp + 0x8a8]
cmp byte [rsp + 0x26c], r15b
je 0x456471
cmp qword [0x0047bcb8], r15
je 0x456471
call fcn.004520f8
cmp r13d, r15d
je 0x456493
mov dword [rsp + 0x8a0], r13d
lea rdx, [0x00479b88]
lea rcx, [rsp + 0x8a0]
call sub.msvcrt.dll__CxxThrowException
nop
mov rcx, qword [rsp + 0x108]
call sub.msvcrt.dll_free
nop
movsxd rbx, dword [rsp + 0x100]
mov rdi, rbx
cmp ebx, r15d
je 0x4564d2
shl rdi, 3
add ebx, 0xffffffff
sub rdi, 8
mov rax, qword [rsp + 0xf8]
mov rcx, qword [rdi + rax]
call sub.msvcrt.dll_free
cmp ebx, r15d
jne 0x4564b5
mov rcx, qword [rsp + 0xf8]
call sub.msvcrt.dll_free
nop
mov rcx, rbp
call fcn.00434cb4
nop
lea rcx, [rsp + 0x118]
call fcn.00452c58
nop
mov rcx, qword [rsp + 0x240]
call sub.msvcrt.dll_free
lea rcx, [rsp + 0x200]
call fcn.0040182c
nop
lea rcx, [rsp + 0x260]
call fcn.00453bb8
nop
movsxd rbx, dword [rsp + 0xc0]
mov rdi, rbx
cmp ebx, r15d
je 0x456561
shl rdi, 3
add ebx, 0xffffffff
sub rdi, 8
mov rax, qword [rsp + 0xb8]
mov rsi, qword [rdi + rax]
cmp rsi, r15
je 0x45655c
mov rcx, qword [rsi]
call sub.msvcrt.dll_free
mov rcx, rsi
call sub.msvcrt.dll_free
cmp ebx, r15d
jne 0x456534
mov rcx, qword [rsp + 0xb8]
call sub.msvcrt.dll_free
mov eax, r14d
add rsp, 0x860
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbp
pop rbx
ret