Function at 0x54aa50
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5ce36c
mov eax, dword fs:[0]
push eax
sub esp, 0x178
mov eax, dword [0x70c0f0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0xd4], ecx
lea ecx, [ebp - 0x154]
call fcn.0045d410
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x35c]
movzx edx, byte [ecx + 0xa4]
test edx, edx
je 0x54ac99
push 0x64a294
lea ecx, [ebp - 0x88]
call fcn.00446660
mov byte [ebp - 4], 1
call fcn.00447430
mov ecx, eax
call fcn.004d633c
push eax
lea ecx, [ebp - 0x70]
call fcn.00446660
mov byte [ebp - 4], 2
call fcn.0045da10
mov ecx, eax
call fcn.0057a500
mov dword [ebp - 0xe0], eax
push 0x64a284
mov eax, dword [ebp - 0xe0]
add eax, 8
push eax
call fcn.00453f30
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x54ab1a
push str.WnZipSfxCon.sfx
lea ecx, [ebp - 0x70]
call fcn.004465f0
jmp 0x54ab61
push str.WnZipSfxWin.sfx
lea ecx, [ebp - 0x70]
call fcn.004465f0
lea edx, [ebp - 0x88]
push edx
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x358]
add ecx, 0xc
sub esp, 0xc
mov edx, esp
mov dword [ebp - 0x184], esp
push ecx
mov ecx, edx
call fcn.0045d6d0
mov dword [ebp - 0x180], eax
mov ecx, dword [ebp - 0xd4]
call fcn.0054a880
cmp dword [ebp - 0xe0], 0
je 0x54ac7e
push 0x1869f
push 0x2710
call fcn.004d9965
add esp, 8
mov dword [ebp - 0x134], eax
call fcn.00447430
mov ecx, eax
call fcn.004d633c
push eax
lea ecx, [ebp - 0x58]
call fcn.00446660
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x134]
cdq
push edx
push eax
lea eax, [ebp - 0xb8]
push eax
call fcn.004da65d
add esp, 0xc
mov dword [ebp - 0x138], eax
mov ecx, dword [ebp - 0x138]
mov dword [ebp - 0x118], ecx
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x118]
push edx
lea ecx, [ebp - 0x58]
call fcn.0044c090
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xb8]
call fcn.00446610
push 0x64a26c
lea ecx, [ebp - 0x58]
call fcn.004465f0
lea ecx, [ebp - 0x58]
call fcn.004465b0
push eax
call fcn.004dac20
add esp, 4
lea eax, [ebp - 0x58]
push eax
mov ecx, dword [ebp - 0xe0]
add ecx, 0x110
call fcn.0045d810
lea ecx, [ebp - 0x58]
call fcn.004465b0
push eax
lea ecx, [ebp - 0x70]
call fcn.004465b0
push eax
call fcn.004d8432
add esp, 8
lea ecx, [ebp - 0x88]
push ecx
mov edx, dword [ebp - 0xd4]
push edx
call fcn.0045da10
mov ecx, eax
call fcn.0057a590
lea ecx, [ebp - 0x58]
call fcn.004465b0
push eax
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x35c]
add ecx, 0xa8
call fcn.00553ad0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x58]
call fcn.00446610
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x70]
call fcn.00446610
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x88]
call fcn.00446610
mov byte [ebp - 0xd5], 1
mov ecx, dword [ebp - 0xd4]
movzx edx, byte [ecx + 0x379]
test edx, edx
je 0x54acb8
mov byte [ebp - 0xd5], 0
lea eax, [ebp - 0x114]
push eax
mov ecx, dword [ebp - 0xd4]
mov ecx, dword [ecx + 0x35c]
add ecx, 0x48
call fcn.00457e40
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0xd4]
mov eax, dword [edx + 0x354]
mov dword [ebp - 0xf0], eax
cmp dword [ebp - 0xf0], 0
je 0x54ad03
mov ecx, dword [ebp - 0xf0]
add ecx, 4
mov dword [ebp - 0xf4], ecx
jmp 0x54ad0d
mov dword [ebp - 0xf4], 0
movzx edx, byte [ebp - 0xd5]
push edx
mov eax, dword [ebp - 0xd4]
movzx ecx, byte [eax + 0x378]
push ecx
mov edx, dword [ebp - 0xf4]
push edx
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x354]
push ecx
lea edx, [ebp - 0x154]
push edx
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x35c]
push ecx
mov edx, dword [ebp - 0xd4]
mov eax, dword [edx + 0x358]
push eax
lea ecx, [ebp - 0x114]
push ecx
mov edx, dword [ebp - 0xd4]
mov eax, dword [edx + 0x350]
push eax
mov ecx, dword [ebp - 0xd4]
mov edx, dword [ecx + 0x34c]
push edx
call fcn.0052e6d0
add esp, 0x28
mov dword [ebp - 0xdc], eax
lea ecx, [ebp - 0x150]
call fcn.00447710
push eax
lea ecx, [ebp - 0x40]
call fcn.0045d880
mov byte [ebp - 4], 6
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x28]
push ecx
call fcn.004db359
add esp, 8
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x28]
call fcn.004465b0
push eax
mov ecx, dword [ebp - 0xd4]
add ecx, 0x2ac
call fcn.00553ad0
lea edx, [ebp - 0x144]
push edx
mov ecx, dword [ebp - 0xd4]
add ecx, 0x294
call fcn.00448520
cmp dword [ebp - 0x154], 0
je 0x54ae56
cmp dword [ebp - 0x154], 0x80004005
je 0x54ae56
cmp dword [ebp - 0x154], 0x80004004
je 0x54ae56
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x11c], eax
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call fcn.00446610
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x40]
call fcn.00446710
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x114]
call fcn.00447680
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x154]
call fcn.0045d520
mov eax, dword [ebp - 0x11c]
jmp 0x54b43e
mov ecx, dword [ebp - 0xd4]
mov edx, dword [ecx + 0x35c]
movzx eax, byte [edx + 0xa4]
test eax, eax
je 0x54aeab
mov ecx, dword [ebp - 0xd4]
mov ecx, dword [ecx + 0x35c]
add ecx, 0xa8
call fcn.004476b0
movzx edx, al
test edx, edx
jne 0x54aeab
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x35c]
add ecx, 0xa8
call fcn.00447710
push eax
call fcn.004d8b41
add esp, 4
cmp dword [ebp - 0xdc], 0
jne 0x54b36c
mov ecx, dword [ebp - 0xd4]
movzx edx, byte [ecx + 0x379]
test edx, edx
je 0x54b36c
push 1
mov ecx, dword [ebp - 0xd4]
call fcn.00539690
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0xec]
call fcn.00553d50
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x114]
push ecx
lea ecx, [ebp - 0x108]
call fcn.00553d50
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0xd4]
mov ecx, dword [edx + 0x35c]
add ecx, 0x6c
call fcn.00445fd0
test eax, eax
jbe 0x54af76
push 0x64a268
lea ecx, [ebp - 0xec]
call fcn.00552fd0
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x35c]
add ecx, 0x6c
push ecx
lea ecx, [ebp - 0xec]
call fcn.005539e0
push 0x64a280
lea ecx, [ebp - 0x108]
call fcn.00552fd0
mov edx, dword [ebp - 0xd4]
mov eax, dword [edx + 0x35c]
add eax, 0x6c
push eax
lea ecx, [ebp - 0x108]
call fcn.005539e0
jmp 0x54af8e
mov ecx, dword [ebp - 0xd4]
add ecx, 0x360
push ecx
lea ecx, [ebp - 0x108]
call fcn.005539e0
mov edx, dword [ebp - 0xd4]
mov ecx, dword [edx + 0x350]
call fcn.00456eb0
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x350]
push ecx
mov edx, dword [ebp - 0xd4]
add edx, 0x36c
push edx
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x34c]
push ecx
call fcn.005227d0
add esp, 0xc
movzx edx, al
test edx, edx
jne 0x54b041
mov dword [ebp - 0x120], 0x80004005
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x108]
call fcn.00447680
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xec]
call fcn.00447680
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call fcn.00446610
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x40]
call fcn.00446710
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x114]
call fcn.00447680
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x154]
call fcn.0045d520
mov eax, dword [ebp - 0x120]
jmp 0x54b43e
lea eax, [ebp - 0xec]
push eax
mov ecx, dword [ebp - 0xd4]
mov edx, dword [ecx + 0x350]
push edx
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x34c]
push ecx
mov edx, dword [ebp - 0xd4]
mov ecx, dword [edx + 0x35c]
call fcn.00533870
movzx eax, al
test eax, eax
je 0x54b0a6
lea ecx, [ebp - 0xec]
push ecx
mov edx, dword [ebp - 0xd4]
mov eax, dword [edx + 0x34c]
push eax
mov ecx, dword [ebp - 0xd4]
mov ecx, dword [ecx + 0x35c]
call fcn.005336a0
movzx edx, al
test edx, edx
jne 0x54b112
mov dword [ebp - 0x124], 0x80004005
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x108]
call fcn.00447680
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xec]
call fcn.00447680
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call fcn.00446610
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x40]
call fcn.00446710
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x114]
call fcn.00447680
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x154]
call fcn.0045d520
mov eax, dword [ebp - 0x124]
jmp 0x54b43e
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x358]
call fcn.0045d7a0
mov ecx, dword [ebp - 0xd4]
mov ecx, dword [ecx + 0x358]
add ecx, 0xc
call fcn.0045d550
push 1
push 0
lea edx, [ebp - 0xec]
push edx
push 1
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x358]
call fcn.00556050
lea ecx, [ebp - 0x170]
call fcn.0045d410
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0xd4]
mov edx, dword [ecx + 0x354]
mov dword [ebp - 0xf8], edx
cmp dword [ebp - 0xf8], 0
je 0x54b190
mov eax, dword [ebp - 0xf8]
add eax, 4
mov dword [ebp - 0xfc], eax
jmp 0x54b19a
mov dword [ebp - 0xfc], 0
push 1
mov ecx, dword [ebp - 0xd4]
movzx edx, byte [ecx + 0x378]
push edx
mov eax, dword [ebp - 0xfc]
push eax
mov ecx, dword [ebp - 0xd4]
mov edx, dword [ecx + 0x354]
push edx
lea eax, [ebp - 0x170]
push eax
mov ecx, dword [ebp - 0xd4]
mov edx, dword [ecx + 0x35c]
push edx
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x358]
push ecx
lea edx, [ebp - 0x108]
push edx
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x350]
push ecx
mov edx, dword [ebp - 0xd4]
mov eax, dword [edx + 0x34c]
push eax
call fcn.0052e6d0
add esp, 0x28
mov dword [ebp - 0xdc], eax
lea ecx, [ebp - 0x16c]
call fcn.00447710
push eax
lea ecx, [ebp - 0x40]
call fcn.0044c0d0
lea ecx, [ebp - 0x40]
push ecx
lea edx, [ebp - 0xd0]
push edx
call fcn.004db359
add esp, 8
mov dword [ebp - 0x128], eax
mov eax, dword [ebp - 0x128]
push eax
lea ecx, [ebp - 0x28]
call fcn.0044ecc0
lea ecx, [ebp - 0xd0]
call fcn.00446610
lea ecx, [ebp - 0x28]
call fcn.004465b0
push eax
mov ecx, dword [ebp - 0xd4]
add ecx, 0x2ac
call fcn.00553ad0
lea ecx, [ebp - 0x160]
push ecx
mov ecx, dword [ebp - 0xd4]
add ecx, 0x294
call fcn.00448520
cmp dword [ebp - 0x170], 0
je 0x54b32d
cmp dword [ebp - 0x170], 0x80004005
je 0x54b32d
cmp dword [ebp - 0x170], 0x80004004
je 0x54b32d
mov edx, dword [ebp - 0x170]
mov dword [ebp - 0x12c], edx
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x170]
call fcn.0045d520
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x108]
call fcn.00447680
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xec]
call fcn.00447680
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call fcn.00446610
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x40]
call fcn.00446710
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x114]
call fcn.00447680
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x154]
call fcn.0045d520
mov eax, dword [ebp - 0x12c]
jmp 0x54b43e
lea ecx, [ebp - 0xec]
call fcn.00447710
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x170]
call fcn.0045d520
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x108]
call fcn.00447680
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xec]
call fcn.00447680
cmp dword [ebp - 0xdc], 0
jne 0x54b3f3
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x35c]
movzx edx, byte [ecx + 0x128]
test edx, edx
je 0x54b3f3
lea eax, [ebp - 0x17c]
push eax
mov ecx, dword [ebp - 0xd4]
mov ecx, dword [ecx + 0x35c]
add ecx, 0x48
call fcn.00533b40
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x17c]
call fcn.00447710
push eax
lea ecx, [ebp - 0xa0]
call fcn.00446660
mov byte [ebp - 4], 0xc
lea edx, [ebp - 0xa0]
push edx
call fcn.004dac94
add esp, 4
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xa0]
call fcn.00446610
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x17c]
call fcn.00447680
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0x130], eax
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call fcn.00446610
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x40]
call fcn.00446710
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x114]
call fcn.00447680
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x154]
call fcn.0045d520
mov eax, dword [ebp - 0x130]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00495c0c
mov esp, ebp
pop ebp
ret