Function at 0x4da080
Capabilities:
Delete file
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x12c
mov ecx, dword [esp + 0x158]
mov edx, dword [esp + 0x144]
lea eax, [esp + 0x6c]
mov ebp, dword [esp + 0x140]
call fcn.004d19d0
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x154]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x78]
test ecx, ecx
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x40], eax
je 0x4da805
cmp dword [ebp], 1
jle 0x4da0f5
mov eax, dword [esp + 0x144]
mov edx, dword [eax + 0x58]
test edx, edx
je 0x4da690
mov eax, dword [esp + 0x144]
mov eax, dword [eax + 0x4c]
test eax, eax
mov dword [esp + 0x38], eax
je 0x4da420
mov eax, dword [ebp + 0xc]
cmp dword [ebp], eax
jle 0x4daf9f
mov dword [esp + 0x38], 0
jmp 0x4da15c
mov eax, dword [esp + 0x34]
mov dword [esp + 4], str.zstd:__s_is_a_directory____ignored__n
mov ebx, 1
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
mov eax, dword [ebp + 0xc]
or dword [esp + 0x38], ebx
add eax, 1
cmp dword [ebp], eax
mov dword [ebp + 0xc], eax
jle 0x4da460
mov ecx, dword [esp + 0x148]
mov edi, dword [esp + 0x70]
mov esi, dword [esp + 0x7c]
mov eax, dword [ecx + eax*4]
mov dword [esp], eax
mov dword [esp + 0x34], eax
call fcn.004dcf30
test eax, eax
mov ebx, eax
je 0x4da190
mov eax, dword [0x4f7268]
test eax, eax
jg 0x4da121
mov ebx, 1
jmp 0x4da146
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x144]
call fcn.004cfce0
test eax, eax
mov dword [esp + 0x3c], eax
je 0x4da189
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x8c], edi
mov dword [esp + 0x90], 0
mov dword [esp + 0x98], esi
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x40]
test eax, eax
mov dword [esp + 0xa0], eax
je 0x4da340
mov eax, dword [esp + 0x34]
mov edi, dword [esp + 0x40]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x154]
mov dword [esp + 0xa0], edi
mov dword [esp + 0x18], edi
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x144]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x94]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x14], eax
mov eax, ebp
call fcn.004d3df0
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call sub.msvcrt.dll_fclose
test eax, eax
jne 0x4da3d0
mov eax, dword [esp + 0x144]
mov esi, dword [eax + 0x54]
test esi, esi
je 0x4dabc0
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x58], 0x4ff04d
test ecx, ecx
jne 0x4dabd0
mov esi, dword [esp + 0x34]
mov ecx, 0xa
mov edi, 0x4ff04d
repe cmpsb byte [esi], byte es:[edi]
je 0x4da330
mov edx, dword [0x51a068]
test edx, edx
je 0x4da2e0
mov dword [esp + 4], 0
mov dword [esp], 2
call sub.msvcrt.dll_signal
mov edi, dword [esp + 0x34]
lea eax, [esp + 0xf0]
mov dword [0x51a068], 0
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.004dcd20
test eax, eax
jne 0x4dae53
cmp dword [0x4f7268], 1
jle 0x4da330
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
mov dword [esp + 4], str.zstd:_Failed_to_stat__s_while_trying_to_remove_it_n
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
nop
add dword [ebp + 0x10], 1
jmp 0x4da146
mov eax, dword [esp + 0x144]
mov eax, dword [eax + 0x4c]
test eax, eax
mov dword [esp + 0x54], eax
jne 0x4da1f5
mov esi, dword [esp + 0x34]
mov edi, 0x4ff04d
mov ecx, 0xa
mov dword [esp + 0x58], edi
repe cmpsb byte [esi], byte es:[edi]
je 0x4da385
mov esi, dword [esp + 0x154]
mov edi, 0x50014e
mov ecx, 0xb
repe cmpsb byte [esi], byte es:[edi]
jne 0x4daeb4
mov edx, 0x1b6
mov dword [esp + 4], edx
mov edx, dword [esp + 0x154]
lea eax, [ebp + 4]
mov ecx, dword [esp + 0x34]
mov dword [esp], edx
mov edx, dword [esp + 0x144]
call fcn.004d4f40
test eax, eax
mov esi, eax
jne 0x4da4d0
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call sub.msvcrt.dll_fclose
test eax, eax
je 0x4da189
lea esi, [esi]
mov eax, dword [0x4f7268]
test eax, eax
jle 0x4da189
call dword [sym.imp.msvcrt.dll__errno]
mov eax, dword [eax]
mov dword [esp], eax
call sub.msvcrt.dll_strerror
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov ebx, 1
mov dword [esp + 4], str.zstd:__s:__s__n
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
jmp 0x4da146
mov edx, dword [esp + 0x154]
lea eax, [ebp + 4]
xor ecx, ecx
mov dword [esp + 4], 0x1b6
mov dword [esp], edx
mov edx, dword [esp + 0x144]
call fcn.004d4f40
test eax, eax
mov dword [esp + 0x40], eax
je 0x4db17d
mov eax, dword [ebp + 0xc]
cmp dword [ebp], eax
jg 0x4da117
nop
lea esi, [esi]
mov eax, dword [esp + 0x144]
mov eax, dword [eax + 0x4c]
test eax, eax
je 0x4da714
mov eax, dword [ebp + 0x10]
test eax, eax
jle 0x4da4af
cmp dword [ebp], 1
jle 0x4da4af
mov edx, dword [ebp + 0x18]
test edx, edx
je 0x4da4af
cmp dword [0x4f7268], 1
jle 0x4da4af
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 0xc], edx
mov dword [esp + 4], str._d_files_decompressed_:__6zu_bytes_total__n
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x50]
call fcn.004d1650
mov eax, dword [esp + 0x38]
add esp, 0x12c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x154]
mov dword [esp], eax
call fcn.004dcd50
test eax, eax
jne 0x4dafac
mov dword [0x51a068], 0
mov eax, dword [esp + 0x34]
mov dword [esp + 0xa0], esi
mov dword [esp + 0x18], esi
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x154]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x144]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x94]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x14], eax
mov eax, ebp
call fcn.004d3df0
mov edi, dword [0x51a068]
mov dword [esp + 0x44], eax
test edi, edi
je 0x4da58c
mov dword [esp + 4], 0
mov dword [esp], 2
call sub.msvcrt.dll_signal
mov dword [esp], esi
mov dword [0x51a068], 0
call sub.msvcrt.dll_fclose
test eax, eax
je 0x4da6d1
mov eax, dword [0x4f7268]
test eax, eax
jle 0x4da5e6
call dword [sym.imp.msvcrt.dll__errno]
mov eax, dword [eax]
mov dword [esp], eax
call sub.msvcrt.dll_strerror
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x154]
mov dword [esp + 4], str.zstd:__s:__s__n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x44], 1
test ecx, ecx
je 0x4da618
lea eax, [esp + 0xc0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x154]
mov dword [esp], eax
call fcn.004dce20
mov eax, dword [esp + 0x54]
mov dword [esp + 0x44], eax
mov esi, dword [esp + 0x154]
mov edi, 0x50014e
mov ecx, 0xb
repe cmpsb byte [esi], byte es:[edi]
je 0x4da276
lea eax, [esp + 0xf0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x154]
mov dword [esp], eax
call fcn.004dcd20
test eax, eax
jne 0x4dae07
cmp dword [0x4f7268], 1
jle 0x4da276
mov eax, dword [esp + 0x154]
mov dword [esp + 4], str.zstd:_Failed_to_stat__s_while_trying_to_remove_it_n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
jmp 0x4da276
mov ecx, dword [esp + 0x154]
lea edx, [eax + 0x54]
mov eax, ebp
call fcn.004d3ca0
test eax, eax
je 0x4da0f5
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x50]
call fcn.004d1650
mov dword [esp + 0x38], 1
mov eax, dword [esp + 0x38]
add esp, 0x12c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x54]
test eax, eax
jne 0x4dabe0
mov eax, dword [esp + 0x44]
test eax, eax
jne 0x4da618
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call sub.msvcrt.dll_fclose
test eax, eax
jne 0x4da3d0
mov eax, dword [esp + 0x144]
mov edi, dword [eax + 0x54]
test edi, edi
jne 0x4da2b0
jmp 0x4da330
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.msvcrt.dll_fclose
test eax, eax
je 0x4da472
cmp dword [0x4f7268], 0
jle 0x4da749
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.zstd:
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
cmp dword [0x4f7268], 4
jle 0x4da77a
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 0xc], 0xb47
mov dword [esp + 8], 0x4ff030
mov dword [esp + 4], str.Error_defined_at__s__line__i_:__n
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
cmp dword [0x4f7268], 0
jle 0x4da7f9
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], 0x48
mov dword [esp + 4], str.error__i_:
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
cmp dword [0x4f7268], 0
jle 0x4da7f9
call dword [sym.imp.msvcrt.dll__errno]
mov eax, dword [eax]
mov dword [esp], eax
call sub.msvcrt.dll_strerror
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.Write_error_:__s_:_cannot_properly_close_output_file
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
cmp dword [0x4f7268], 0
jle 0x4da7f9
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], 0x4ff164
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
mov dword [esp], 0x48
call sub.msvcrt.dll_exit
mov eax, dword [esp + 0x14c]
test eax, eax
je 0x4da831
mov eax, dword [esp + 0x14c]
mov dword [esp + 8], eax
mov eax, dword [ebp]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x148]
mov dword [esp], eax
call fcn.004ddee0
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp]
mov dword [esp + 0x38], 0
cmp edx, eax
jg 0x4da8d3
jmp 0x4da951
mov edx, eax
mov eax, ebx
call fcn.004d0310
mov dword [esp], esi
mov dword [esp + 0x3c], eax
call fcn.004f1ae0
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x4da939
mov dword [esp], ebx
mov edi, dword [esp + 0x70]
mov esi, dword [esp + 0x7c]
call fcn.004dcf30
test eax, eax
mov dword [esp + 0x34], eax
je 0x4da980
mov edi, dword [0x4f7268]
test edi, edi
jle 0x4da8b3
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], ebx
mov dword [esp + 4], str.zstd:__s_is_a_directory____ignored__n
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
mov dword [esp + 0x34], 1
mov edi, dword [esp + 0x34]
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp]
or dword [esp + 0x38], edi
add eax, 1
cmp edx, eax
mov dword [ebp + 0xc], eax
jle 0x4da951
mov edx, dword [esp + 0x148]
mov ebx, dword [edx + eax*4]
mov eax, dword [esp + 0x14c]
test eax, eax
je 0x4dab20
mov eax, dword [esp + 0x14c]
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.004ddd40
test eax, eax
mov esi, eax
jne 0x4da850
cmp dword [0x4f7268], 1
jle 0x4da939
mov eax, dword [esp + 0x14c]
mov dword [esp + 8], ebx
mov dword [esp + 4], str.zstd:___output_dir_mirror_cannot_decompress__s_into__s_n
mov dword [esp + 0xc], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp]
mov dword [esp + 0x38], 1
add eax, 1
cmp edx, eax
mov dword [ebp + 0xc], eax
jg 0x4da8d3
mov eax, dword [esp + 0x150]
test eax, eax
je 0x4da472
mov eax, dword [esp + 0x148]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004d8bd0
jmp 0x4da472
mov eax, dword [esp + 0x144]
mov edx, ebx
call fcn.004cfce0
test eax, eax
mov dword [esp + 0x44], eax
je 0x4da8b3
mov eax, dword [esp + 0x4c]
mov dword [esp + 0xa8], edi
mov dword [esp + 0xac], 0
mov dword [esp + 0xb4], esi
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x40]
test eax, eax
mov dword [esp + 0xbc], eax
je 0x4dac00
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x40]
mov dword [esp + 0x28], ebx
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x144]
mov dword [esp + 0xbc], edx
mov dword [esp + 0x18], edx
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0xa4]
mov dword [esp], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xb4]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xb8]
mov dword [esp + 0x14], eax
mov eax, ebp
call fcn.004d3df0
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call sub.msvcrt.dll_fclose
test eax, eax
jne 0x4dab70
mov eax, dword [esp + 0x144]
mov eax, dword [eax + 0x54]
test eax, eax
je 0x4db251
mov eax, dword [esp + 0x54]
mov dword [esp + 0x5c], 0x4ff04d
test eax, eax
jne 0x4daf4c
mov ecx, 0xa
mov esi, ebx
mov edi, 0x4ff04d
repe cmpsb byte [esi], byte es:[edi]
je 0x4dab12
mov eax, dword [0x51a068]
test eax, eax
je 0x4daac8
mov dword [esp + 4], 0
mov dword [esp], 2
call sub.msvcrt.dll_signal
lea eax, [esp + 0xf0]
mov dword [esp], ebx
mov dword [0x51a068], 0
mov dword [esp + 4], eax
call fcn.004dcd20
test eax, eax
jne 0x4db05d
cmp dword [0x4f7268], 1
jle 0x4dab12
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], ebx
mov dword [esp + 4], str.zstd:_Failed_to_stat__s_while_trying_to_remove_it_n
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
add dword [ebp + 0x10], 1
mov edi, dword [esp + 0x34]
jmp 0x4da8bf
mov edx, dword [esp + 0x150]
mov eax, ebx
call fcn.004d0310
mov dword [esp + 0x3c], eax
jmp 0x4da865
test byte [esp + 0xf6], 0x80
jne 0x4dab5c
lea eax, [esp + 0xf0]
mov dword [esp + 8], pe_nt_image_headers32
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.004dcdb0
mov dword [esp], ebx
call sub.msvcrt.dll_remove
test eax, eax
je 0x4dab12
nop
lea esi, [esi]
mov eax, dword [0x4f7268]
test eax, eax
jle 0x4da8b3
call dword [sym.imp.msvcrt.dll__errno]
mov eax, dword [eax]
mov dword [esp], eax
call sub.msvcrt.dll_strerror
mov dword [esp + 0xc], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], ebx
mov dword [esp + 4], str.zstd:__s:__s__n
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
mov dword [esp + 0x34], 1
mov edi, dword [esp + 0x34]
jmp 0x4da8bf
mov eax, dword [esp + 0x44]
test eax, eax
je 0x4da330
lea esi, [esi]
mov ebx, dword [esp + 0x44]
jmp 0x4da146
lea eax, [esp + 0xc0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x154]
mov dword [esp], eax
call fcn.004dce20
jmp 0x4da6dd
mov eax, dword [esp + 0x144]
mov eax, dword [eax + 0x4c]
test eax, eax
mov dword [esp + 0x58], eax
jne 0x4da9e7
mov edi, 0x4ff04d
mov ecx, 0xa
mov esi, ebx
mov dword [esp + 0x5c], edi
repe cmpsb byte [esi], byte es:[edi]
je 0x4dac40
mov esi, dword [esp + 0x3c]
mov edi, 0x50014e
mov ecx, 0xb
repe cmpsb byte [esi], byte es:[edi]
jne 0x4db101
mov edx, 0x1b6
mov dword [esp + 4], edx
mov edx, dword [esp + 0x3c]
lea eax, [ebp + 4]
mov ecx, ebx
mov dword [esp], edx
mov edx, dword [esp + 0x144]
call fcn.004d4f40
test eax, eax
mov esi, eax
je 0x4db0c6
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call fcn.004dcd50
test eax, eax
jne 0x4db0df
mov dword [0x51a068], 0
mov eax, dword [esp + 0x3c]
mov dword [esp + 0xbc], esi
mov dword [esp + 0x28], ebx
mov dword [esp + 0x18], esi
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x144]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0xa4]
mov dword [esp], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xb4]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xb8]
mov dword [esp + 0x14], eax
mov eax, ebp
call fcn.004d3df0
mov edx, dword [0x51a068]
mov dword [esp + 0x54], eax
test edx, edx
je 0x4dad1d
mov dword [esp + 4], 0
mov dword [esp], 2
call sub.msvcrt.dll_signal
mov dword [esp], esi
mov dword [0x51a068], 0
call sub.msvcrt.dll_fclose
test eax, eax
je 0x4daf60
mov esi, dword [0x4f7268]
test esi, esi
jle 0x4dad75
call dword [sym.imp.msvcrt.dll__errno]
mov eax, dword [eax]
mov dword [esp], eax
call sub.msvcrt.dll_strerror
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 4], str.zstd:__s:__s__n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
mov eax, dword [esp + 0x58]
mov dword [esp + 0x54], 1
test eax, eax
je 0x4dada4
lea eax, [esp + 0xc0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call fcn.004dce20
mov eax, dword [esp + 0x58]
mov dword [esp + 0x54], eax
mov esi, dword [esp + 0x3c]
mov edi, 0x50014e
mov ecx, 0xb
repe cmpsb byte [esi], byte es:[edi]
je 0x4daa61
mov edi, dword [esp + 0x3c]
lea eax, [esp + 0xf0]
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.004dcd20
test eax, eax
jne 0x4dafed
cmp dword [0x4f7268], 1
jle 0x4daa61
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
mov dword [esp + 4], str.zstd:_Failed_to_stat__s_while_trying_to_remove_it_n
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
jmp 0x4daa61
lea eax, [esp + 0xf0]
mov dword [esp], eax
call fcn.004dcd90
test eax, eax
jne 0x4daef8
cmp dword [0x4f7268], 1
jle 0x4da276
mov eax, dword [esp + 0x154]
mov dword [esp + 4], str.zstd:_Refusing_to_remove_non_regular_file__s_n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
jmp 0x4da276
lea eax, [esp + 0xf0]
mov dword [esp], eax
call fcn.004dcd90
test eax, eax
je 0x4daf1a
test byte [esp + 0xf6], 0x80
je 0x4db0a2
mov edi, dword [esp + 0x34]
mov dword [esp], edi
call sub.msvcrt.dll_remove
test eax, eax
je 0x4da330
mov eax, dword [0x4f7268]
test eax, eax
jle 0x4da189
call dword [sym.imp.msvcrt.dll__errno]
mov eax, dword [eax]
mov dword [esp], eax
call sub.msvcrt.dll_strerror
mov dword [esp + 0xc], eax
mov eax, edi
jmp 0x4da3f5
mov eax, dword [esp + 0x34]
lea esi, [esp + 0xc0]
mov dword [esp + 4], esi
mov dword [esp], eax
call fcn.004dcd20
test eax, eax
je 0x4da385
mov dword [esp], esi
call fcn.004dcd90
test eax, eax
je 0x4da385
movzx edx, word [esp + 0xc6]
mov dword [esp + 0x54], 1
jmp 0x4da38a
test byte [esp + 0xf6], 0x80
je 0x4db036
mov eax, dword [esp + 0x154]
mov dword [esp], eax
call sub.msvcrt.dll_remove
jmp 0x4da276
cmp dword [0x4f7268], 1
jle 0x4da330
mov eax, dword [esp + 0x34]
mov dword [esp + 4], str.zstd:_Refusing_to_remove_non_regular_file__s_n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
jmp 0x4da330
mov eax, dword [esp + 0x54]
mov dword [esp + 0x34], eax
mov edi, eax
jmp 0x4da8bf
mov ecx, dword [esp + 0x58]
test ecx, ecx
jne 0x4dafd1
mov edx, dword [esp + 0x54]
test edx, edx
jne 0x4dada4
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call sub.msvcrt.dll_fclose
test eax, eax
jne 0x4dab70
mov eax, dword [esp + 0x144]
mov eax, dword [eax + 0x54]
test eax, eax
jne 0x4daa9b
jmp 0x4dab12
mov dword [esp + 0x38], 0
jmp 0x4da472
mov eax, dword [esp + 0x154]
mov dword [esp + 4], 0x4cfeb0
mov dword [esp], 2
mov dword [0x51a068], eax
call sub.msvcrt.dll_signal
jmp 0x4da4f1
lea eax, [esp + 0xc0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call fcn.004dce20
jmp 0x4daf68
lea eax, [esp + 0xf0]
mov dword [esp], eax
call fcn.004dcd90
test eax, eax
jne 0x4db141
cmp dword [0x4f7268], 1
jle 0x4daa61
mov eax, dword [esp + 0x3c]
mov dword [esp + 4], str.zstd:_Refusing_to_remove_non_regular_file__s_n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
jmp 0x4daa61
lea eax, [esp + 0xf0]
mov dword [esp + 8], pe_nt_image_headers32
mov dword [esp + 4], eax
mov eax, dword [esp + 0x154]
mov dword [esp], eax
call fcn.004dcdb0
jmp 0x4daf06
lea eax, [esp + 0xf0]
mov dword [esp], eax
call fcn.004dcd90
test eax, eax
jne 0x4dab37
cmp dword [0x4f7268], 1
jle 0x4dab12
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], ebx
mov dword [esp + 4], str.zstd:_Refusing_to_remove_non_regular_file__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
jmp 0x4dab12
lea eax, [esp + 0xf0]
mov dword [esp + 8], pe_nt_image_headers32
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call fcn.004dcdb0
jmp 0x4dae78
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call sub.msvcrt.dll_fclose
test eax, eax
je 0x4da8b3
jmp 0x4dab70
mov eax, dword [esp + 0x3c]
mov dword [esp + 4], 0x4cfeb0
mov dword [esp], 2
mov dword [0x51a068], eax
call sub.msvcrt.dll_signal
jmp 0x4dac89
lea esi, [esp + 0xc0]
mov dword [esp], ebx
mov dword [esp + 4], esi
call fcn.004dcd20
test eax, eax
je 0x4dac40
mov dword [esp], esi
call fcn.004dcd90
test eax, eax
je 0x4dac40
movzx edx, word [esp + 0xc6]
mov dword [esp + 0x58], 1
jmp 0x4dac45
test byte [esp + 0xf6], 0x80
je 0x4db15c
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call sub.msvcrt.dll_remove
jmp 0x4daa61
lea eax, [esp + 0xf0]
mov dword [esp + 8], pe_nt_image_headers32
mov dword [esp + 4], eax
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call fcn.004dcdb0
jmp 0x4db14b
cmp dword [0x4f7268], 0
jle 0x4db19e
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.zstd:
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
cmp dword [0x4f7268], 4
jle 0x4db1cf
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 0xc], 0xb3e
mov dword [esp + 8], 0x4ff030
mov dword [esp + 4], str.Error_defined_at__s__line__i_:__n
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
cmp dword [0x4f7268], 0
jle 0x4db245
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], 0x13
mov dword [esp + 4], str.error__i_:
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
cmp dword [0x4f7268], 0
jle 0x4db245
mov eax, dword [esp + 0x154]
mov dword [esp + 4], str.cannot_open__s
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
cmp dword [0x4f7268], 0
jle 0x4db245
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], 0x4ff164
add eax, 0x40
mov dword [esp], eax
call fcn.004cfcb0
mov dword [esp], 0x13
call sub.msvcrt.dll_exit
mov eax, dword [esp + 0x54]
test eax, eax
je 0x4dab12
mov dword [esp + 0x34], eax
mov edi, eax
jmp 0x4da8bf