Function at 0x456a7c
Capabilities:
Accept command line arguments

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
sub rsp, 0x588
mov qword [rsp + 0x1c0], 0xfffffffffffffffe
xor ebx, ebx
mov qword [rsp + 0x70], rbx
mov dword [rsp + 0x78], ebx
mov dword [rsp + 0x7c], ebx
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov rdx, rax
lea rcx, [rsp + 0xb0]
call fcn.0040321c
nop
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0xb0]
call fcn.0040122c
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
mov r13d, 0xffffffff
mov eax, dword [rsp + 0x78]
cmp eax, ebx
jbe 0x456b2e
mov rcx, qword [rsp + 0x70]
mov rdi, qword [rcx]
cmp rdi, rbx
je 0x456b12
mov rcx, qword [rdi]
call sub.msvcrt.dll_free
mov rcx, rdi
call sub.msvcrt.dll_free
mov eax, dword [rsp + 0x78]
mov rcx, qword [rsp + 0x70]
lea r8d, [rax - 1]
shl r8, 3
lea rdx, [rcx + 8]
call sub.msvcrt.dll_memmove
mov eax, dword [rsp + 0x78]
add eax, r13d
mov dword [rsp + 0x78], eax
cmp eax, ebx
jne 0x456b8f
xor r9d, r9d
lea r8, [0x00463fe0]
lea rdx, str.Specify_command
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
nop
movsxd rdi, dword [rsp + 0x78]
mov rsi, rdi
cmp edi, ebx
je 0x457d46
shl rsi, 3
add edi, r13d
sub rsi, 8
mov rax, qword [rsp + 0x70]
mov rbp, qword [rsi + rax]
cmp rbp, rbx
je 0x456b86
mov rcx, qword [rbp]
call sub.msvcrt.dll_free
mov rcx, rbp
call sub.msvcrt.dll_free
cmp edi, ebx
jne 0x456b60
jmp 0x457d46
lea rcx, [rsp + 0x2d0]
call fcn.0045674c
nop
lea rcx, [rsp + 0x140]
call fcn.00401148
nop
lea r8, [rsp + 0x2d0]
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x140]
call fcn.00410c0c
lea rdx, [rsp + 0x2d0]
lea rcx, [rsp + 0x140]
call fcn.004122bc
mov ecx, 0x78
call fcn.00403b94
mov qword [rsp + 0x5c0], rax
cmp rax, rbx
je 0x456bfe
mov rcx, rax
call fcn.0045618c
mov rdi, rax
jmp 0x456c01
mov rdi, rbx
mov qword [rsp + 0xc0], rbx
mov rdx, rbx
mov qword [rsp + 0xc8], rbx
mov qword [rsp + 0xd0], rbx
mov dword [rsp + 0xd8], ebx
mov dword [rsp + 0xdc], ebx
mov qword [rsp + 0xe0], rbx
mov dword [rsp + 0xe8], ebx
mov dword [rsp + 0xec], ebx
cmp rdi, rbx
je 0x456c73
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + VariantCopyInd]
mov rcx, qword [rsp + 0xc0]
cmp rcx, rbx
je 0x456c6b
mov rax, qword [rcx]
call qword [rax + InitCommonControls]
mov rdx, qword [rsp + 0xc8]
jmp 0x456c73
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0xc0], rdi
mov rax, rdi
lea rcx, [rdi + 8]
neg rax
sbb rsi, rsi
and rsi, rcx
je 0x456c9e
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopyInd]
mov rdx, qword [rsp + 0xc8]
cmp rdx, rbx
je 0x456cac
mov rax, qword [rdx]
mov rcx, rdx
call qword [rax + InitCommonControls]
mov qword [rsp + 0xc8], rsi
mov qword [rsp + 0x5d8], rdi
mov al, byte [rsp + 0x2d1]
mov byte [rdi + 0x70], al
mov al, byte [rsp + 0x2d2]
mov byte [rdi + 0x71], al
mov rcx, rdi
call fcn.0042bc58
cmp eax, ebx
je 0x456cf8
mov dword [rsp + 0x5c0], eax
lea rdx, [0x0047e380]
lea rcx, [rsp + 0x5c0]
call sub.msvcrt.dll__CxxThrowException
int3
lea rcx, [rsp + 0x300]
call fcn.00410270
mov sil, al
cmp dword [rdi + 0x48], ebx
jne 0x456d9f
cmp al, bl
jne 0x456d26
lea rcx, [rsp + 0x300]
call fcn.0041027c
cmp al, bl
je 0x456d9f
cmp dword [rdi + 0x30], ebx
je 0x456d7b
lea rdx, str.7_Zip_cannot_load_module:
lea rcx, [rsp + 0xb0]
call fcn.00403264
nop
lea rdx, [rdi + 0x28]
lea rcx, [rsp + 0xb0]
call fcn.004035d4
lea rdx, [rsp + 0xb0]
lea rcx, [rsp + 0x80]
call fcn.004032bc
lea rdx, [0x0047e328]
lea rcx, [rsp + 0x80]
call sub.msvcrt.dll__CxxThrowException
nop
lea rax, str.7_Zip_cannot_find_the_code_that_works_with_archives.
mov qword [rsp + 0x5c0], rax
lea rdx, [0x0047e270]
lea rcx, [rsp + 0x5c0]
call sub.msvcrt.dll__CxxThrowException
int3
mov qword [rsp + 0x60], rbx
mov dword [rsp + 0x68], ebx
mov dword [rsp + 0x6c], ebx
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x548]
mov rcx, rdi
call fcn.00435cb0
cmp al, bl
jne 0x456e7f
mov ecx, 0xbbf
call fcn.004554b4
nop
movsxd rsi, dword [rsp + 0x68]
mov rbp, rsi
cmp esi, ebx
je 0x456dfd
shl rbp, 3
add esi, r13d
sub rbp, 8
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + rbp]
call sub.msvcrt.dll_free
cmp esi, ebx
jne 0x456de4
mov rcx, qword [rsp + 0x60]
call sub.msvcrt.dll_free
nop
mov rcx, rdi
call fcn.0042b220
nop
lea rcx, [rsp + 0xc0]
call fcn.00455860
nop
lea rcx, [rsp + 0x140]
call fcn.004018a0
nop
lea rcx, [rsp + 0x2d0]
call fcn.00456490
nop
movsxd rdi, dword [rsp + 0x78]
mov rsi, rdi
cmp edi, ebx
je 0x456e75
shl rsi, 3
add edi, r13d
sub rsi, 8
mov rax, qword [rsp + 0x70]
mov rbp, qword [rsi + rax]
cmp rbp, rbx
je 0x456e71
mov rcx, qword [rbp]
call sub.msvcrt.dll_free
mov rcx, rbp
call sub.msvcrt.dll_free
cmp edi, ebx
jne 0x456e4b
mov ebx, 2
jmp 0x457d46
mov qword [rsp + 0x90], rbx
mov dword [rsp + 0x98], ebx
mov dword [rsp + 0x9c], ebx
mov ebp, ebx
cmp dword [rsp + 0x560], ebx
jbe 0x457035
mov r12, rbx
mov qword [rsp + 0xb0], rbx
mov dword [rsp + 0xb8], ebx
mov dword [rsp + 0xbc], ebx
mov rax, qword [rsp + 0x558]
lea r8, [rsp + 0xb0]
mov rdx, qword [r12 + rax]
mov rcx, rdi
call fcn.0042a728
cmp al, bl
je 0x456f63
cmp dword [rsp + 0xb8], 1
jne 0x456f63
mov r8, qword [rsp + 0xb0]
mov r10d, dword [r8]
mov r9d, ebx
mov edx, dword [rsp + 0x98]
cmp edx, ebx
je 0x456f2b
mov r11, qword [rsp + 0x90]
lea ecx, [rdx + r9]
shr ecx, 1
cmp r10d, dword [r11 + rcx*4]
je 0x456f43
cmp r10d, dword [r11 + rcx*4]
jge 0x456f22
mov edx, ecx
jmp 0x456f26
lea r9d, [rcx + 1]
cmp r9d, edx
jne 0x456f0c
mov r8d, r10d
lea rcx, [rsp + 0x90]
call fcn.0040fed0
mov r8, qword [rsp + 0xb0]
mov rcx, r8
call sub.msvcrt.dll_free
inc ebp
add r12, 8
cmp ebp, dword [rsp + 0x560]
jb 0x456ea7
jmp 0x457035
mov ecx, 0xbbf
call fcn.004554b4
nop
mov rcx, qword [rsp + 0xb0]
call sub.msvcrt.dll_free
nop
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_free
nop
movsxd rsi, dword [rsp + 0x68]
mov rbp, rsi
cmp esi, ebx
je 0x456fb3
shl rbp, 3
add esi, r13d
sub rbp, 8
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + rbp]
call sub.msvcrt.dll_free
cmp esi, ebx
jne 0x456f9a
mov rcx, qword [rsp + 0x60]
call sub.msvcrt.dll_free
nop
mov rcx, rdi
call fcn.0042b220
nop
lea rcx, [rsp + 0xc0]
call fcn.00455860
nop
lea rcx, [rsp + 0x140]
call fcn.004018a0
nop
lea rcx, [rsp + 0x2d0]
call fcn.00456490
nop
movsxd rdi, dword [rsp + 0x78]
mov rsi, rdi
cmp edi, ebx
je 0x45702b
shl rsi, 3
add edi, r13d
sub rsi, 8
mov rax, qword [rsp + 0x70]
mov rbp, qword [rsi + rax]
cmp rbp, rbx
je 0x457027
mov rcx, qword [rbp]
call sub.msvcrt.dll_free
mov rcx, rbp
call sub.msvcrt.dll_free
cmp edi, ebx
jne 0x457001
mov ebx, 2
jmp 0x457d46
cmp sil, bl
jne 0x457052
cmp dword [rsp + 0x300], 9
je 0x457052
cmp dword [rsp + 0x300], 7
jne 0x45782a
lea rcx, [rsp + 0xc0]
call fcn.0040d3d0
cmp eax, ebx
je 0x45707f
mov dword [rsp + 0x5c0], eax
lea rdx, [0x0047e380]
lea rcx, [rsp + 0x5c0]
call sub.msvcrt.dll__CxxThrowException
int3
cmp dword [rsp + 0x300], 7
jne 0x4570c5
xor r8d, r8d
lea rdx, [rsp + 0x380]
lea rcx, [rsp + 0xc0]
call fcn.0044faec
cmp eax, ebx
je 0x457d73
mov dword [rsp + 0x5c0], eax
lea rdx, [0x0047e380]
lea rcx, [rsp + 0x5c0]
call sub.msvcrt.dll__CxxThrowException
int3
cmp sil, bl
je 0x45782a
mov qword [rsp + 0xa0], rbx
mov dword [rsp + 0xa8], ebx
mov dword [rsp + 0xac], ebx
mov qword [rsp + 0x80], rbx
mov dword [rsp + 0x88], ebx
mov dword [rsp + 0x8c], ebx
mov ecx, 0x150
call fcn.00403b94
mov qword [rsp + 0x5c0], rax
cmp rax, rbx
je 0x45711e
mov rcx, rax
call fcn.00455bf4
mov rsi, rax
jmp 0x457121
mov rsi, rbx
mov qword [rsp + 0x5d0], rsi
cmp rsi, rbx
je 0x457138
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + VariantCopyInd]
nop
mov al, byte [rsp + 0x318]
mov byte [rsi + 0xf0], al
lea rcx, [rsi + 0xf8]
lea rdx, [rsp + 0x320]
call fcn.004033ac
mov rcx, rsi
call fcn.004423a4
lea rcx, [rsp + 0xf0]
call fcn.004559cc
nop
movzx eax, word [rsp + 0x390]
mov word [rsp + 0xf0], ax
mov al, byte [rsp + 0x392]
mov byte [rsp + 0xf2], al
mov al, byte [rsp + 0x393]
mov byte [rsp + 0xf3], al
mov eax, dword [rsp + 0x394]
mov dword [rsp + 0xf4], eax
mov eax, dword [rsp + 0x398]
mov dword [rsp + 0xf8], eax
lea rdx, [rsp + 0x3a0]
lea rcx, [rsp + 0x100]
call fcn.004033ac
lea r11, [rsp + 0x110]
lea rcx, [rsp + 0x3b0]
mov rax, qword [rcx]
mov qword [r11], rax
movzx eax, word [rcx + 8]
mov word [r11 + 8], ax
mov al, byte [rcx + 0xa]
mov byte [r11 + 0xa], al
mov al, byte [rsp + 0x2d6]
mov byte [rsp + 0x120], al
mov al, byte [rsp + 0x2d7]
mov byte [rsp + 0x121], al
mov al, byte [rsp + 0x2d9]
mov byte [rsp + 0x122], al
cmp dword [rsp + 0x300], 3
sete byte [rsp + 0x123]
lea rdx, [rsp + 0x380]
lea rcx, [rsp + 0x128]
call fcn.00410460
mov byte [rsp + 0x5c8], bl
lea rcx, [rsp + 0x1d0]
call fcn.004280b8
nop
mov r12, rbx
cmp dword [rsp + 0x340], ebx
je 0x4572a7
lea r12, [rsp + 0x1d0]
lea r8, [rsp + 0x338]
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x1d0]
call fcn.004282e0
cmp eax, ebx
je 0x4572a7
mov dword [rsp + 0x5c0], eax
lea rdx, [0x0047e380]
lea rcx, [rsp + 0x5c0]
call sub.msvcrt.dll__CxxThrowException
int3
mov qword [rsp + 0x180], rbx
mov qword [rsp + 0x188], rbx
mov qword [rsp + 0x190], rbx
mov qword [rsp + 0x198], rbx
mov qword [rsp + 0x1a0], rbx
mov qword [rsp + 0x1a8], rbx
lea rcx, [rsp + 0x1b0]
call fcn.004031b0
nop
mov qword [rsp + 0x30], rbx
lea rcx, [rsp + 0x180]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0x80]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0xa0]
mov r8, rax
xor edx, edx
lea rcx, [rsp + 0x350]
call fcn.00424e24
mov ebp, eax
mov rcx, qword [rsp + 0x1b0]
call sub.msvcrt.dll_free
cmp ebp, ebx
je 0x45734d
mov dword [rsp + 0x5c0], ebp
lea rdx, [0x0047e380]
lea rcx, [rsp + 0x5c0]
call sub.msvcrt.dll__CxxThrowException
int3
cmp dword [rsp + 0xa8], 1
seta al
mov byte [rsi + 0x14a], al
mov rax, qword [rsp + 0x2e0]
mov rcx, qword [rax]
add rcx, 0x10
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x50], rsi
lea rax, [rsp + 0x5c8]
mov qword [rsp + 0x48], rax
mov al, byte [rsp + 0x2da]
mov byte [rsp + 0x40], al
mov qword [rsp + 0x38], r12
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rcx
lea rax, [rsp + 0x80]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0xa0]
lea r8, [rsp + 0x90]
lea rdx, [rsp + 0x60]
mov rcx, rdi
call fcn.00454fcc
cmp eax, ebx
je 0x4575a1
cmp eax, 0x80004004
je 0x457585
cmp byte [rsp + 0x5c8], bl
je 0x457585
mov rcx, qword [rsp + 0x230]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x220]
call sub.msvcrt.dll_free
lea rcx, [rsp + 0x1d8]
call fcn.00428030
nop
lea rcx, [rsp + 0xf0]
call fcn.00455eb4
nop
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + InitCommonControls]
nop
movsxd rsi, dword [rsp + 0x88]
mov rbp, rsi
cmp esi, ebx
je 0x457470
shl rbp, 3
add esi, r13d
sub rbp, 8
mov rax, qword [rsp + 0x80]
mov r12, qword [rax + rbp]
cmp r12, rbx
je 0x45746c
mov rcx, qword [r12]
call sub.msvcrt.dll_free
mov rcx, r12
call sub.msvcrt.dll_free
cmp esi, ebx
jne 0x457443
mov rcx, qword [rsp + 0x80]
call sub.msvcrt.dll_free
nop
movsxd rsi, dword [rsp + 0xa8]
mov rbp, rsi
cmp esi, ebx
je 0x4574be
shl rbp, 3
add esi, r13d
sub rbp, 8
mov rax, qword [rsp + 0xa0]
mov r12, qword [rax + rbp]
cmp r12, rbx
je 0x4574ba
mov rcx, qword [r12]
call sub.msvcrt.dll_free
mov rcx, r12
call sub.msvcrt.dll_free
cmp esi, ebx
jne 0x457491
mov rcx, qword [rsp + 0xa0]
call sub.msvcrt.dll_free
nop
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_free
nop
movsxd rsi, dword [rsp + 0x68]
mov rbp, rsi
cmp esi, ebx
je 0x457503
shl rbp, 3
add esi, r13d
sub rbp, 8
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + rbp]
call sub.msvcrt.dll_free
cmp esi, ebx
jne 0x4574ea
mov rcx, qword [rsp + 0x60]
call sub.msvcrt.dll_free
nop
mov rcx, rdi
call fcn.0042b220
nop
lea rcx, [rsp + 0xc0]
call fcn.00455860
nop
lea rcx, [rsp + 0x140]
call fcn.004018a0
nop
lea rcx, [rsp + 0x2d0]
call fcn.00456490
nop
movsxd rdi, dword [rsp + 0x78]
mov rsi, rdi
cmp edi, ebx
je 0x45757b
shl rsi, 3
add edi, r13d
sub rsi, 8
mov rax, qword [rsp + 0x70]
mov rbp, qword [rsi + rax]
cmp rbp, rbx
je 0x457577
mov rcx, qword [rbp]
call sub.msvcrt.dll_free
mov rcx, rbp
call sub.msvcrt.dll_free
cmp edi, ebx
jne 0x457551
mov ebx, 2
jmp 0x457d46
mov dword [rsp + 0x5c0], eax
lea rdx, [0x0047e380]
lea rcx, [rsp + 0x5c0]
call sub.msvcrt.dll__CxxThrowException
int3
cmp dword [rsi + 0xe4], ebx
jne 0x4575b5
cmp byte [rsi + 0xe8], bl
je 0x45774a
mov rcx, qword [rsp + 0x230]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x220]
call sub.msvcrt.dll_free
lea rcx, [rsp + 0x1d8]
call fcn.00428030
nop
lea rcx, [rsp + 0xf0]
call fcn.00455eb4
nop
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + InitCommonControls]
nop
movsxd rsi, dword [rsp + 0x88]
mov rbp, rsi
cmp esi, ebx
je 0x457635
shl rbp, 3
add esi, r13d
sub rbp, 8
mov rax, qword [rsp + 0x80]
mov r12, qword [rax + rbp]
cmp r12, rbx
je 0x457631
mov rcx, qword [r12]
call sub.msvcrt.dll_free
mov rcx, r12
call sub.msvcrt.dll_free
cmp esi, ebx
jne 0x457608
mov rcx, qword [rsp + 0x80]
call sub.msvcrt.dll_free
nop
movsxd rsi, dword [rsp + 0xa8]
mov rbp, rsi
cmp esi, ebx
je 0x457683
shl rbp, 3
add esi, r13d
sub rbp, 8
mov rax, qword [rsp + 0xa0]
mov r12, qword [rax + rbp]
cmp r12, rbx
je 0x45767f
mov rcx, qword [r12]
call sub.msvcrt.dll_free
mov rcx, r12
call sub.msvcrt.dll_free
cmp esi, ebx
jne 0x457656
mov rcx, qword [rsp + 0xa0]
call sub.msvcrt.dll_free
nop
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_free
nop
movsxd rsi, dword [rsp + 0x68]
mov rbp, rsi
cmp esi, ebx
je 0x4576c8
shl rbp, 3
add esi, r13d
sub rbp, 8
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + rbp]
call sub.msvcrt.dll_free
cmp esi, ebx
jne 0x4576af
mov rcx, qword [rsp + 0x60]
call sub.msvcrt.dll_free
nop
mov rcx, rdi
call fcn.0042b220
nop
lea rcx, [rsp + 0xc0]
call fcn.00455860
nop
lea rcx, [rsp + 0x140]
call fcn.004018a0
nop
lea rcx, [rsp + 0x2d0]
call fcn.00456490
nop
movsxd rdi, dword [rsp + 0x78]
mov rsi, rdi
cmp edi, ebx
je 0x457740
shl rsi, 3
add edi, r13d
sub rsi, 8
mov rax, qword [rsp + 0x70]
mov rbp, qword [rsi + rax]
cmp rbp, rbx
je 0x45773c
mov rcx, qword [rbp]
call sub.msvcrt.dll_free
mov rcx, rbp
call sub.msvcrt.dll_free
cmp edi, ebx
jne 0x457716
mov ebx, 2
jmp 0x457d46
mov rcx, qword [rsp + 0x230]
call sub.msvcrt.dll_free
mov rcx, qword [rsp + 0x220]
call sub.msvcrt.dll_free
lea rcx, [rsp + 0x1d8]
call fcn.00428030
nop
lea rcx, [rsp + 0xf0]
call fcn.00455eb4
nop
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + InitCommonControls]
nop
movsxd rsi, dword [rsp + 0x88]
mov rbp, rsi
cmp esi, ebx
je 0x4577ca
shl rbp, 3
add esi, r13d
sub rbp, 8
mov rax, qword [rsp + 0x80]
mov r12, qword [rax + rbp]
cmp r12, rbx
je 0x4577c6
mov rcx, qword [r12]
call sub.msvcrt.dll_free
mov rcx, r12
call sub.msvcrt.dll_free
cmp esi, ebx
jne 0x45779d
mov rcx, qword [rsp + 0x80]
call sub.msvcrt.dll_free
nop
movsxd rsi, dword [rsp + 0xa8]
mov rbp, rsi
cmp esi, ebx
je 0x457818
shl rbp, 3
add esi, r13d
sub rbp, 8
mov rax, qword [rsp + 0xa0]
mov r12, qword [rax + rbp]
cmp r12, rbx
je 0x457814
mov rcx, qword [r12]
call sub.msvcrt.dll_free
mov rcx, r12
call sub.msvcrt.dll_free
cmp esi, ebx
jne 0x4577eb
mov rcx, qword [rsp + 0xa0]
call sub.msvcrt.dll_free
jmp 0x457d73
lea rcx, [rsp + 0x300]
call fcn.0041027c
cmp al, bl
je 0x457c38
cmp byte [rsp + 0x318], bl
je 0x457856
cmp dword [rsp + 0x328], ebx
je 0x457856
mov sil, 1
jmp 0x457859
mov sil, bl
lea rcx, [rsp + 0x240]
call fcn.00455e44
nop
mov byte [rsp + 0x288], sil
cmp byte [rsp + 0x318], bl
je 0x45788b
cmp dword [rsp + 0x328], ebx
jne 0x45788b
mov byte [rsp + 0x2b0], 1
jmp 0x457892
mov byte [rsp + 0x2b0], bl
lea rdx, [rsp + 0x320]
lea rcx, [rsp + 0x278]
call fcn.004033ac
lea rcx, [rsp + 0x240]
call fcn.00459aac
lea r9, [rsp + 0x308]
lea r8, [rsp + 0x60]
mov rdx, rdi
lea rcx, [rsp + 0x3c8]
call fcn.004372e8
cmp al, bl
je 0x457b66
lea r8, [rsp + 0x308]
mov rdx, rdi
lea rcx, [rsp + 0x3c8]
call fcn.004373dc
cmp al, bl
je 0x457b66
mov byte [rsp + 0x5c0], bl
mov qword [rsp + 0x40], rbx
lea rax, [rsp + 0x240]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x5c0]
mov qword [rsp + 0x30], rax
mov al, byte [rsp + 0x2da]
mov byte [rsp + 0x28], al
lea rax, [rsp + 0x3c8]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x2e0]
lea r8, [rsp + 0x308]
lea rdx, [rsp + 0x60]
mov rcx, rdi
call fcn.0045b8a4
cmp eax, ebx
je 0x457a57
cmp eax, 0x80004004
je 0x457a3b
cmp byte [rsp + 0x5c0], bl
je 0x457a3b
lea rcx, [rsp + 0x240]
call fcn.004556c4
nop
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_free
nop
movsxd rsi, dword [rsp + 0x68]
mov rbp, rsi
cmp esi, ebx
je 0x4579b9
shl rbp, 3
add esi, r13d
sub rbp, 8
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + rbp]
call sub.msvcrt.dll_free
cmp esi, ebx
jne 0x4579a0
mov rcx, qword [rsp + 0x60]
call sub.msvcrt.dll_free
nop
mov rcx, rdi
call fcn.0042b220
nop
lea rcx, [rsp + 0xc0]
call fcn.00455860
nop
lea rcx, [rsp + 0x140]
call fcn.004018a0
nop
lea rcx, [rsp + 0x2d0]
call fcn.00456490
nop
movsxd rdi, dword [rsp + 0x78]
mov rsi, rdi
cmp edi, ebx
je 0x457a31
shl rsi, 3
add edi, r13d
sub rsi, 8
mov rax, qword [rsp + 0x70]
mov rbp, qword [rsi + rax]
cmp rbp, rbx
je 0x457a2d
mov rcx, qword [rbp]
call sub.msvcrt.dll_free
mov rcx, rbp
call sub.msvcrt.dll_free
cmp edi, ebx
jne 0x457a07
mov ebx, 2
jmp 0x457d46
mov dword [rsp + 0x5c8], eax
lea rdx, [0x0047e380]
lea rcx, [rsp + 0x5c8]
call sub.msvcrt.dll__CxxThrowException
int3
cmp dword [rsp + 0x2c0], ebx
jbe 0x457b54
cmp byte [rsp + 0x5c0], bl
jne 0x457a8d
mov dword [rsp + 0x5c8], 0x80004005
lea rdx, [0x0047e380]
lea rcx, [rsp + 0x5c8]
call sub.msvcrt.dll__CxxThrowException
nop
lea rcx, [rsp + 0x240]
call fcn.004556c4
nop
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_free
nop
movsxd rsi, dword [rsp + 0x68]
mov rbp, rsi
cmp esi, ebx
je 0x457ad2
shl rbp, 3
add esi, r13d
sub rbp, 8
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + rbp]
call sub.msvcrt.dll_free
cmp esi, ebx
jne 0x457ab9
mov rcx, qword [rsp + 0x60]
call sub.msvcrt.dll_free
nop
mov rcx, rdi
call fcn.0042b220
nop
lea rcx, [rsp + 0xc0]
call fcn.00455860
nop
lea rcx, [rsp + 0x140]
call fcn.004018a0
nop
lea rcx, [rsp + 0x2d0]
call fcn.00456490
nop
movsxd rdi, dword [rsp + 0x78]
mov rsi, rdi
cmp edi, ebx
je 0x457b4a
shl rsi, 3
add edi, r13d
sub rsi, 8
mov rax, qword [rsp + 0x70]
mov rbp, qword [rsi + rax]
cmp rbp, rbx
je 0x457b46
mov rcx, qword [rbp]
call sub.msvcrt.dll_free
mov rcx, rbp
call sub.msvcrt.dll_free
cmp edi, ebx
jne 0x457b20
mov ebx, 1
jmp 0x457d46
lea rcx, [rsp + 0x240]
call fcn.004556c4
jmp 0x457d73
mov ecx, 0xbbc
call fcn.004554b4
nop
lea rcx, [rsp + 0x240]
call fcn.004556c4
nop
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_free
nop
movsxd rsi, dword [rsp + 0x68]
mov rbp, rsi
cmp esi, ebx
je 0x457bb6
shl rbp, 3
add esi, r13d
sub rbp, 8
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + rbp]
call sub.msvcrt.dll_free
cmp esi, ebx
jne 0x457b9d
mov rcx, qword [rsp + 0x60]
call sub.msvcrt.dll_free
nop
mov rcx, rdi
call fcn.0042b220
nop
lea rcx, [rsp + 0xc0]
call fcn.00455860
nop
lea rcx, [rsp + 0x140]
call fcn.004018a0
nop
lea rcx, [rsp + 0x2d0]
call fcn.00456490
nop
movsxd rdi, dword [rsp + 0x78]
mov rsi, rdi
cmp edi, ebx
je 0x457c2e
shl rsi, 3
add edi, r13d
sub rsi, 8
mov rax, qword [rsp + 0x70]
mov rbp, qword [rsi + rax]
cmp rbp, rbx
je 0x457c2a
mov rcx, qword [rbp]
call sub.msvcrt.dll_free
mov rcx, rbp
call sub.msvcrt.dll_free
cmp edi, ebx
jne 0x457c04
mov ebx, 2
jmp 0x457d46
cmp dword [rsp + 0x300], 9
jne 0x457e30
mov byte [rsp + 0x5d0], bl
lea r9, [rsp + 0x5d0]
lea r8, [rsp + 0x530]
lea rdx, [rsp + 0x2e0]
lea rcx, [rsp + 0xc0]
call fcn.0045917c
cmp eax, ebx
je 0x457d73
cmp eax, 0x80004004
je 0x457d57
cmp byte [rsp + 0x5d0], bl
je 0x457d57
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_free
nop
movsxd rsi, dword [rsp + 0x68]
mov rbp, rsi
cmp esi, ebx
je 0x457cc9
shl rbp, 3
add esi, r13d
sub rbp, 8
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + rbp]
call sub.msvcrt.dll_free
cmp esi, ebx
jne 0x457cb0
mov rcx, qword [rsp + 0x60]
call sub.msvcrt.dll_free
nop
mov rcx, rdi
call fcn.0042b220
nop
lea rcx, [rsp + 0xc0]
call fcn.00455860
nop
lea rcx, [rsp + 0x140]
call fcn.004018a0
nop
lea rcx, [rsp + 0x2d0]
call fcn.00456490
nop
movsxd rdi, dword [rsp + 0x78]
mov rsi, rdi
cmp edi, ebx
je 0x457d41
shl rsi, 3
add edi, r13d
sub rsi, 8
mov rax, qword [rsp + 0x70]
mov rbp, qword [rsi + rax]
cmp rbp, rbx
je 0x457d3d
mov rcx, qword [rbp]
call sub.msvcrt.dll_free
mov rcx, rbp
call sub.msvcrt.dll_free
cmp edi, ebx
jne 0x457d17
mov ebx, 2
mov rcx, qword [rsp + 0x70]
call sub.msvcrt.dll_free
mov eax, ebx
jmp 0x457e54
mov dword [rsp + 0x5c0], eax
lea rdx, [0x0047e380]
lea rcx, [rsp + 0x5c0]
call sub.msvcrt.dll__CxxThrowException
nop
mov rcx, qword [rsp + 0x90]
call sub.msvcrt.dll_free
nop
movsxd rsi, dword [rsp + 0x68]
mov rbp, rsi
cmp esi, ebx
je 0x457daa
shl rbp, 3
add esi, r13d
sub rbp, 8
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + rbp]
call sub.msvcrt.dll_free
cmp esi, ebx
jne 0x457d91
mov rcx, qword [rsp + 0x60]
call sub.msvcrt.dll_free
nop
mov rcx, rdi
call fcn.0042b220
nop
lea rcx, [rsp + 0xc0]
call fcn.00455860
nop
lea rcx, [rsp + 0x140]
call fcn.004018a0
nop
lea rcx, [rsp + 0x2d0]
call fcn.00456490
nop
movsxd rdi, dword [rsp + 0x78]
mov rsi, rdi
cmp edi, ebx
je 0x457e22
shl rsi, 3
add edi, r13d
sub rsi, 8
mov rax, qword [rsp + 0x70]
mov rbp, qword [rsi + rax]
cmp rbp, rbx
je 0x457e1e
mov rcx, qword [rbp]
call sub.msvcrt.dll_free
mov rcx, rbp
call sub.msvcrt.dll_free
cmp edi, ebx
jne 0x457df8
mov rcx, qword [rsp + 0x70]
call sub.msvcrt.dll_free
xor eax, eax
jmp 0x457e54
lea rax, str.Unsupported_command
mov qword [rsp + 0x5c0], rax
lea rdx, [0x0047e250]
lea rcx, [rsp + 0x5c0]
call sub.msvcrt.dll__CxxThrowException
nop
add rsp, 0x588
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret