Function at 0x455f18
Capabilities:
Accept command line arguments

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x890
mov qword [rsp + 0x218], 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.004035c4
nop
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0x90]
call fcn.004011c0
nop
mov rcx, qword [rsp + 0x90]
call fcn.0040237c
mov ebp, 0xffffffff
mov ebx, dword [rsp + 0xc0]
cmp ebx, r13d
jbe 0x455ff2
mov rcx, qword [rsp + 0xb8]
mov rdi, qword [rcx]
cmp rdi, r13
je 0x455fd1
mov rcx, qword [rdi]
call fcn.0040237c
mov rcx, rdi
call fcn.0040237c
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 0x456082
mov rdi, qword [0x0047dd18]
cmp rdi, r13
je 0x456036
mov rdx, qword [rdi]
lea rcx, str._n7_Zip_22.01__x64__:_Copyright__c__1999_2022_Igor_Pavlov_:_2022_07_15_n
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rdi
call fcn.00402520
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 0x45606e
shl rdi, 3
add ebx, ebp
sub rdi, 8
mov rax, qword [rsp + 0xb8]
mov rsi, qword [rdi + rax]
cmp rsi, r13
je 0x456069
mov rcx, qword [rsi]
call fcn.0040237c
mov rcx, rsi
call fcn.0040237c
cmp ebx, r13d
jne 0x456042
mov rcx, qword [rsp + 0xb8]
call fcn.0040237c
xor eax, eax
jmp 0x4582cd
lea rcx, [rsp + 0x270]
call fcn.00455bc8
nop
lea rcx, [rsp + 0x220]
call fcn.004010dc
nop
lea rcx, [rsp + 0x260]
call fcn.00403558
nop
lea r8, [rsp + 0x270]
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0x220]
call fcn.00411804
mov r11b, byte [rsp + 0x274]
mov byte [0x0047d059], r11b
mov al, byte [rsp + 0x275]
mov byte [0x0047d069], al
lea rcx, [0x0047d060]
mov edi, 2
cmp dword [rsp + 0x540], 1
je 0x456112
mov rbx, r13
cmp dword [rsp + 0x540], edi
cmove rbx, rcx
mov qword [0x0047dd18], rbx
jmp 0x456119
mov rbx, qword [0x0047dd18]
lea rsi, [0x0047d050]
cmp dword [rsp + 0x544], edi
je 0x45613f
mov rax, r13
cmp dword [rsp + 0x544], 1
cmove rax, rsi
mov qword [0x0047dd20], rax
mov r14, r13
mov eax, dword [rsp + 0x548]
cmp eax, r13d
je 0x456157
mov r14, rsi
cmp eax, edi
cmove r14, rcx
cmp byte [rsp + 0x270], r13b
je 0x456210
cmp rbx, r13
je 0x456193
mov rdx, qword [rbx]
lea rcx, str._n7_Zip_22.01__x64__:_Copyright__c__1999_2022_Igor_Pavlov_:_2022_07_15_n
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rbx
call fcn.00402520
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 + 0x260]
call fcn.0040237c
lea rcx, [rsp + 0x220]
call fcn.00401874
nop
lea rcx, [rsp + 0x270]
call fcn.004558bc
nop
movsxd rbx, dword [rsp + 0xc0]
mov rdi, rbx
cmp ebx, r13d
je 0x4561fc
shl rdi, 3
add ebx, ebp
sub rdi, 8
mov rax, qword [rsp + 0xb8]
mov rsi, qword [rdi + rax]
cmp rsi, r13
je 0x4561f7
mov rcx, qword [rsi]
call fcn.0040237c
mov rcx, rsi
call fcn.0040237c
cmp ebx, r13d
jne 0x4561d0
mov rcx, qword [rsp + 0xb8]
call fcn.0040237c
xor eax, eax
jmp 0x4582cd
cmp byte [rsp + 0x278], r13b
je 0x456258
cmp rbx, r13
je 0x45623e
mov rdx, qword [rbx]
lea rcx, str._n7_Zip_22.01__x64__:_Copyright__c__1999_2022_Igor_Pavlov_:_2022_07_15_n
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rbx
call fcn.00402520
mov rbx, qword [0x0047dd18]
cmp dword [rsp + 0x268], r13d
je 0x456258
mov rdx, qword [rsp + 0x260]
mov rcx, rbx
call fcn.004027ec
lea rdx, [rsp + 0x270]
lea rcx, [rsp + 0x220]
call fcn.004131b8
mov r11d, dword [rsp + 0x290]
mov rax, 0xffffffffffffffff
cmp r11d, eax
je 0x456296
mov dword [0x0047d05c], r11d
mov dword [0x0047d06c], r11d
mov dword [0x0047d04c], r11d
mov dword [rsp + 0x8d0], 1
cmp dword [rsp + 0x54c], r13d
je 0x4562bb
mov eax, dword [rsp + 0x540]
cmp dword [rsp + 0x548], eax
je 0x4562c2
mov dword [rsp + 0x8d0], edi
mov r15d, 0x50
cmp r14, r13
je 0x4562f7
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 0x4562f7
movzx r15d, word [rsp + 0x90]
mov ecx, 0x88
call fcn.00402350
mov qword [rsp + 0x8d8], rax
cmp rax, r13
je 0x45631b
mov rcx, rax
call fcn.00455560
mov rbp, rax
jmp 0x45631e
mov rbp, r13
mov qword [rsp + 0x110], r13
mov rcx, r13
mov qword [rsp + 0x118], r13
mov qword [rsp + 0x120], r13
mov dword [rsp + 0x128], r13d
mov dword [rsp + 0x12c], r13d
mov qword [rsp + 0x130], r13
mov dword [rsp + 0x138], r13d
mov dword [rsp + 0x13c], r13d
cmp rbp, r13
je 0x456395
mov rax, qword [rbp]
mov rcx, rbp
call qword [rax + VariantCopy]
mov rcx, qword [rsp + 0x110]
cmp rcx, r13
je 0x45638d
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rsp + 0x118]
jmp 0x456395
mov rcx, qword [rsp + 0x118]
mov qword [rsp + 0x110], rbp
lea rdx, [rbp + 8]
mov rax, rbp
neg rax
sbb rbx, rbx
and rbx, rdx
je 0x4563c0
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + VariantCopy]
mov rcx, qword [rsp + 0x118]
cmp rcx, r13
je 0x4563cb
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rsp + 0x118], rbx
mov qword [rsp + 0x210], 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.00436db8
xor ebx, ebx
cmp eax, ebx
je 0x45641f
mov dword [rsp + 0x8d0], eax
lea rdx, [0x0047c188]
lea rcx, [rsp + 0x8d0]
call sub.msvcrt.dll__CxxThrowException
int3
mov rcx, rbp
call fcn.0042f26c
lea r11, [rsp + 0x110]
mov qword [0x0047dd08], r11
lea rcx, [rsp + 0x90]
call fcn.00403558
nop
lea rdx, [rsp + 0x90]
mov rcx, rbp
call fcn.004354cc
cmp dword [rsp + 0x98], ebx
je 0x456493
mov rax, qword [0x0047dd18]
mov rdi, rsi
cmp rax, rbx
cmovne rdi, rax
mov rbx, qword [rsp + 0x90]
mov rcx, rdi
call fcn.00402520
mov rdx, rbx
mov rcx, rdi
call fcn.004027ec
mov rcx, rax
call fcn.00402520
xor ebx, ebx
mov rcx, qword [rsp + 0x90]
call fcn.0040237c
lea rcx, [rsp + 0x2c0]
call fcn.00410f80
mov dil, al
cmp dword [rbp + 0x58], ebx
jne 0x456551
cmp al, bl
jne 0x4564d8
cmp dword [rsp + 0x2c0], 6
je 0x4564d8
lea rcx, [rsp + 0x2c0]
call fcn.00410f8c
cmp al, bl
je 0x456551
cmp dword [rbp + 0x30], ebx
je 0x45652d
lea rdx, str.Cant_load_module:
lea rcx, [rsp + 0x90]
call fcn.0040360c
nop
lea rdx, [rbp + 0x28]
lea rcx, [rsp + 0x90]
call fcn.004039b8
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0xc8]
call fcn.004036b4
lea rdx, [0x0047c0d8]
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 + 0x8d0], rax
lea rdx, [0x0047c020]
lea rcx, [rsp + 0x8d0]
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 + 0x520]
mov rcx, rbp
call fcn.00440510
cmp al, bl
jne 0x4565a7
lea rax, str.Unsupported_archive_type
mov qword [rsp + 0x8d0], rax
lea rdx, [0x0047c020]
lea rcx, [rsp + 0x8d0]
call sub.msvcrt.dll__CxxThrowException
int3
mov qword [rsp + 0x100], rbx
mov dword [rsp + 0x108], ebx
mov dword [rsp + 0x10c], ebx
mov r13d, ebx
cmp dword [rsp + 0x538], ebx
jbe 0x45666d
xor eax, eax
mov qword [rsp + 0x90], rax
mov dword [rsp + 0x98], eax
mov dword [rsp + 0x9c], eax
mov rax, qword [rsp + 0x530]
lea r8, [rsp + 0x90]
mov rdx, qword [rax + rbx]
mov rcx, rbp
call fcn.004360a8
test al, al
je 0x456649
cmp dword [rsp + 0x98], 1
jne 0x456649
mov rax, qword [rsp + 0x90]
mov edx, dword [rax]
lea rcx, [rsp + 0x100]
call fcn.00455284
nop
mov rcx, qword [rsp + 0x90]
call fcn.0040237c
inc r13d
add rbx, 8
cmp r13d, dword [rsp + 0x538]
jb 0x4565cd
xor ebx, ebx
jmp 0x45666d
lea rax, str.Unsupported_archive_type
mov qword [rsp + 0x8d0], rax
lea rdx, [0x0047c020]
lea rcx, [rsp + 0x8d0]
call sub.msvcrt.dll__CxxThrowException
nop
cmp dil, bl
jne 0x456695
lea rcx, [rsp + 0x2c0]
call fcn.00410f8c
cmp al, bl
jne 0x456695
mov rax, qword [rsp + 0x2c0]
cmp eax, 9
je 0x456695
cmp eax, 7
jne 0x4566ca
lea rcx, [rsp + 0x110]
call fcn.0040d99c
cmp eax, ebx
je 0x4566c2
mov dword [rsp + 0x8d0], eax
lea rdx, [0x0047c188]
lea rcx, [rsp + 0x8d0]
call sub.msvcrt.dll__CxxThrowException
int3
mov rax, qword [rsp + 0x2c0]
mov dword [rsp + 0x8d8], ebx
mov r13d, ebx
mov dword [rsp + 0x8e8], ebx
cmp eax, 8
jne 0x45700e
mov rax, qword [0x0047dd18]
cmp rax, rbx
cmovne rsi, rax
mov rcx, rsi
call fcn.00402520
mov rdx, qword [rsi]
lea rcx, str.Libs:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.00402520
mov edi, ebx
cmp dword [rbp + 0x20], ebx
jbe 0x456760
mov r14, rbx
mov edx, edi
mov rcx, rsi
call fcn.00453ae0
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.004027ec
mov rcx, rax
call fcn.00402520
inc edi
add r14, 8
cmp edi, dword [rbp + 0x20]
jb 0x45671c
xor ebx, ebx
mov rcx, rsi
call fcn.00402520
mov rdx, qword [rsi]
lea rcx, str.Formats:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.00402520
lea rcx, str.KSNFMGOPBELHXCcamr
call sub.msvcrt.dll_strlen
mov r14, rax
mov qword [rsp + 0x148], rax
lea rcx, str.wudn
call sub.msvcrt.dll_strlen
mov r15, rax
mov qword [rsp + 0xc8], rax
mov dword [rsp + 0x8d0], ebx
cmp dword [rbp + 0x58], ebx
jbe 0x456b60
mov rcx, rbx
mov qword [rsp + 0x140], rbx
mov r13d, 0x20
mov rax, qword [rbp + 0x50]
mov rdi, qword [rcx + rax]
mov edx, dword [rdi + 0x58]
mov rcx, rsi
call fcn.00453ae0
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 0x456838
lea r14, str.KSNFMGOPBELHXCcamr
mov r13, qword [rsp + 0x148]
bt dword [rdi], ebx
jae 0x45681a
mov al, byte [r14]
jmp 0x45681c
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 0x456810
mov r13d, 0x20
mov rdx, qword [rsi]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_fputc]
cmp dword [rdi + 4], 0
je 0x456895
xor ebx, ebx
test r15d, r15d
je 0x45687b
lea r14, str.wudn
bt dword [rdi + 4], ebx
jae 0x456863
mov al, byte [r14]
jmp 0x456865
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 0x456858
mov edx, dword [rdi + 4]
shr edx, 0x1b
mov rcx, rsi
call fcn.00402668
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.004027ec
cmp ebx, 8
jae 0x4568cf
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 0x4568be
mov rdx, qword [rsi]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_fputc]
lea rcx, [rsp + 0x90]
call fcn.00403558
nop
xor ebx, ebx
cmp dword [rdi + 0x30], ebx
jbe 0x4569a5
xor r15d, r15d
test ebx, ebx
je 0x456908
lea rcx, [rsp + 0x90]
call fcn.00403dbc
mov rax, qword [rdi + 0x28]
mov r14, qword [r15 + rax]
mov rdx, r14
lea rcx, [rsp + 0x90]
call fcn.004039b8
cmp dword [r14 + 0x18], 0
je 0x456996
lea rdx, [0x00463950]
lea rcx, [rsp + 0x90]
call fcn.004039fc
lea rdx, [r14 + 0x10]
lea rcx, [rsp + 0x90]
call fcn.004039b8
mov r11d, dword [rsp + 0x98]
cmp dword [rsp + 0x9c], r11d
jne 0x456973
lea rcx, [rsp + 0x90]
call fcn.004032bc
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 0x4568f7
mov ebx, dword [rsp + 0x98]
mov rdx, qword [rsp + 0x90]
mov rcx, rsi
call fcn.004027ec
cmp ebx, 0xd
jae 0x4569db
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 0x4569ca
mov rdx, qword [rsi]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_fputc]
xor ebx, ebx
cmp dword [rdi + 0x44], ebx
je 0x456a15
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.00402668
mov rdx, qword [rax]
mov ecx, r13d
call qword [sym.imp.msvcrt.dll_fputc]
mov r15d, ebx
cmp dword [rdi + 0x50], ebx
jbe 0x456b01
mov r13, rbx
cmp r15d, ebx
je 0x456a39
mov rdx, qword [rsi]
lea rcx, [0x004663e8]
call qword [sym.imp.msvcrt.dll_fputs]
mov rax, qword [rdi + 0x48]
mov rbx, qword [r13 + rax]
mov qword [rsp + 0x188], rbx
xor r14d, r14d
cmp qword [rbx + 8], r14
jbe 0x456ae7
test r14, r14
je 0x456a6a
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 0x456a86
movzx ecx, cl
mov rdx, qword [rsi]
call qword [sym.imp.msvcrt.dll_fputc]
jmp 0x456ada
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 + 0x188]
inc r14
cmp r14, qword [rbx + 8]
jb 0x456a57
inc r15d
add r13, 8
cmp r15d, dword [rdi + 0x50]
mov ebx, 0
jb 0x456a24
lea r13d, [rbx + 0x20]
mov rcx, rsi
call fcn.00402520
nop
mov rcx, qword [rsp + 0x90]
call fcn.0040237c
mov r14d, dword [rsp + 0x8d0]
inc r14d
mov dword [rsp + 0x8d0], r14d
mov rcx, qword [rsp + 0x140]
add rcx, 8
mov qword [rsp + 0x140], rcx
cmp r14d, dword [rbp + 0x58]
mov r15, qword [rsp + 0xc8]
mov r14, qword [rsp + 0x148]
jb 0x4567cf
mov r13d, dword [rsp + 0x8e8]
mov rcx, rsi
call fcn.00402520
mov rdx, qword [rsi]
lea rcx, str.Codecs:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.00402520
mov r14d, ebx
cmp dword [0x0047da70], ebx
jbe 0x456c93
lea rdi, [0x0047d870]
mov r15d, 0x20
mov rbx, qword [rdi]
mov rdx, qword [rsi]
lea rcx, [0x004604d0]
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 0x456bd1
mov rdx, qword [rsi]
mov ecx, r15d
call qword [sym.imp.msvcrt.dll_fputc]
jmp 0x456bd9
mov rcx, rsi
call fcn.00402668
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.00401c80
mov r8d, 8
lea rdx, [rsp + 0x90]
mov rcx, rsi
call fcn.00453a8c
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.00402520
inc r14d
add rdi, 8
cmp r14d, dword [0x0047da70]
jb 0x456b9c
xor ebx, ebx
jmp 0x456c99
mov r15d, 0x20
mov rax, qword [rbp]
lea rdx, [rsp + 0x8e0]
mov rcx, rbp
call qword [rax + 0x18]
cmp eax, ebx
jne 0x456e2e
mov edi, ebx
cmp dword [rsp + 0x8e0], ebx
jbe 0x456e2e
mov r14, 0xffffffffffffffff
mov edx, edi
mov rcx, rbp
call fcn.00434f0c
mov edx, eax
mov rcx, rsi
call fcn.00453ae0
mov edx, edi
mov rcx, rbp
call fcn.00434ab4
cmp eax, 1
jne 0x456cfa
mov rdx, qword [rsi]
mov ecx, r15d
call qword [sym.imp.msvcrt.dll_fputc]
jmp 0x456d04
mov edx, eax
mov rcx, rsi
call fcn.00402668
mov edx, edi
mov rcx, rbp
call fcn.00434f3c
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.00434f28
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 + 0x8d0]
mov edx, edi
mov rcx, rbp
call fcn.00434f50
mov cl, byte [rsp + 0x8d0]
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 + 0x8e8]
mov edx, edi
mov rcx, rbp
call fcn.00434b3c
mov rcx, qword [rsp + 0x8e8]
cmp eax, ebx
cmovne rcx, r14
mov qword [rsp + 0x8e8], rcx
lea rdx, [rsp + 0xc8]
call fcn.00401c80
mov r8d, 8
lea rdx, [rsp + 0xc8]
mov rcx, rsi
call fcn.00453a8c
mov r8d, edi
lea rdx, [rsp + 0x90]
mov rcx, rbp
call fcn.00434bc4
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.00402520
mov rcx, qword [rsp + 0x90]
call fcn.0040237c
inc edi
cmp edi, dword [rsp + 0x8e0]
mov ebx, 0
jb 0x456cc9
mov rcx, rsi
call fcn.00402520
mov rdx, qword [rsi]
lea rcx, str.Hashers:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.00402520
mov r14d, ebx
cmp dword [0x0047da74], ebx
jbe 0x456f13
lea rdi, [0x0047d7f0]
mov rbx, qword [rdi]
mov rdx, qword [rsi]
lea rcx, [0x004604d0]
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.00401b24
mov r8d, 4
lea rdx, [rsp + 0x90]
mov rcx, rsi
call fcn.00453a8c
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.00401c80
mov r8d, 8
lea rdx, [rsp + 0xc8]
mov rcx, rsi
call fcn.00453a8c
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.00402520
inc r14d
add rdi, 8
cmp r14d, dword [0x0047da74]
jb 0x456e64
xor ebx, ebx
lea rcx, [rbp + 8]
mov rax, qword [rcx]
call qword [rax + 0x18]
mov dword [rsp + 0x8e0], eax
mov edi, ebx
cmp eax, ebx
jbe 0x4581b4
mov edx, edi
mov rcx, rbp
call fcn.00434f1c
mov edx, eax
mov rcx, rsi
call fcn.00453ae0
mov edx, edi
mov rcx, rbp
call fcn.00434dfc
lea rdx, [rsp + 0x90]
mov ecx, eax
call fcn.00401b24
mov r8d, 4
lea rdx, [rsp + 0x90]
mov rcx, rsi
call fcn.00453a8c
mov rdx, qword [rsi]
mov ecx, r15d
call qword [sym.imp.msvcrt.dll_fputc]
mov edx, edi
mov rcx, rbp
call fcn.00434c9c
lea rdx, [rsp + 0x188]
mov rcx, rax
call fcn.00401c80
mov r8d, 8
lea rdx, [rsp + 0x188]
mov rcx, rsi
call fcn.00453a8c
mov r8d, edi
lea rdx, [rsp + 0xc8]
mov rcx, rbp
call fcn.00434d14
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.00402520
mov rcx, qword [rsp + 0xc8]
call fcn.0040237c
inc edi
cmp edi, dword [rsp + 0x8e0]
jb 0x456f2e
mov r14d, dword [rsp + 0x8d8]
xor ebx, ebx
jmp 0x4581bc
cmp eax, 7
jne 0x45707f
mov rax, qword [0x0047dd18]
cmp rax, rbx
cmovne rsi, rax
mov r9, qword [rsi]
mov r8d, dword [rsp + 0x550]
lea rdx, [rsp + 0x340]
lea rcx, [rsp + 0x110]
call fcn.0044d308
mov r13d, eax
cmp eax, 1
jne 0x4581af
mov rcx, rsi
call fcn.00402520
mov rdx, qword [0x0047dd20]
cmp rdx, rbx
je 0x457071
mov rdx, qword [rdx]
lea rcx, str._nDecoding_ERROR_n
call qword [sym.imp.msvcrt.dll_fputs]
mov r14d, 2
mov r13d, ebx
jmp 0x4581bc
cmp dil, bl
jne 0x4575fc
cmp eax, 6
je 0x4575fc
lea rcx, [rsp + 0x2c0]
call fcn.00410f8c
cmp al, bl
je 0x4573bd
cmp byte [rsp + 0x474], bl
je 0x4570cc
cmp dword [rsp + 0x480], ebx
jne 0x4570cc
lea rdx, str.7zCon.sfx
lea rcx, [rsp + 0x478]
call fcn.004038b4
lea rax, [0x00464868]
mov qword [rsp + 0x560], rax
mov edx, 0xc8
lea rcx, [rsp + 0x568]
call fcn.00450690
nop
mov byte [rsp + 0x650], bl
mov qword [rsp + 0x658], rbx
mov byte [rsp + 0x660], bl
mov byte [rsp + 0x661], bl
lea rcx, [rsp + 0x668]
call fcn.00403558
nop
mov rax, qword [0x0047dd18]
mov qword [rsp + 0x640], rax
mov rax, qword [0x0047dd20]
mov qword [rsp + 0x648], rax
mov qword [rsp + 0x630], r14
cmp byte [rsp + 0x2d8], bl
je 0x457153
cmp dword [rsp + 0x2e8], ebx
je 0x457153
mov bl, 1
mov byte [rsp + 0x661], bl
lea rdx, [rsp + 0x2e0]
lea rcx, [rsp + 0x668]
call fcn.004037a4
lea rcx, [rsp + 0x680]
call fcn.00455010
nop
mov eax, dword [rsp + 0x54c]
mov dword [rsp + 0x780], eax
mov eax, dword [rsp + 0x8d0]
mov dword [rsp + 0x77c], eax
test r14, r14
je 0x4571a9
lea eax, [r15 - 1]
mov dword [rsp + 0x764], eax
mov byte [rsp + 0x7f1], bl
xor r15d, r15d
cmp byte [rsp + 0x2d8], r15b
je 0x4571d1
cmp dword [rsp + 0x2e8], r15d
jne 0x4571d1
mov byte [rsp + 0x808], 1
jmp 0x4571d9
mov byte [rsp + 0x808], r15b
lea rdx, [rsp + 0x2e0]
lea rcx, [rsp + 0x7f8]
call fcn.004037a4
mov r11b, byte [rsp + 0x4a0]
mov byte [rsp + 0x778], r11b
mov r9, r14
mov r8, qword [0x0047dd20]
mov rdx, qword [0x0047dd18]
lea rcx, [rsp + 0x690]
call fcn.00454140
mov dword [rsp + 0x90], r15d
lea rcx, [rsp + 0x98]
call fcn.00402e0c
mov qword [rsp + 0xa8], r15
mov dword [rsp + 0xb0], r15d
mov dword [rsp + 0xb4], r15d
mov byte [rsp + 0x40], 1
lea rax, [rsp + 0x680]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x560]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x90]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x3a8]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x298]
lea r8, [rsp + 0x2c8]
lea rdx, [rsp + 0xf0]
mov rcx, rbp
call fcn.0044636c
mov r13d, eax
cmp qword [rsp + 0x758], r15
je 0x4572be
mov dl, 1
lea rcx, [rsp + 0x690]
call fcn.00458e24
mov r9, qword [0x0047dd18]
mov rax, r9
cmp r9, r15
cmove rax, qword [0x0047dd20]
mov byte [rsp + 0x28], 1
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x90]
lea rdx, [rsp + 0x690]
mov ecx, r13d
call fcn.0045441c
mov r14d, eax
movsxd rbx, dword [rsp + 0xb0]
mov rdi, rbx
cmp ebx, r15d
je 0x457339
shl rdi, 3
add ebx, 0xffffffff
sub rdi, 8
mov rcx, qword [rsp + 0xa8]
mov rsi, qword [rdi + rcx]
cmp rsi, r15
je 0x457334
mov rcx, qword [rsi]
call fcn.0040237c
mov rcx, rsi
call fcn.0040237c
cmp ebx, r15d
jne 0x45730c
mov rcx, qword [rsp + 0xa8]
call fcn.0040237c
mov rcx, qword [rsp + 0x98]
call fcn.0040237c
nop
lea rax, [0x00466060]
mov qword [rsp + 0x680], rax
lea rax, [0x00466050]
mov qword [rsp + 0x688], rax
mov rcx, qword [rsp + 0x7f8]
call fcn.0040237c
lea rcx, [rsp + 0x690]
call fcn.004541d0
nop
lea rax, [0x00464868]
mov qword [rsp + 0x560], rax
mov rcx, qword [rsp + 0x668]
call fcn.0040237c
lea rcx, [rsp + 0x568]
call fcn.00458f74
xor ebx, ebx
jmp 0x4581bc
cmp dword [rsp + 0x2c0], 9
jne 0x4575a0
lea rcx, [rsp + 0x680]
call fcn.00455134
nop
cmp r14, rbx
je 0x4573e9
lea eax, [r15 - 1]
mov dword [rsp + 0x75c], eax
mov r9, r14
mov r8, qword [0x0047dd20]
mov rdx, qword [0x0047dd18]
lea rcx, [rsp + 0x688]
call fcn.00454140
mov r11b, byte [rsp + 0x278]
mov byte [rsp + 0x809], r11b
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x810]
call fcn.00402f20
lea rcx, [rsp + 0x90]
call fcn.00402e0c
nop
lea rax, [rsp + 0x680]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x90]
lea r8, [rsp + 0x500]
lea rdx, [rsp + 0x298]
lea rcx, [rsp + 0x110]
call fcn.00430154
mov r13d, eax
mov dword [rsp + 0xc8], ebx
lea rcx, [rsp + 0xd0]
call fcn.00402e0c
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.00402f20
mov r9, qword [0x0047dd18]
mov rcx, r9
cmp r9, rbx
cmove rcx, qword [0x0047dd20]
mov al, byte [rsp + 0x278]
mov byte [rsp + 0x28], al
mov qword [rsp + 0x20], rcx
lea r8, [rsp + 0xc8]
lea rdx, [rsp + 0x688]
mov ecx, r13d
call fcn.0045441c
mov r14d, eax
movsxd rbx, dword [rsp + 0xe8]
mov rdi, rbx
test ebx, ebx
je 0x45752d
shl rdi, 3
add ebx, 0xffffffff
sub rdi, 8
mov rax, qword [rsp + 0xe0]
mov rsi, qword [rax + rdi]
test rsi, rsi
je 0x457529
mov rcx, qword [rsi]
call fcn.0040237c
mov rcx, rsi
call fcn.0040237c
test ebx, ebx
jne 0x457501
mov rcx, qword [rsp + 0xe0]
call fcn.0040237c
mov rcx, qword [rsp + 0xd0]
call fcn.0040237c
nop
mov rcx, qword [rsp + 0x90]
call fcn.0040237c
nop
lea rax, [0x00465d80]
mov qword [rsp + 0x680], rax
mov rcx, qword [rsp + 0x810]
call fcn.0040237c
mov rcx, qword [rsp + 0x7f8]
call fcn.0040237c
mov rcx, qword [rsp + 0x7e8]
call fcn.0040237c
lea rcx, [rsp + 0x688]
call fcn.004541d0
xor ebx, ebx
jmp 0x4581bc
mov rbx, qword [0x0047dd20]
test rbx, rbx
je 0x4575dc
mov rcx, rbx
call fcn.00402520
mov rdx, qword [rbx]
lea rcx, [0x00463918]
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.00402520
mov dword [rsp + 0x8d0], 7
lea rdx, [0x0047c130]
lea rcx, [rsp + 0x8d0]
call sub.msvcrt.dll__CxxThrowException
int3
mov qword [rsp + 0x90], rbx
mov dword [rsp + 0x98], ebx
mov dword [rsp + 0x9c], ebx
mov qword [rsp + 0xc8], rbx
mov dword [rsp + 0xd0], ebx
mov dword [rsp + 0xd4], ebx
cmp byte [rsp + 0x276], bl
je 0x4576f2
lea rcx, [rsp + 0x90]
call fcn.004421a4
mov r13d, 0x10
mov rcx, r13
call fcn.00402350
mov qword [rsp + 0x8e0], rax
cmp rax, rbx
je 0x457672
lea rdx, [rsp + 0x330]
mov rcx, rax
call fcn.004036b4
mov r11, rax
jmp 0x457675
mov r11, rbx
mov eax, dword [rsp + 0x98]
mov rdx, rax
inc eax
mov dword [rsp + 0x98], eax
mov rax, qword [rsp + 0x90]
mov qword [rax + rdx*8], r11
lea rcx, [rsp + 0xc8]
call fcn.004421a4
mov rcx, r13
call fcn.00402350
mov qword [rsp + 0x8e0], rax
cmp rax, rbx
je 0x4576cb
lea rdx, [rsp + 0x330]
mov rcx, rax
call fcn.004036b4
mov r11, rax
jmp 0x4576ce
mov r11, rbx
mov eax, dword [rsp + 0xd0]
mov rcx, rax
inc eax
mov dword [rsp + 0xd0], eax
mov rax, qword [rsp + 0xc8]
mov qword [rax + rcx*8], r11
jmp 0x457877
lea rax, [0x00465a78]
mov qword [rsp + 0x560], rax
mov edx, 0xc8
lea rcx, [rsp + 0x578]
call fcn.00450690
nop
mov dl, byte [rsp + 0x278]
mov al, dl
neg al
sbb rcx, rcx
mov rbx, qword [0x0047dd18]
and rcx, rbx
mov qword [rsp + 0x568], rcx
mov rax, qword [0x0047dd20]
mov qword [rsp + 0x570], rax
mov qword [rsp + 0x640], r14
lea eax, [r15 - 1]
mov dword [rsp + 0x64c], eax
test rbx, rbx
je 0x457777
test dl, dl
je 0x457777
mov rdx, qword [rbx]
lea rcx, str.Scanning_the_drive_for_archives:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rbx
call fcn.00402520
xor ebx, ebx
mov qword [rsp + 0x150], rbx
mov qword [rsp + 0x158], rbx
mov qword [rsp + 0x160], rbx
mov qword [rsp + 0x168], rbx
mov qword [rsp + 0x170], rbx
mov qword [rsp + 0x178], rbx
lea rcx, [rsp + 0x560]
call fcn.0044d40c
lea rcx, [rsp + 0x188]
call fcn.00403558
nop
lea rcx, [rsp + 0x560]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x150]
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 + 0x308]
call fcn.00429118
mov r13d, eax
mov rcx, qword [rsp + 0x188]
call fcn.0040237c
cmp qword [rsp + 0x640], rbx
je 0x45782e
mov dl, 1
lea rcx, [rsp + 0x578]
call fcn.00458e24
cmp r13d, ebx
jne 0x457852
cmp byte [rsp + 0x278], bl
je 0x457852
lea rdx, [rsp + 0x150]
lea rcx, [rsp + 0x560]
call fcn.0044d824
nop
lea rax, [0x00465a78]
mov qword [rsp + 0x560], rax
lea rcx, [rsp + 0x578]
call fcn.00458f74
cmp r13d, ebx
jne 0x4580f6
cmp dil, bl
je 0x457f61
mov ecx, 0x1c8
call fcn.00402350
mov qword [rsp + 0x8e0], rax
cmp rax, rbx
je 0x4578a4
mov rcx, rax
call fcn.00454bdc
mov rdi, rax
jmp 0x4578a7
mov rdi, rbx
mov qword [rsp + 0x8e0], rdi
cmp rdi, rbx
je 0x4578be
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + VariantCopy]
nop
mov al, byte [rsp + 0x2d8]
mov byte [rdi + 0x119], al
lea rcx, [rdi + 0x120]
lea rdx, [rsp + 0x2e0]
call fcn.004037a4
mov r11, qword [0x0047dd20]
lea rbx, [rdi + 0x18]
mov rax, qword [0x0047dd18]
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 + 0x98], 1
seta al
mov byte [rdi + 0x118], al
mov eax, dword [rsp + 0x54c]
mov dword [rdi + 0x1c0], eax
mov eax, dword [rsp + 0x8d0]
mov dword [rdi + 0x1bc], eax
cmp r14, rcx
je 0x45798d
lea eax, [r15 - 1]
mov dword [rdi + 0xf4], eax
lea rcx, [rsp + 0x1b0]
call fcn.00453964
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 + 0x350]
lea rcx, [rsp + 0x1b0]
call fcn.00454040
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 + 0x2c0], 3
sete byte [rsp + 0x1fb]
lea rdx, [rsp + 0x340]
lea rcx, [rsp + 0x200]
call fcn.00411dcc
lea rcx, [rsp + 0x188]
call fcn.00403558
nop
lea rcx, [rsp + 0x820]
call fcn.0042de84
nop
mov r14, r15
cmp dword [rsp + 0x2f8], r15d
je 0x457aaa
lea r14, [rsp + 0x820]
lea r8, [rsp + 0x2f0]
lea rdx, [rsp + 0x110]
lea rcx, [rsp + 0x820]
call fcn.0042f61c
cmp eax, r15d
je 0x457aaa
mov dword [rsp + 0x8d0], eax
lea rdx, [0x0047c188]
lea rcx, [rsp + 0x8d0]
call sub.msvcrt.dll__CxxThrowException
int3
mov rax, qword [rsp + 0x298]
mov rcx, qword [rax]
add rcx, 0x10
lea rax, [rsp + 0x150]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x188]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], rbx
lea rax, [rsp + 0x1b0]
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 + 0x100]
lea rdx, [rsp + 0xf0]
mov rcx, rbp
call fcn.0042adb4
mov r13d, eax
cmp qword [rbx + 0xd0], r15
je 0x457b38
lea rcx, [rbx + 8]
mov dl, 1
call fcn.00458e24
cmp dword [rsp + 0x190], r15d
je 0x457b95
mov rsi, qword [0x0047dd20]
cmp rsi, r15
je 0x457b89
mov rbx, qword [rsp + 0x188]
mov rcx, rsi
call fcn.00402520
mov rdx, qword [rsi]
lea rcx, str.ERROR:
call qword [sym.imp.msvcrt.dll_fputs]
mov rcx, rsi
call fcn.00402520
mov rdx, rbx
mov rcx, rsi
call fcn.004027ec
mov rcx, rax
call fcn.00402520
mov eax, 0x80004005
cmp r13d, r15d
cmove r13d, eax
mov rsi, qword [0x0047dd18]
mov bl, r15b
cmp rsi, r15
je 0x457c04
mov rcx, rsi
call fcn.00402520
cmp qword [rdi + 0x168], 1
jbe 0x457c04
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.00402698
mov rcx, rax
call fcn.00402520
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.00402698
mov rcx, rax
call fcn.00402520
cmp qword [rdi + 0x180], r15
je 0x457c3b
mov bl, 1
cmp rsi, r15
je 0x457c3b
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.00402698
mov rcx, rax
call fcn.00402520
cmp qword [rdi + 0x188], r15
je 0x457c76
mov bl, 1
cmp rsi, r15
je 0x457cec
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.00402698
mov rcx, rax
call fcn.00402520
cmp rsi, r15
je 0x457cec
cmp qword [rdi + 0x190], r15
je 0x457cab
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.00402698
mov rcx, rax
call fcn.00402520
cmp qword [rdi + 0x1a0], r15
je 0x457cec
mov rcx, rsi
call fcn.00402520
cmp qword [rdi + 0x1a0], r15
je 0x457cec
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.00402698
mov rcx, rax
call fcn.00402520
cmp qword [rdi + 0x198], r15
je 0x457d34
mov bl, 1
cmp rsi, r15
je 0x457d39
mov rcx, rsi
call fcn.00402520
cmp qword [rdi + 0x198], r15
je 0x457d39
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.00402698
mov rcx, rax
call fcn.00402520
cmp bl, r15b
je 0x457d44
mov dword [rsp + 0x8d8], 2
cmp rsi, r15
je 0x457ef8
cmp qword [rdi + 0x188], r15
jne 0x457ebf
cmp qword [rdi + 0x1a8], r15
jne 0x457ebf
cmp r13d, r15d
jne 0x457ef8
mov rax, qword [rsp + 0x170]
cmp rax, r15
je 0x457dad
mov rdx, qword [rsi]
lea rcx, str.Folders:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x170]
mov rcx, rsi
call fcn.00402698
mov rcx, rax
call fcn.00402520
mov rax, qword [rsp + 0x170]
cmp qword [rsp + 0x178], 1
jne 0x457dcb
cmp rax, r15
jne 0x457dcb
cmp qword [rsp + 0x180], r15
je 0x457e4d
mov rdx, qword [rsi]
lea rcx, str.Files:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x178]
mov rcx, rsi
call fcn.00402698
mov rcx, rax
call fcn.00402520
cmp qword [rsp + 0x180], r15
je 0x457e4d
mov rdx, qword [rsi]
lea rcx, str.Alternate_Streams:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x180]
mov rcx, rsi
call fcn.00402698
mov rcx, rax
call fcn.00402520
mov rdx, qword [rsi]
lea rcx, str.Alternate_Streams_Size:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x160]
mov rcx, rsi
call fcn.00402698
mov rcx, rax
call fcn.00402520
mov rdx, qword [rsi]
lea rcx, str.Size:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x158]
mov rcx, rsi
call fcn.00402698
mov rbx, rax
mov rcx, rax
call fcn.00402520
mov rdx, qword [rbx]
lea rcx, str.Compressed:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x168]
mov rcx, rbx
call fcn.00402698
mov rcx, rax
call fcn.00402520
cmp r14, r15
je 0x457ef8
mov rcx, rsi
call fcn.00402520
lea rdx, [rsp + 0x820]
mov rcx, rsi
call fcn.0044fb1c
jmp 0x457ef8
mov rcx, rsi
call fcn.00402520
cmp qword [rdi + 0x1a8], r15
je 0x457ef8
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.00402698
mov rcx, rax
call fcn.00402520
nop
lea rax, fcn.0042d834
mov qword [rsp + 0x820], rax
mov rcx, qword [rsp + 0x880]
call fcn.0040237c
mov rcx, qword [rsp + 0x870]
call fcn.0040237c
lea rcx, [rsp + 0x828]
call fcn.0042dbf4
nop
mov rcx, qword [rsp + 0x188]
call fcn.0040237c
nop
lea rcx, [rsp + 0x1b0]
call fcn.00455214
nop
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x10]
mov r14d, dword [rsp + 0x8d8]
jmp 0x45810e
mov qword [rsp + 0x8e8], rbx
mov qword [rsp + 0x8e0], rbx
mov al, byte [rsp + 0x2a8]
mov byte [rsp + 0x8d0], al
mov al, byte [rsp + 0x2a9]
mov byte [rsp + 0x8d1], al
mov rax, qword [rsp + 0x298]
mov rcx, qword [rax]
add rcx, 0x10
lea rax, [rsp + 0x8e0]
mov qword [rsp + 0x80], rax
lea rax, [rsp + 0x8e8]
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x340]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x2e0]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0x2d8]
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 + 0x39a]
mov byte [rsp + 0x40], al
mov al, byte [rsp + 0x380]
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 + 0x276]
mov byte [rsp + 0x20], al
lea r9, [rsp + 0x100]
lea r8, [rsp + 0xf0]
mov rdx, rbp
lea rcx, [rsp + 0x8d0]
call fcn.00451de4
mov r13d, eax
mov al, byte [rsp + 0x278]
cmp al, bl
je 0x4580a9
cmp qword [rsp + 0x8e0], rbx
jbe 0x4580a9
mov rcx, rsi
call fcn.00402520
mov rdx, qword [0x0047d050]
lea rcx, str.Warnings:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x8e0]
mov rcx, rsi
call fcn.00402698
mov rcx, rax
call fcn.00402520
mov al, byte [rsp + 0x278]
cmp qword [rsp + 0x8e8], rbx
jbe 0x458103
cmp al, bl
je 0x4580eb
mov rcx, rsi
call fcn.00402520
mov rdx, qword [0x0047d050]
lea rcx, str.Errors:
call qword [sym.imp.msvcrt.dll_fputs]
mov rdx, qword [rsp + 0x8e8]
mov rcx, rsi
call fcn.00402698
mov rcx, rax
call fcn.00402520
mov r14d, 2
xor r15d, r15d
jmp 0x45810e
mov r14d, dword [rsp + 0x8d8]
xor r15d, r15d
jmp 0x45810e
mov r14d, dword [rsp + 0x8d8]
xor r15d, r15d
movsxd rbx, dword [rsp + 0xd0]
mov rdi, rbx
cmp ebx, r15d
je 0x45814f
shl rdi, 3
add ebx, 0xffffffff
sub rdi, 8
mov rax, qword [rsp + 0xc8]
mov rsi, qword [rax + rdi]
cmp rsi, r15
je 0x45814a
mov rcx, qword [rsi]
call fcn.0040237c
mov rcx, rsi
call fcn.0040237c
cmp ebx, r15d
jne 0x458122
mov rcx, qword [rsp + 0xc8]
call fcn.0040237c
nop
movsxd rbx, dword [rsp + 0x98]
mov rdi, rbx
cmp ebx, r15d
je 0x45819e
shl rdi, 3
add ebx, 0xffffffff
sub rdi, 8
mov rax, qword [rsp + 0x90]
mov rsi, qword [rdi + rax]
cmp rsi, r15
je 0x458199
mov rcx, qword [rsi]
call fcn.0040237c
mov rcx, rsi
call fcn.0040237c
cmp ebx, r15d
jne 0x458171
mov rcx, qword [rsp + 0x90]
call fcn.0040237c
xor ebx, ebx
jmp 0x4581bc
mov r14d, ebx
jmp 0x4581bc
mov r14d, dword [rsp + 0x8d8]
cmp byte [rsp + 0x27c], bl
je 0x4581d3
cmp qword [0x0047dd18], rbx
je 0x4581d3
call fcn.00453d7c
cmp r13d, ebx
je 0x4581f5
mov dword [rsp + 0x8d0], r13d
lea rdx, [0x0047c188]
lea rcx, [rsp + 0x8d0]
call sub.msvcrt.dll__CxxThrowException
nop
mov rcx, qword [rsp + 0x100]
call fcn.0040237c
nop
movsxd rbx, dword [rsp + 0xf8]
mov rdi, rbx
test ebx, ebx
je 0x458230
shl rdi, 3
sub rdi, 8
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rdi + rax]
call fcn.0040237c
add ebx, 0xffffffff
jne 0x458216
mov rcx, qword [rsp + 0xf0]
call fcn.0040237c
nop
mov rcx, rbp
call fcn.00436064
nop
lea rcx, [rsp + 0x110]
call fcn.004548d0
nop
mov rcx, qword [rsp + 0x260]
call fcn.0040237c
lea rcx, [rsp + 0x220]
call fcn.00401874
nop
lea rcx, [rsp + 0x270]
call fcn.004558bc
nop
movsxd rbx, dword [rsp + 0xc0]
mov rdi, rbx
test ebx, ebx
je 0x4582bd
shl rdi, 3
add ebx, 0xffffffff
sub rdi, 8
mov rax, qword [rsp + 0xb8]
mov rsi, qword [rdi + rax]
test rsi, rsi
je 0x4582b9
mov rcx, qword [rsi]
call fcn.0040237c
mov rcx, rsi
call fcn.0040237c
test ebx, ebx
jne 0x458291
mov rcx, qword [rsp + 0xb8]
call fcn.0040237c
mov eax, r14d
add rsp, 0x890
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbp
pop rbx
ret