Function at 0x45812c
Capabilities:
Accept command line arguments

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x868
mov qword [rsp + 0x268], 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.00403560
nop
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0x90]
call fcn.004011b8
nop
mov rcx, qword [rsp + 0x90]
call fcn.00402364
mov ebp, 0xffffffff
mov ebx, dword [rsp + 0xc0]
cmp ebx, r13d
jbe 0x458208
mov rcx, qword [rsp + 0xb8]
mov rdi, qword [rcx]
cmp rdi, r13
je 0x4581e7
mov rcx, qword [rdi]
call fcn.00402364
mov rcx, rdi
call fcn.00402364
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 0x45829d
mov rdi, qword [0x00480d38]
cmp rdi, r13
je 0x45824c
mov rdx, qword [rdi]
lea rcx, str._n7_Zip_24.01__x64__:_Copyright__c__1999_2024_Igor_Pavlov_:_2024_01_31_n
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rdi
call fcn.0040247c
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___m__2___w_____listfile_wildcard_:_Include_archives_n___ax_r__0___m__2___w_____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___m__2___w_____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_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_2__:_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___m__2___w_____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 0x458289
shl rdi, 3
mov r12d, 8
add ebx, ebp
sub rdi, r12
mov rax, qword [rsp + 0xb8]
mov rsi, qword [rdi + rax]
cmp rsi, r13
je 0x458284
mov rcx, qword [rsi]
call fcn.00402364
mov rcx, rsi
call fcn.00402364
cmp ebx, r13d
jne 0x45825e
mov rcx, qword [rsp + 0xb8]
call fcn.00402364
xor eax, eax
jmp 0x45a51b
lea rcx, [rsp + 0x270]
call fcn.00457dfc
nop
lea rcx, [rsp + 0x210]
call fcn.004010d4
nop
lea rcx, [rsp + 0x250]
call fcn.004034f4
nop
lea r8, [rsp + 0x270]
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0x210]
call fcn.00413690
mov r11b, byte [rsp + 0x274]
mov byte [0x00480058], r11b
mov al, byte [rsp + 0x275]
mov byte [0x00480068], al
lea rcx, [0x00480060]
mov edi, 2
cmp dword [rsp + 0x520], 1
je 0x45832d
mov rbx, r13
cmp dword [rsp + 0x520], edi
cmove rbx, rcx
mov qword [0x00480d38], rbx
jmp 0x458334
mov rbx, qword [0x00480d38]
lea rsi, [0x00480050]
cmp dword [rsp + 0x524], edi
je 0x45835a
mov rax, r13
cmp dword [rsp + 0x524], 1
cmove rax, rsi
mov qword [0x00480d40], rax
mov r14, r13
mov eax, dword [rsp + 0x528]
cmp eax, r13d
je 0x458372
mov r14, rsi
cmp eax, edi
cmove r14, rcx
cmp byte [rsp + 0x270], r13b
je 0x458430
cmp rbx, r13
je 0x4583ae
mov rdx, qword [rbx]
lea rcx, str._n7_Zip_24.01__x64__:_Copyright__c__1999_2024_Igor_Pavlov_:_2024_01_31_n
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rbx
call fcn.0040247c
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___m__2___w_____listfile_wildcard_:_Include_archives_n___ax_r__0___m__2___w_____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___m__2___w_____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_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_2__:_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___m__2___w_____listfile_wildcard_:_eXclude_filenames_n___y_:_assume_Yes_on_all_queries_n
call qword [sym.imp.msvcrt.dll_fputs]
nop
mov rcx, qword [rsp + 0x250]
call fcn.00402364
lea rcx, [rsp + 0x210]
call fcn.0040186c
nop
lea rcx, [rsp + 0x270]
call fcn.00457af0
nop
movsxd rbx, dword [rsp + 0xc0]
mov rdi, rbx
cmp ebx, r13d
je 0x45841c
shl rdi, 3
mov r12d, 8
add ebx, ebp
sub rdi, r12
mov rax, qword [rsp + 0xb8]
mov rsi, qword [rdi + rax]
cmp rsi, r13
je 0x458417
mov rcx, qword [rsi]
call fcn.00402364
mov rcx, rsi
call fcn.00402364
cmp ebx, r13d
jne 0x4583f1
mov rcx, qword [rsp + 0xb8]
call fcn.00402364
xor eax, eax
jmp 0x45a51b
cmp byte [rsp + 0x278], r13b
je 0x458478
cmp rbx, r13
je 0x45845e
mov rdx, qword [rbx]
lea rcx, str._n7_Zip_24.01__x64__:_Copyright__c__1999_2024_Igor_Pavlov_:_2024_01_31_n
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rbx
call fcn.0040247c
mov rbx, qword [0x00480d38]
cmp dword [rsp + 0x258], r13d
je 0x458478
mov rdx, qword [rsp + 0x250]
mov rcx, rbx
call fcn.00402714
lea rdx, [rsp + 0x270]
lea rcx, [rsp + 0x210]
call fcn.00415064
mov r11d, dword [rsp + 0x2a0]
mov rax, 0xffffffffffffffff
cmp r11d, eax
je 0x4584b6
mov dword [0x0048005c], r11d
mov dword [0x0048006c], r11d
mov dword [0x00480048], r11d
mov dword [rsp + 0x8b0], 1
cmp dword [rsp + 0x52c], r13d
je 0x4584db
mov eax, dword [rsp + 0x520]
cmp dword [rsp + 0x528], eax
je 0x4584e2
mov dword [rsp + 0x8b0], edi
mov r15d, 0x50
cmp r14, r13
je 0x458517
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 0x458517
movzx r15d, word [rsp + 0x90]
mov ecx, 0x88
call fcn.0040232c
mov qword [rsp + 0x8b8], rax
cmp rax, r13
je 0x45853b
mov rcx, rax
call fcn.004577a0
mov rbp, rax
jmp 0x45853e
mov rbp, r13
mov qword [rsp + 0x120], r13
mov rdx, r13
mov qword [rsp + 0x128], r13
mov qword [rsp + 0x130], r13
mov dword [rsp + 0x138], r13d
mov dword [rsp + 0x13c], r13d
mov qword [rsp + 0x140], r13
mov dword [rsp + 0x148], r13d
mov dword [rsp + 0x14c], r13d
cmp rbp, r13
je 0x4585b5
mov rax, qword [rbp]
mov rcx, rbp
call qword [rax + VariantCopy]
mov rcx, qword [rsp + 0x120]
cmp rcx, r13
je 0x4585ad
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rdx, qword [rsp + 0x128]
jmp 0x4585b5
mov rdx, qword [rsp + 0x128]
mov qword [rsp + 0x120], rbp
mov rax, rbp
lea rcx, [rbp + 8]
neg rax
sbb rbx, rbx
and rbx, rcx
je 0x4585e0
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + VariantCopy]
mov rdx, qword [rsp + 0x128]
cmp rdx, r13
je 0x4585ee
mov rax, qword [rdx]
mov rcx, rdx
call qword [rax + 0x10]
mov qword [rsp + 0x128], rbx
mov qword [rsp + 0x260], rbp
mov al, byte [rsp + 0x271]
mov byte [rbp + 0x80], al
mov al, byte [rsp + 0x272]
mov byte [rbp + 0x81], al
mov rcx, rbp
call fcn.0043974c
xor ebx, ebx
cmp eax, ebx
je 0x458642
mov dword [rsp + 0x8b0], eax
lea rdx, [0x0047ec00]
lea rcx, [rsp + 0x8b0]
call sub.msvcrt.dll__CxxThrowException
int3
mov rcx, rbp
call fcn.00432038
lea r11, [rsp + 0x120]
mov qword [0x00480d28], r11
lea rcx, [rsp + 0x90]
call fcn.004034f4
nop
lea rdx, [rsp + 0x90]
mov rcx, rbp
call fcn.00438084
cmp dword [rsp + 0x98], ebx
je 0x4586b6
mov rax, qword [0x00480d38]
mov rdi, rsi
cmp rax, rbx
cmovne rdi, rax
mov rbx, qword [rsp + 0x90]
mov rcx, rdi
call fcn.0040247c
mov rdx, rbx
mov rcx, rdi
call fcn.00402714
mov rcx, rax
call fcn.0040247c
xor ebx, ebx
mov rcx, qword [rsp + 0x90]
call fcn.00402364
lea rcx, [rsp + 0x2d0]
call fcn.00412e14
mov dil, al
cmp dword [rbp + 0x58], ebx
jne 0x458774
cmp al, bl
jne 0x4586fb
cmp dword [rsp + 0x2d0], 6
je 0x4586fb
lea rcx, [rsp + 0x2d0]
call fcn.00412e20
cmp al, bl
je 0x458774
cmp dword [rbp + 0x30], ebx
je 0x458750
lea rdx, str.Cant_load_module:
lea rcx, [rsp + 0x90]
call fcn.004035a8
nop
lea rdx, [rbp + 0x28]
lea rcx, [rsp + 0x90]
call fcn.0040393c
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0xc8]
call fcn.00403650
lea rdx, [0x0047eb50]
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 + 0x8b0], rax
lea rdx, [0x0047ea98]
lea rcx, [rsp + 0x8b0]
call sub.msvcrt.dll__CxxThrowException
int3
mov qword [rsp + 0xf0], rbx
mov dword [rsp + 0xf8], ebx
mov dword [rsp + 0xfc], ebx
lea r8, [rsp + 0xf0]
lea rdx, [rsp + 0x500]
mov rcx, rbp
call fcn.00442a50
cmp al, bl
jne 0x4587ca
lea rax, str.Unsupported_archive_type
mov qword [rsp + 0x8b0], rax
lea rdx, [0x0047ea98]
lea rcx, [rsp + 0x8b0]
call sub.msvcrt.dll__CxxThrowException
int3
mov qword [rsp + 0x150], rbx
mov dword [rsp + 0x158], ebx
mov dword [rsp + 0x15c], ebx
mov r13d, ebx
mov r12d, 8
cmp dword [rsp + 0x518], ebx
jbe 0x458895
xor eax, eax
mov qword [rsp + 0x90], rax
mov dword [rsp + 0x98], eax
mov dword [rsp + 0x9c], eax
mov rax, qword [rsp + 0x510]
lea r8, [rsp + 0x90]
mov rdx, qword [rax + rbx]
mov rcx, rbp
call fcn.004389ac
test al, al
je 0x458871
cmp dword [rsp + 0x98], 1
jne 0x458871
mov rax, qword [rsp + 0x90]
mov edx, dword [rax]
lea rcx, [rsp + 0x150]
call fcn.00457504
nop
mov rcx, qword [rsp + 0x90]
call fcn.00402364
inc r13d
add rbx, r12
cmp r13d, dword [rsp + 0x518]
jb 0x4587f6
xor ebx, ebx
jmp 0x458895
lea rax, str.Unsupported_archive_type
mov qword [rsp + 0x8b0], rax
lea rdx, [0x0047ea98]
lea rcx, [rsp + 0x8b0]
call sub.msvcrt.dll__CxxThrowException
nop
cmp dil, bl
jne 0x4588bd
lea rcx, [rsp + 0x2d0]
call fcn.00412e20
cmp al, bl
jne 0x4588bd
mov rax, qword [rsp + 0x2d0]
cmp eax, 9
je 0x4588bd
cmp eax, 7
jne 0x4588f2
lea rcx, [rsp + 0x120]
call fcn.0040dfe4
cmp eax, ebx
je 0x4588ea
mov dword [rsp + 0x8b0], eax
lea rdx, [0x0047ec00]
lea rcx, [rsp + 0x8b0]
call sub.msvcrt.dll__CxxThrowException
int3
mov rax, qword [rsp + 0x2d0]
mov dword [rsp + 0x8b8], ebx
mov r13d, ebx
mov dword [rsp + 0x8c8], ebx
cmp eax, r12d
jne 0x459267
mov rax, qword [0x00480d38]
cmp rax, rbx
cmovne rsi, rax
mov rcx, rsi
call fcn.0040247c
mov rdx, qword [rsi]
lea rcx, str.Libs:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.0040247c
mov edi, ebx
cmp dword [rbp + 0x20], ebx
jbe 0x458a22
mov r14, rbx
mov edx, edi
mov rcx, rsi
call fcn.00455f30
mov r11, qword [rbp + 0x18]
mov r15, qword [r14 + r11]
mov rdx, qword [rsi]
lea rcx, [0x0045ff7c]
call qword [sym.imp.msvcrt.dll_fputs]
movzx edx, word [r15 + 0x4a]
mov rcx, rsi
call fcn.00402590
mov rdx, qword [rax]
lea rcx, [0x00465bc4]
call qword [sym.imp.msvcrt.dll_fputs]
movzx ebx, word [r15 + 0x48]
lea rcx, [rsp + 0x90]
call fcn.00402d3c
nop
mov edx, ebx
lea rcx, [rsp + 0x90]
call fcn.00402fbc
cmp dword [rsp + 0x98], 2
jae 0x4589cc
mov dl, 0x30
lea rcx, [rsp + 0x90]
call fcn.00403140
cmp dword [rsp + 0x98], 2
jb 0x4589b3
mov rdx, qword [rsi]
mov rcx, qword [rsp + 0x90]
call qword [sym.imp.msvcrt.dll_fputs]
nop
mov rcx, qword [rsp + 0x90]
call fcn.00402364
mov rbx, qword [r15 + 8]
mov rdx, qword [rsi]
lea rcx, [0x0045ff78]
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, rbx
mov rcx, rsi
call fcn.00402714
mov rcx, rax
call fcn.0040247c
inc edi
add r14, r12
cmp edi, dword [rbp + 0x20]
jb 0x458948
xor ebx, ebx
mov rcx, rsi
call fcn.0040247c
mov rdx, qword [rsi]
lea rcx, str.Formats:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.0040247c
lea rcx, str.KSNFMGOPBELHXCcamr
call sub.msvcrt.dll_strlen
mov r14, rax
mov qword [rsp + 0x168], rax
lea rcx, str.wudn
call sub.msvcrt.dll_strlen
mov r15, rax
mov qword [rsp + 0xc8], rax
mov dword [rsp + 0x8b0], ebx
cmp dword [rbp + 0x58], ebx
jbe 0x458dbf
mov rcx, rbx
mov qword [rsp + 0x160], rbx
mov r13d, 0x20
mov rax, qword [rbp + 0x50]
mov rdi, qword [rcx + rax]
mov edx, dword [rdi + 0x58]
mov rcx, rsi
call fcn.00455f30
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]
test r14d, r14d
je 0x458afa
lea r14, str.KSNFMGOPBELHXCcamr
mov r13, qword [rsp + 0x168]
bt dword [rdi], ebx
jae 0x458adc
mov al, byte [r14]
jmp 0x458ade
mov al, 0x2e
movzx ecx, al
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
inc ebx
inc r14
cmp ebx, r13d
jb 0x458ad2
mov r13d, 0x20
mov rdx, qword [rsi]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_fputc]
cmp dword [rdi + 4], 0
je 0x458b57
xor ebx, ebx
test r15d, r15d
je 0x458b3d
lea r14, str.wudn
bt dword [rdi + 4], ebx
jae 0x458b25
mov al, byte [r14]
jmp 0x458b27
mov al, 0x2e
movzx ecx, al
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
inc ebx
inc r14
cmp ebx, r15d
jb 0x458b1a
mov edx, dword [rdi + 4]
shr edx, 0x1b
mov rcx, rsi
call fcn.00402590
mov rdx, qword [rsi]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_fputc]
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.00402714
cmp ebx, r12d
jae 0x458b8f
mov eax, r12d
sub eax, ebx
mov ebx, eax
mov rdx, qword [rsi]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_fputc]
dec rbx
jne 0x458b7e
mov rdx, qword [rsi]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_fputc]
lea rcx, [rsp + 0x90]
call fcn.004034f4
nop
xor ebx, ebx
cmp dword [rdi + 0x30], ebx
jbe 0x458c21
xor r15d, r15d
test ebx, ebx
je 0x458bc4
lea rcx, [rsp + 0x90]
call fcn.00403eb0
mov rax, qword [rdi + 0x28]
mov r14, qword [r15 + rax]
mov rdx, r14
lea rcx, [rsp + 0x90]
call fcn.0040393c
cmp dword [r14 + 0x18], 0
je 0x458c17
lea rdx, [0x00465c00]
lea rcx, [rsp + 0x90]
call fcn.00403980
lea rdx, [r14 + 0x10]
lea rcx, [rsp + 0x90]
call fcn.0040393c
mov dl, 0x29
lea rcx, [rsp + 0x90]
call fcn.00403e38
inc ebx
add r15, r12
cmp ebx, dword [rdi + 0x30]
jb 0x458bb3
mov ebx, dword [rsp + 0x98]
mov rdx, qword [rsp + 0x90]
mov rcx, rsi
call fcn.00402714
cmp ebx, 0xd
jae 0x458c57
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 0x458c46
mov rdx, qword [rsi]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_fputc]
xor ebx, ebx
cmp dword [rdi + 0x44], ebx
je 0x458c91
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.00402590
mov rdx, qword [rax]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_fputc]
mov r15d, ebx
cmp dword [rdi + 0x50], ebx
jbe 0x458d61
mov r13, rbx
cmp r15d, ebx
je 0x458cb5
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 + 0x100], rbx
xor r14d, r14d
cmp qword [rbx + 8], r14
jbe 0x458d48
lea r12, str.0123456789ABCDEF0123456789abcdef
test r14, r14
je 0x458ce9
mov rdx, qword [rsi]
mov ecx, 0x20
call qword [sym.imp.msvcrt.dll_fputc]
mov rax, qword [rbx]
movzx ecx, byte [rax + r14]
lea eax, [rcx - 0x21]
cmp eax, 0x5e
ja 0x458d04
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
jmp 0x458d39
mov rbx, rcx
mov rax, rcx
shr rax, 4
movzx ecx, byte [rax + r12]
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
mov r11b, bl
and r11d, 0xf
movzx ecx, byte [r11 + r12]
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
mov rbx, qword [rsp + 0x100]
inc r14
cmp r14, qword [rbx + 8]
jb 0x458cd6
mov r12d, 8
inc r15d
add r13, r12
cmp r15d, dword [rdi + 0x50]
mov ebx, 0
jb 0x458ca0
lea r13d, [rbx + 0x20]
mov rcx, rsi
call fcn.0040247c
nop
mov rcx, qword [rsp + 0x90]
call fcn.00402364
mov r14d, dword [rsp + 0x8b0]
inc r14d
mov dword [rsp + 0x8b0], r14d
mov rcx, qword [rsp + 0x160]
add rcx, r12
mov qword [rsp + 0x160], rcx
cmp r14d, dword [rbp + 0x58]
mov r15, qword [rsp + 0xc8]
mov r14, qword [rsp + 0x168]
jb 0x458a91
mov r13d, dword [rsp + 0x8c8]
mov rcx, rsi
call fcn.0040247c
mov rdx, qword [rsi]
lea rcx, str.Codecs:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.0040247c
mov r14d, ebx
cmp dword [0x00480a50], ebx
jbe 0x458eee
lea rdi, [0x00480850]
mov r15d, 0x20
mov rbx, qword [rdi]
mov rdx, qword [rsi]
lea rcx, [0x00462830]
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsi]
mov ecx, r15d
call qword [sym.imp.msvcrt.dll_fputc]
mov edx, dword [rbx + 0x20]
cmp edx, 1
jne 0x458e30
mov rdx, qword [rsi]
mov ecx, r15d
call qword [sym.imp.msvcrt.dll_fputc]
jmp 0x458e38
mov rcx, rsi
call fcn.00402590
mov rax, qword [rbx + 8]
neg rax
sbb cl, cl
and cl, 0x25
add cl, r15b
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, r15b
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, r15b
movzx ecx, al
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
mov rdx, qword [rsi]
mov ecx, r15d
call qword [sym.imp.msvcrt.dll_fputc]
lea rdx, [rsp + 0x90]
mov rcx, qword [rbx + 0x10]
call fcn.00401cd0
mov r8d, r12d
lea rdx, [rsp + 0x90]
mov rcx, rsi
call fcn.00455edc
mov rdx, qword [rsi]
mov ecx, r15d
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.0040247c
inc r14d
add rdi, r12
cmp r14d, dword [0x00480a50]
jb 0x458dfb
xor ebx, ebx
jmp 0x458ef4
mov r15d, 0x20
mov rcx, qword [rsp + 0x120]
mov rax, qword [rcx]
lea rdx, [rsp + 0x8c0]
call qword [rax + 0x18]
cmp eax, ebx
jne 0x45908a
mov edi, ebx
cmp dword [rsp + 0x8c0], ebx
jbe 0x45908a
mov r14, 0xffffffffffffffff
mov edx, edi
mov rcx, rbp
call fcn.00437ac4
mov edx, eax
mov rcx, rsi
call fcn.00455f30
mov edx, edi
mov rcx, rbp
call fcn.004375e4
cmp eax, 1
jne 0x458f59
mov rdx, qword [rsi]
mov ecx, r15d
call qword [sym.imp.msvcrt.dll_fputc]
jmp 0x458f63
mov edx, eax
mov rcx, rsi
call fcn.00402590
mov edx, edi
mov rcx, rbp
call fcn.00437af4
neg al
sbb cl, cl
and cl, 0x25
add cl, r15b
movzx ecx, cl
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
mov edx, edi
mov rcx, rbp
call fcn.00437ae0
neg al
sbb cl, cl
and cl, 0x24
add cl, r15b
movzx ecx, cl
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
lea r8, [rsp + 0x8b0]
mov edx, edi
mov rcx, rbp
call fcn.00437b08
mov cl, byte [rsp + 0x8b0]
neg cl
sbb dl, dl
and dl, 0xf6
add dl, 0x2a
movzx ecx, dl
mov edx, 0x46
cmp al, bl
cmovne ecx, edx
movzx ecx, cl
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
mov rdx, qword [rsi]
mov ecx, r15d
call qword [sym.imp.msvcrt.dll_fputc]
lea r8, [rsp + 0x8c8]
mov edx, edi
mov rcx, rbp
call fcn.0043766c
mov rcx, qword [rsp + 0x8c8]
cmp eax, ebx
cmovne rcx, r14
mov qword [rsp + 0x8c8], rcx
lea rdx, [rsp + 0xc8]
call fcn.00401cd0
mov r8d, r12d
lea rdx, [rsp + 0xc8]
mov rcx, rsi
call fcn.00455edc
mov r8d, edi
lea rdx, [rsp + 0x90]
mov rcx, rbp
call fcn.004376f4
mov rbx, qword [rax]
mov rdx, qword [rsi]
mov ecx, r15d
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.0040247c
mov rcx, qword [rsp + 0x90]
call fcn.00402364
inc edi
cmp edi, dword [rsp + 0x8c0]
mov ebx, 0
jb 0x458f28
mov rcx, rsi
call fcn.0040247c
mov rdx, qword [rsi]
lea rcx, str.Hashers:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.0040247c
mov r14d, ebx
cmp dword [0x00480a54], ebx
jbe 0x45916b
lea rdi, [0x004807d0]
mov rbx, qword [rdi]
mov rdx, qword [rsi]
lea rcx, [0x00462830]
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsi]
mov ecx, r15d
call qword [sym.imp.msvcrt.dll_fputc]
lea rdx, [rsp + 0x90]
mov ecx, dword [rbx + 0x18]
call fcn.00401b1c
mov r8d, 4
lea rdx, [rsp + 0x90]
mov rcx, rsi
call fcn.00455edc
mov rdx, qword [rsi]
mov ecx, r15d
call qword [sym.imp.msvcrt.dll_fputc]
lea rdx, [rsp + 0xc8]
mov rcx, qword [rbx + 8]
call fcn.00401cd0
mov r8d, r12d
lea rdx, [rsp + 0xc8]
mov rcx, rsi
call fcn.00455edc
mov rdx, qword [rsi]
mov ecx, r15d
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.0040247c
inc r14d
add rdi, r12
cmp r14d, dword [0x00480a54]
jb 0x4590c0
xor ebx, ebx
mov rcx, qword [rsp + 0x128]
mov rax, qword [rcx]
call qword [rax + 0x18]
mov dword [rsp + 0x8c0], eax
mov edi, ebx
cmp eax, ebx
jbe 0x45a404
mov edx, edi
mov rcx, rbp
call fcn.00437ad4
mov edx, eax
mov rcx, rsi
call fcn.00455f30
mov edx, edi
mov rcx, rbp
call fcn.0043792c
lea rdx, [rsp + 0x90]
mov ecx, eax
call fcn.00401b1c
mov r8d, 4
lea rdx, [rsp + 0x90]
mov rcx, rsi
call fcn.00455edc
mov rdx, qword [rsi]
mov ecx, r15d
call qword [sym.imp.msvcrt.dll_fputc]
mov edx, edi
mov rcx, rbp
call fcn.004377cc
lea rdx, [rsp + 0x100]
mov rcx, rax
call fcn.00401cd0
mov r8d, r12d
lea rdx, [rsp + 0x100]
mov rcx, rsi
call fcn.00455edc
mov r8d, edi
lea rdx, [rsp + 0xc8]
mov rcx, rbp
call fcn.00437844
mov rbx, qword [rax]
mov rdx, qword [rsi]
mov ecx, r15d
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.0040247c
mov rcx, qword [rsp + 0xc8]
call fcn.00402364
inc edi
cmp edi, dword [rsp + 0x8c0]
jb 0x45918a
mov r14d, dword [rsp + 0x8b8]
xor ebx, ebx
jmp 0x45a40c
cmp eax, 7
jne 0x4592d8
mov rax, qword [0x00480d38]
cmp rax, rbx
cmovne rsi, rax
mov r9, qword [rsi]
mov r8d, dword [rsp + 0x530]
lea rdx, [rsp + 0x348]
lea rcx, [rsp + 0x120]
call fcn.0044f9e8
mov r13d, eax
cmp eax, 1
jne 0x45a3ff
mov rcx, rsi
call fcn.0040247c
mov rdx, qword [0x00480d40]
cmp rdx, rbx
je 0x4592ca
mov rdx, qword [rdx]
lea rcx, str._nDecoding_ERROR_n
call qword [sym.imp.msvcrt.dll_fputs]
mov r14d, 2
mov r13d, ebx
jmp 0x45a40c
cmp dil, bl
jne 0x459863
cmp eax, 6
je 0x459863
lea rcx, [rsp + 0x2d0]
call fcn.00412e20
cmp al, bl
je 0x459634
cmp byte [rsp + 0x3a1], bl
je 0x459325
cmp dword [rsp + 0x488], ebx
jne 0x459325
lea rdx, str.7zCon.sfx
lea rcx, [rsp + 0x480]
call fcn.00403870
lea rax, [0x00466a88]
mov qword [rsp + 0x540], rax
mov edx, 0xc8
lea rcx, [rsp + 0x548]
call fcn.00452bc4
nop
mov qword [rsp + 0x630], rbx
mov byte [rsp + 0x638], bl
mov byte [rsp + 0x639], bl
mov byte [rsp + 0x63a], bl
lea rcx, [rsp + 0x640]
call fcn.004034f4
nop
mov rax, qword [0x00480d38]
mov qword [rsp + 0x620], rax
mov rax, qword [0x00480d40]
mov qword [rsp + 0x628], rax
mov qword [rsp + 0x610], r14
cmp byte [rsp + 0x2e8], bl
je 0x4593ac
cmp dword [rsp + 0x2f8], ebx
je 0x4593ac
mov bl, 1
mov byte [rsp + 0x63a], bl
lea rdx, [rsp + 0x2f0]
lea rcx, [rsp + 0x640]
call fcn.00403740
lea rcx, [rsp + 0x660]
call fcn.004572c4
nop
lea rax, [0x00468190]
mov qword [rsp + 0x650], rax
lea rax, [0x00468178]
mov qword [rsp + 0x658], rax
xor esi, esi
mov byte [rsp + 0x7c0], sil
mov byte [rsp + 0x7c1], sil
mov byte [rsp + 0x7c2], sil
lea rcx, [rsp + 0x7c8]
call fcn.004034f4
nop
mov eax, dword [rsp + 0x52c]
mov dword [rsp + 0x750], eax
mov eax, dword [rsp + 0x8b0]
mov dword [rsp + 0x74c], eax
cmp r14, rsi
je 0x459448
lea eax, [r15 - 1]
mov dword [rsp + 0x734], eax
mov byte [rsp + 0x7c1], bl
cmp byte [rsp + 0x2e8], sil
je 0x45946c
cmp dword [rsp + 0x2f8], esi
jne 0x45946c
mov byte [rsp + 0x7c2], 1
jmp 0x459474
mov byte [rsp + 0x7c2], sil
lea rdx, [rsp + 0x2f0]
lea rcx, [rsp + 0x7c8]
call fcn.00403740
mov r11b, byte [rsp + 0x3a6]
mov byte [rsp + 0x748], r11b
mov r9, r14
mov r8, qword [0x00480d40]
mov rdx, qword [0x00480d38]
lea rcx, [rsp + 0x660]
call fcn.004568bc
mov dword [rsp + 0x90], esi
lea rcx, [rsp + 0x98]
call fcn.00402d3c
mov qword [rsp + 0xa8], rsi
mov dword [rsp + 0xb0], esi
mov dword [rsp + 0xb4], esi
mov byte [rsp + 0x40], 1
lea rax, [rsp + 0x650]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x540]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x90]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x3a0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x2a8]
lea r8, [rsp + 0x2d8]
lea rdx, [rsp + 0xf0]
mov rcx, rbp
call fcn.00448430
mov r13d, eax
cmp qword [rsp + 0x728], rsi
je 0x459556
mov dl, 1
lea rcx, [rsp + 0x660]
call fcn.0045b088
mov r9, qword [0x00480d38]
mov rax, r9
cmp r9, rsi
cmove rax, qword [0x00480d40]
mov byte [rsp + 0x28], 1
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x90]
lea rdx, [rsp + 0x660]
mov ecx, r13d
call fcn.00456af4
mov r14d, eax
movsxd rbx, dword [rsp + 0xb0]
mov rdi, rbx
cmp ebx, esi
je 0x4595ce
shl rdi, 3
add ebx, 0xffffffff
sub rdi, r12
mov rcx, qword [rsp + 0xa8]
mov rsi, qword [rcx + rdi]
test rsi, rsi
je 0x4595ca
mov rcx, qword [rsi]
call fcn.00402364
mov rcx, rsi
call fcn.00402364
test ebx, ebx
jne 0x4595a3
mov rcx, qword [rsp + 0xa8]
call fcn.00402364
mov rcx, qword [rsp + 0x98]
call fcn.00402364
nop
mov rcx, qword [rsp + 0x7c8]
call fcn.00402364
lea rcx, [rsp + 0x660]
call fcn.0045694c
nop
lea rax, [0x00466a88]
mov qword [rsp + 0x540], rax
mov rcx, qword [rsp + 0x640]
call fcn.00402364
lea rcx, [rsp + 0x548]
call fcn.0045b1bc
xor ebx, ebx
jmp 0x45a40c
cmp dword [rsp + 0x2d0], 9
jne 0x459807
lea rcx, [rsp + 0x650]
call fcn.004573c4
nop
cmp r14, rbx
je 0x459660
lea eax, [r15 - 1]
mov dword [rsp + 0x72c], eax
mov r9, r14
mov r8, qword [0x00480d40]
mov rdx, qword [0x00480d38]
lea rcx, [rsp + 0x658]
call fcn.004568bc
mov r11b, byte [rsp + 0x278]
mov byte [rsp + 0x7d9], r11b
lea rdx, [rsp + 0x290]
lea rcx, [rsp + 0x7e0]
call fcn.00402e50
lea rcx, [rsp + 0x90]
call fcn.00402d3c
nop
lea rax, [rsp + 0x650]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x90]
lea r8, [rsp + 0x4e0]
lea rdx, [rsp + 0x2a8]
lea rcx, [rsp + 0x120]
call fcn.00432e3c
mov r13d, eax
mov dword [rsp + 0xc8], ebx
lea rcx, [rsp + 0xd0]
call fcn.00402d3c
mov qword [rsp + 0xe0], rbx
mov dword [rsp + 0xe8], ebx
mov dword [rsp + 0xec], ebx
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0xd0]
call fcn.00402e50
mov r9, qword [0x00480d38]
mov rcx, r9
cmp r9, rbx
cmove rcx, qword [0x00480d40]
mov al, byte [rsp + 0x278]
mov byte [rsp + 0x28], al
mov qword [rsp + 0x20], rcx
lea r8, [rsp + 0xc8]
lea rdx, [rsp + 0x658]
mov ecx, r13d
call fcn.00456af4
mov r14d, eax
movsxd rbx, dword [rsp + 0xe8]
mov rdi, rbx
test ebx, ebx
je 0x4597a3
shl rdi, 3
add ebx, 0xffffffff
sub rdi, r12
mov rax, qword [rsp + 0xe0]
mov rsi, qword [rax + rdi]
test rsi, rsi
je 0x45979f
mov rcx, qword [rsi]
call fcn.00402364
mov rcx, rsi
call fcn.00402364
test ebx, ebx
jne 0x459778
mov rcx, qword [rsp + 0xe0]
call fcn.00402364
mov rcx, qword [rsp + 0xd0]
call fcn.00402364
nop
mov rcx, qword [rsp + 0x90]
call fcn.00402364
nop
mov rcx, qword [rsp + 0x7e0]
call fcn.00402364
mov rcx, qword [rsp + 0x7c8]
call fcn.00402364
mov rcx, qword [rsp + 0x7b8]
call fcn.00402364
lea rcx, [rsp + 0x658]
call fcn.0045694c
xor ebx, ebx
jmp 0x45a40c
mov rbx, qword [0x00480d40]
test rbx, rbx
je 0x459843
mov rcx, rbx
call fcn.0040247c
mov rdx, qword [rbx]
lea rcx, [0x00465bd0]
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.0040247c
mov dword [rsp + 0x8b0], 7
lea rdx, [0x0047eba8]
lea rcx, [rsp + 0x8b0]
call sub.msvcrt.dll__CxxThrowException
int3
mov qword [rsp + 0xc8], rbx
mov dword [rsp + 0xd0], ebx
mov dword [rsp + 0xd4], ebx
mov qword [rsp + 0x100], rbx
mov dword [rsp + 0x108], ebx
mov dword [rsp + 0x10c], ebx
cmp byte [rsp + 0x276], bl
je 0x459959
lea rcx, [rsp + 0xc8]
call fcn.0040d9c4
mov r13d, 0x10
mov rcx, r13
call fcn.0040232c
mov qword [rsp + 0x8c0], rax
cmp rax, rbx
je 0x4598d9
lea rdx, [rsp + 0x338]
mov rcx, rax
call fcn.00403650
mov r11, rax
jmp 0x4598dc
mov r11, rbx
mov eax, dword [rsp + 0xd0]
mov rdx, rax
inc eax
mov dword [rsp + 0xd0], eax
mov rax, qword [rsp + 0xc8]
mov qword [rax + rdx*8], r11
lea rcx, [rsp + 0x100]
call fcn.0040d9c4
mov rcx, r13
call fcn.0040232c
mov qword [rsp + 0x8c0], rax
cmp rax, rbx
je 0x459932
lea rdx, [rsp + 0x338]
mov rcx, rax
call fcn.00403650
mov r11, rax
jmp 0x459935
mov r11, rbx
mov eax, dword [rsp + 0x108]
mov rcx, rax
inc eax
mov dword [rsp + 0x108], eax
mov rax, qword [rsp + 0x100]
mov qword [rax + rcx*8], r11
jmp 0x459acf
lea rax, [0x00468028]
mov qword [rsp + 0x540], rax
mov edx, 0xc8
lea rcx, [rsp + 0x558]
call fcn.00452bc4
nop
mov dl, byte [rsp + 0x278]
mov al, dl
neg al
sbb rcx, rcx
mov rbx, qword [0x00480d38]
and rcx, rbx
mov qword [rsp + 0x548], rcx
mov rax, qword [0x00480d40]
mov qword [rsp + 0x550], rax
mov qword [rsp + 0x620], r14
lea eax, [r15 - 1]
mov dword [rsp + 0x62c], eax
test rbx, rbx
je 0x4599de
test dl, dl
je 0x4599de
mov rdx, qword [rbx]
lea rcx, str.Scanning_the_drive_for_archives:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rbx
call fcn.0040247c
xor ebx, ebx
mov qword [rsp + 0x170], rbx
mov qword [rsp + 0x178], rbx
mov qword [rsp + 0x180], rbx
mov qword [rsp + 0x188], rbx
mov qword [rsp + 0x190], rbx
mov qword [rsp + 0x198], rbx
lea rcx, [rsp + 0x540]
call fcn.0044fa9c
lea rcx, [rsp + 0x90]
call fcn.004034f4
nop
lea rcx, [rsp + 0x540]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x170]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0x100]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0xc8]
mov r8, rax
xor edx, edx
lea rcx, [rsp + 0x310]
call fcn.0042bf48
mov r13d, eax
mov rcx, qword [rsp + 0x90]
call fcn.00402364
cmp qword [rsp + 0x620], rbx
je 0x459a95
mov dl, 1
lea rcx, [rsp + 0x558]
call fcn.0045b088
cmp r13d, ebx
jne 0x459ab9
cmp byte [rsp + 0x278], bl
je 0x459ab9
lea rdx, [rsp + 0x170]
lea rcx, [rsp + 0x540]
call fcn.0044fe98
nop
lea rcx, [rsp + 0x558]
call fcn.0045b1bc
cmp r13d, ebx
jne 0x45a348
cmp dil, bl
je 0x45a1b3
mov ecx, 0x1c8
call fcn.0040232c
mov qword [rsp + 0x8c0], rax
cmp rax, rbx
je 0x459afc
mov rcx, rax
call fcn.00456514
mov rdi, rax
jmp 0x459aff
mov rdi, rbx
mov qword [rsp + 0x8c0], rdi
cmp rdi, rbx
je 0x459b16
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + VariantCopy]
nop
mov al, byte [rsp + 0x2e8]
mov byte [rdi + 0x11a], al
lea rcx, [rdi + 0x120]
lea rdx, [rsp + 0x2f0]
call fcn.00403740
mov r11, qword [0x00480d40]
lea rbx, [rdi + 0x20]
mov rax, qword [0x00480d38]
mov qword [rbx + 0xe0], rax
mov qword [rbx + 0xe8], r11
mov qword [rbx + 0xd0], r14
xor ecx, ecx
mov qword [rdi + 0x168], rcx
mov byte [rdi + 0x170], cl
mov byte [rdi + 0x171], cl
mov qword [rdi + 0x178], rcx
mov qword [rdi + 0x180], rcx
mov qword [rdi + 0x188], rcx
mov qword [rdi + 0x190], rcx
mov qword [rdi + 0x198], rcx
mov qword [rdi + 0x1a0], rcx
mov qword [rdi + 0x1a8], rcx
mov qword [rdi + 0x1b0], rcx
cmp dword [rsp + 0xd0], 1
seta al
mov byte [rdi + 0x119], al
mov eax, dword [rsp + 0x52c]
mov dword [rdi + 0x1c0], eax
mov eax, dword [rsp + 0x8b0]
mov dword [rdi + 0x1bc], eax
cmp r14, rcx
je 0x459be5
lea eax, [r15 - 1]
mov dword [rdi + 0xfc], eax
lea rcx, [rsp + 0x1b0]
call fcn.00455e00
xor r15d, r15d
mov byte [rsp + 0x1f8], r15b
mov byte [rsp + 0x1f9], r15b
mov byte [rsp + 0x1fa], r15b
mov byte [rsp + 0x1fb], r15b
mov qword [rsp + 0x200], r15
mov dword [rsp + 0x208], r15d
mov dword [rsp + 0x20c], r15d
lea rdx, [rsp + 0x358]
lea rcx, [rsp + 0x1b0]
call fcn.004564a8
mov r11b, byte [rsp + 0x276]
mov byte [rsp + 0x1f8], r11b
mov al, byte [rsp + 0x277]
mov byte [rsp + 0x1f9], al
mov al, byte [rsp + 0x279]
mov byte [rsp + 0x1fa], al
cmp dword [rsp + 0x2d0], 3
sete byte [rsp + 0x1fb]
lea rdx, [rsp + 0x348]
lea rcx, [rsp + 0x200]
call fcn.00413c58
lea rcx, [rsp + 0x90]
call fcn.004034f4
nop
lea rcx, [rsp + 0x7f0]
call fcn.00430c9c
nop
mov r14, r15
cmp dword [rsp + 0x308], r15d
je 0x459d02
lea r14, [rsp + 0x7f0]
lea r8, [rsp + 0x300]
lea rdx, [rsp + 0x120]
lea rcx, [rsp + 0x7f0]
call fcn.004323c4
cmp eax, r15d
je 0x459d02
mov dword [rsp + 0x8b0], eax
lea rdx, [0x0047ec00]
lea rcx, [rsp + 0x8b0]
call sub.msvcrt.dll__CxxThrowException
int3
mov rax, qword [rsp + 0x2a8]
mov rcx, qword [rax]
lea rax, [rdi + 8]
add rcx, 0x10
lea rdx, [rsp + 0x170]
mov qword [rsp + 0x60], rdx
lea rdx, [rsp + 0x90]
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], rbx
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rcx
lea rax, [rsp + 0x100]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0xc8]
lea r8, [rsp + 0x150]
lea rdx, [rsp + 0xf0]
mov rcx, rbp
call fcn.0042dcac
mov r13d, eax
cmp qword [rbx + 0xd0], r15
je 0x459d99
lea rcx, [rbx + 8]
mov dl, 1
call fcn.0045b088
cmp dword [rsp + 0x98], r15d
je 0x459df6
mov rsi, qword [0x00480d40]
cmp rsi, r15
je 0x459dea
mov rbx, qword [rsp + 0x90]
mov rcx, rsi
call fcn.0040247c
mov rdx, qword [rsi]
lea rcx, str.ERROR:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.0040247c
mov rdx, rbx
mov rcx, rsi
call fcn.00402714
mov rcx, rax
call fcn.0040247c
mov eax, 0x80004005
cmp r13d, r15d
cmove r13d, eax
mov rsi, qword [0x00480d38]
mov bl, r15b
cmp rsi, r15
je 0x459e65
mov rcx, rsi
call fcn.0040247c
cmp qword [rdi + 0x168], 1
jbe 0x459e65
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.004025c0
mov rcx, rax
call fcn.0040247c
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.004025c0
mov rcx, rax
call fcn.0040247c
cmp qword [rdi + 0x180], r15
je 0x459e9c
mov bl, 1
cmp rsi, r15
je 0x459e9c
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.004025c0
mov rcx, rax
call fcn.0040247c
cmp qword [rdi + 0x188], r15
je 0x459ed7
mov bl, 1
cmp rsi, r15
je 0x459f4d
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.004025c0
mov rcx, rax
call fcn.0040247c
cmp rsi, r15
je 0x459f4d
cmp qword [rdi + 0x190], r15
je 0x459f0c
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.004025c0
mov rcx, rax
call fcn.0040247c
cmp qword [rdi + 0x1a0], r15
je 0x459f4d
mov rcx, rsi
call fcn.0040247c
cmp qword [rdi + 0x1a0], r15
je 0x459f4d
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.004025c0
mov rcx, rax
call fcn.0040247c
cmp qword [rdi + 0x198], r15
je 0x459f95
mov bl, 1
cmp rsi, r15
je 0x459f9a
mov rcx, rsi
call fcn.0040247c
cmp qword [rdi + 0x198], r15
je 0x459f9a
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.004025c0
mov rcx, rax
call fcn.0040247c
cmp bl, r15b
je 0x459fa5
mov dword [rsp + 0x8b8], 2
cmp rsi, r15
je 0x45a159
cmp qword [rdi + 0x188], r15
jne 0x45a120
cmp qword [rdi + 0x1a8], r15
jne 0x45a120
cmp r13d, r15d
jne 0x45a159
mov rax, qword [rsp + 0x190]
cmp rax, r15
je 0x45a00e
mov rdx, qword [rsi]
lea rcx, str.Folders:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x190]
mov rcx, rsi
call fcn.004025c0
mov rcx, rax
call fcn.0040247c
mov rax, qword [rsp + 0x190]
cmp qword [rsp + 0x198], 1
jne 0x45a02c
cmp rax, r15
jne 0x45a02c
cmp qword [rsp + 0x1a0], r15
je 0x45a0ae
mov rdx, qword [rsi]
lea rcx, str.Files:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x198]
mov rcx, rsi
call fcn.004025c0
mov rcx, rax
call fcn.0040247c
cmp qword [rsp + 0x1a0], r15
je 0x45a0ae
mov rdx, qword [rsi]
lea rcx, str.Alternate_Streams:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x1a0]
mov rcx, rsi
call fcn.004025c0
mov rcx, rax
call fcn.0040247c
mov rdx, qword [rsi]
lea rcx, str.Alternate_Streams_Size:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x180]
mov rcx, rsi
call fcn.004025c0
mov rcx, rax
call fcn.0040247c
mov rdx, qword [rsi]
lea rcx, str.Size:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x178]
mov rcx, rsi
call fcn.004025c0
mov rbx, rax
mov rcx, rax
call fcn.0040247c
mov rdx, qword [rbx]
lea rcx, str.Compressed:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x188]
mov rcx, rbx
call fcn.004025c0
mov rcx, rax
call fcn.0040247c
cmp r14, r15
je 0x45a159
mov rcx, rsi
call fcn.0040247c
lea rdx, [rsp + 0x7f0]
mov rcx, rsi
call fcn.00451ff0
jmp 0x45a159
mov rcx, rsi
call fcn.0040247c
cmp qword [rdi + 0x1a8], r15
je 0x45a159
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.004025c0
mov rcx, rax
call fcn.0040247c
nop
mov rcx, qword [rsp + 0x850]
call fcn.00402364
mov rcx, qword [rsp + 0x840]
call fcn.00402364
lea rcx, [rsp + 0x7f8]
call fcn.00430a0c
nop
mov rcx, qword [rsp + 0x90]
call fcn.00402364
nop
lea rcx, [rsp + 0x1b0]
call fcn.00457494
nop
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x10]
mov r14d, dword [rsp + 0x8b8]
jmp 0x45a360
mov qword [rsp + 0x8c8], rbx
mov qword [rsp + 0x8c0], rbx
mov al, byte [rsp + 0x2b8]
mov byte [rsp + 0x8b0], al
mov al, byte [rsp + 0x2b9]
mov byte [rsp + 0x8b1], al
mov rax, qword [rsp + 0x2a8]
mov rcx, qword [rax]
add rcx, 0x10
lea rax, [rsp + 0x8c0]
mov qword [rsp + 0x80], rax
lea rax, [rsp + 0x8c8]
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x348]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x2f0]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0x2e8]
mov qword [rsp + 0x60], rax
mov al, byte [rsp + 0x27b]
mov byte [rsp + 0x58], al
mov al, byte [rsp + 0x278]
mov byte [rsp + 0x50], al
mov qword [rsp + 0x48], rcx
mov al, byte [rsp + 0x27f]
mov byte [rsp + 0x40], al
mov al, byte [rsp + 0x388]
mov byte [rsp + 0x38], al
lea rax, [rsp + 0x100]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0xc8]
mov qword [rsp + 0x28], rax
mov al, byte [rsp + 0x276]
mov byte [rsp + 0x20], al
lea r9, [rsp + 0x150]
lea r8, [rsp + 0xf0]
mov rdx, rbp
lea rcx, [rsp + 0x8b0]
call fcn.00454260
mov r13d, eax
mov al, byte [rsp + 0x278]
cmp al, bl
je 0x45a2fb
cmp qword [rsp + 0x8c0], rbx
jbe 0x45a2fb
mov rcx, rsi
call fcn.0040247c
mov rdx, qword [0x00480050]
lea rcx, str.Warnings:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x8c0]
mov rcx, rsi
call fcn.004025c0
mov rcx, rax
call fcn.0040247c
mov al, byte [rsp + 0x278]
cmp qword [rsp + 0x8c8], rbx
jbe 0x45a355
cmp al, bl
je 0x45a33d
mov rcx, rsi
call fcn.0040247c
mov rdx, qword [0x00480050]
lea rcx, str.Errors:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x8c8]
mov rcx, rsi
call fcn.004025c0
mov rcx, rax
call fcn.0040247c
mov r14d, 2
xor r15d, r15d
jmp 0x45a360
mov r14d, dword [rsp + 0x8b8]
xor r15d, r15d
jmp 0x45a360
mov r14d, dword [rsp + 0x8b8]
xor r15d, r15d
movsxd rbx, dword [rsp + 0x108]
mov rdi, rbx
cmp ebx, r15d
je 0x45a3a0
shl rdi, 3
add ebx, 0xffffffff
sub rdi, r12
mov rax, qword [rsp + 0x100]
mov rsi, qword [rax + rdi]
cmp rsi, r15
je 0x45a39b
mov rcx, qword [rsi]
call fcn.00402364
mov rcx, rsi
call fcn.00402364
cmp ebx, r15d
jne 0x45a374
mov rcx, qword [rsp + 0x100]
call fcn.00402364
nop
movsxd rbx, dword [rsp + 0xd0]
mov rdi, rbx
cmp ebx, r15d
je 0x45a3ee
shl rdi, 3
add ebx, 0xffffffff
sub rdi, r12
mov rax, qword [rsp + 0xc8]
mov rsi, qword [rax + rdi]
cmp rsi, r15
je 0x45a3e9
mov rcx, qword [rsi]
call fcn.00402364
mov rcx, rsi
call fcn.00402364
cmp ebx, r15d
jne 0x45a3c2
mov rcx, qword [rsp + 0xc8]
call fcn.00402364
xor ebx, ebx
jmp 0x45a40c
mov r14d, ebx
jmp 0x45a40c
mov r14d, dword [rsp + 0x8b8]
cmp byte [rsp + 0x27c], bl
je 0x45a423
cmp qword [0x00480d38], rbx
je 0x45a423
call fcn.004561cc
cmp r13d, ebx
je 0x45a445
mov dword [rsp + 0x8b0], r13d
lea rdx, [0x0047ec00]
lea rcx, [rsp + 0x8b0]
call sub.msvcrt.dll__CxxThrowException
nop
mov rcx, qword [rsp + 0x150]
call fcn.00402364
nop
movsxd rbx, dword [rsp + 0xf8]
mov rdi, rbx
test ebx, ebx
je 0x45a47f
shl rdi, 3
sub rdi, r12
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rdi + rax]
call fcn.00402364
add ebx, 0xffffffff
jne 0x45a466
mov rcx, qword [rsp + 0xf0]
call fcn.00402364
nop
mov rcx, rbp
call fcn.00438968
nop
lea rcx, [rsp + 0x120]
call fcn.00456fb4
nop
mov rcx, qword [rsp + 0x250]
call fcn.00402364
lea rcx, [rsp + 0x210]
call fcn.0040186c
nop
lea rcx, [rsp + 0x270]
call fcn.00457af0
nop
movsxd rbx, dword [rsp + 0xc0]
mov rdi, rbx
test ebx, ebx
je 0x45a50b
shl rdi, 3
add ebx, 0xffffffff
sub rdi, r12
mov rax, qword [rsp + 0xb8]
mov rsi, qword [rdi + rax]
test rsi, rsi
je 0x45a507
mov rcx, qword [rsi]
call fcn.00402364
mov rcx, rsi
call fcn.00402364
test ebx, ebx
jne 0x45a4e0
mov rcx, qword [rsp + 0xb8]
call fcn.00402364
mov eax, r14d
add rsp, 0x868
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret