Function at 0x48f0ac
Capabilities:
Delete file
Move file

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0xf
push 0
push 0
dec ecx
jne 0x48f0b4
push ebx
push esi
push edi
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x48fcb4
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
mov dword [ebp - 8], eax
mov eax, dword [ebp - 4]
mov byte [eax + 0x17c], 0
mov eax, dword [ebp - 4]
cmp dword [eax + 0x3c], 0
je 0x48fc7f
lea edx, [ebp - 0x48]
mov eax, dword [ebp - 4]
call fcn.0048558c
mov eax, dword [ebp - 0x48]
lea edx, [ebp - 0x44]
call fcn.0040931c
cmp dword [ebp - 0x44], 0
jne 0x48f117
mov eax, dword [ebp - 4]
cmp dword [eax + 0x130], 0
je 0x48fc7f
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.00485ec0
mov byte [ebp - 0x31], al
mov byte [ebp - 0x19], 0
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x12c], edx
xor eax, eax
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 0x271], 0
je 0x48f152
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x118]
mov dword [ebp - 0x20], eax
jmp 0x48f16f
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x118]
test eax, eax
je 0x48f16f
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x114]
je 0x48f16f
call fcn.004041d8
mov eax, dword [ebp - 4]
movzx eax, byte [eax + 0x38]
mov byte [ebp - 0x21], al
mov eax, dword [ebp - 4]
movzx eax, byte [eax + 0x49]
mov byte [ebp - 0x22], al
mov eax, dword [ebp - 4]
mov byte [eax + 0x49], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x114]
mov edx, dword [ebp - 4]
mov dword [edx + 0x118], eax
mov eax, dword [ebp - 4]
mov byte [eax + 0x38], 7
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.00485ed0
mov byte [ebp - 0x3d], al
xor edx, edx
push ebp
push 0x48fc75
push dword fs:[edx]
mov dword fs:[edx], esp
mov eax, dword [ebp - 4]
cmp byte [eax + 0x1c5], 0
je 0x48f1d9
mov dl, 1
mov eax, dword [0x4140bc]
call fcn.004041a8
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 0x2b0], 0
jne 0x48f214
mov eax, dword [ebp - 4]
cmp byte [eax + 0x184], 0
jne 0x48f214
mov eax, dword [ebp - 4]
cmp byte [eax + 0x185], 0
jne 0x48f214
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3c]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x48f214
mov eax, dword [ebp - 4]
call fcn.0048d748
mov eax, dword [ebp - 4]
cmp byte [eax + 0x2b0], 0
jne 0x48f2a6
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3c]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x48f2a6
mov byte [ebp - 0x23], 0
mov eax, dword [ebp - 4]
cmp word [eax + 0x1fa], 0
je 0x48f27f
mov eax, dword [ebp - 4]
push dword [eax + 0x1b4]
push dword [eax + 0x1b0]
mov eax, dword [ebp - 4]
add eax, 0x2a0
push eax
lea eax, [ebp - 0x23]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3c]
mov edx, dword [eax]
call dword [edx + 0x14]
mov ecx, eax
mov ebx, dword [ebp - 4]
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x1fc]
call dword [ebx + 0x1f8]
cmp byte [ebp - 0x23], 0
je 0x48f2a6
lea edx, [ebp - 0x4c]
mov eax, 0xbb
call fcn.00409a7c
mov ecx, dword [ebp - 0x4c]
mov dl, 1
mov eax, dword [0x483d4c]
call fcn.0040d4e4
call fcn.00404a4c
mov eax, dword [ebp - 4]
cmp byte [eax + 0x10c], 0
je 0x48f2be
mov eax, dword [ebp - 4]
call fcn.004871cc
test eax, eax
jg 0x48f2e4
lea edx, [ebp - 0x50]
mov eax, dword [ebp - 4]
call fcn.0048558c
mov eax, dword [ebp - 0x50]
call fcn.004809b0
test al, al
je 0x48f339
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1d8]
cmp byte [eax + 0x21], 0
jne 0x48f339
mov eax, dword [ebp - 4]
mov byte [eax + 0x270], 1
mov eax, dword [ebp - 4]
cmp byte [eax + 0x10c], 0
jne 0x48f320
lea edx, [ebp - 0x58]
mov eax, dword [ebp - 4]
call fcn.00491fdc
mov eax, dword [ebp - 0x58]
lea edx, [ebp - 0x54]
call fcn.00480f5c
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 4]
add eax, 0x2a8
call fcn.0040510c
mov eax, dword [ebp - 4]
call fcn.0048fce8
mov eax, dword [ebp - 4]
call fcn.00485ee0
push ebp
call fcn.0048e7ac
pop ecx
jmp 0x48f372
mov eax, dword [ebp - 4]
cmp byte [eax + 0x10c], 0
jne 0x48f360
lea edx, [ebp - 0x5c]
mov eax, dword [ebp - 4]
call fcn.0048558c
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 4]
add eax, 0x2a8
call fcn.0040510c
mov eax, dword [ebp - 4]
mov byte [eax + 0x270], 0
mov eax, dword [ebp - 4]
call fcn.0048fce8
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x1d8]
cmp byte [ebx + 0x21], 0
je 0x48f471
cmp byte [ebx + 0x20], 0
je 0x48f471
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x26c]
mov eax, dword [eax + 0x268]
add eax, 0x2e
adc edx, 0
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3c]
mov edx, dword [eax]
call dword [edx + 0x14]
cdq
call fcn.004060e4
add eax, dword [ebx + 0x18]
adc edx, dword [ebx + 0x1c]
add eax, 0x16
adc edx, 0
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x158]
movzx eax, word [eax + 0x18]
xor edx, edx
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
add eax, 0x800
adc edx, 0
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x1d8]
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x1c], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1d8]
cmp byte [eax + 0x21], 1
jne 0x48f471
xor eax, eax
push ebp
push 0x48f449
push dword fs:[eax]
mov dword fs:[eax], esp
lea edx, [ebp - 0x64]
mov eax, dword [ebp - 4]
call fcn.0048558c
mov eax, dword [ebp - 0x64]
lea edx, [ebp - 0x60]
call fcn.0040a014
lea eax, [ebp - 0x60]
mov edx, 0x48fcd0
call fcn.00405384
mov eax, dword [ebp - 0x60]
call fcn.0048bf0c
mov ebx, eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x48f458
mov eax, ebx
xor edx, edx
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x1d8]
add eax, dword [ecx + 0x18]
adc edx, dword [ecx + 0x1c]
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x1c], edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x1d8]
movzx eax, byte [ecx + 0x21]
cmp al, 1
jne 0x48f4aa
mov eax, dword [ebp - 4]
call fcn.0048ff70
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x1d8]
sub eax, dword [ecx + 0x18]
sbb edx, dword [ecx + 0x1c]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x260], eax
mov dword [ecx + 0x264], edx
jmp 0x48f4fb
cmp al, 2
jne 0x48f4fb
cmp dword [ecx + 0x14], 0
jne 0x48f4d7
cmp dword [ecx + 0x10], 0
jne 0x48f4d7
mov eax, dword [ecx + 8]
mov edx, dword [ecx + 0xc]
sub eax, dword [ecx + 0x18]
sbb edx, dword [ecx + 0x1c]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x260], eax
mov dword [ecx + 0x264], edx
jmp 0x48f4fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1d8]
mov edx, dword [eax + 0x14]
mov eax, dword [eax + 0x10]
sub eax, dword [ecx + 0x18]
sbb edx, dword [ecx + 0x1c]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x260], eax
mov dword [ecx + 0x264], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1d8]
cmp byte [eax + 0x21], 0
je 0x48f540
mov eax, dword [ebp - 4]
fild qword [eax + 0x1b0]
fmul dword [0x48fcd4]
mov eax, dword [ebp - 4]
fistp qword [eax + 0x1b0]
wait
mov dword [ebp - 0x38], 0x8074b50
lea edx, [ebp - 0x38]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x284]
mov ecx, 4
mov ebx, dword [eax]
call dword [ebx + 0x10]
mov eax, dword [ebp - 4]
cmp byte [eax + 0x2b0], 0
jne 0x48f648
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3c]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x48f648
mov eax, dword [ebp - 4]
cmp byte [eax + 0x184], 0
jne 0x48f59a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3c]
mov edx, dword [eax]
call dword [edx + 0x14]
mov ebx, eax
dec ebx
test ebx, ebx
jl 0x48f648
inc ebx
xor esi, esi
push ebp
mov eax, esi
call fcn.0048efc0
pop ecx
inc esi
dec ebx
jne 0x48f588
jmp 0x48f648
push ebp
xor eax, eax
call fcn.0048efc0
pop ecx
mov eax, dword [ebp - 4]
cmp byte [eax + 0x280], 0
je 0x48f5bd
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x180]
call fcn.004041d8
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x180], edx
mov eax, dword [ebp - 4]
cmp word [eax + 0x252], 0
je 0x48f638
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3c]
mov edx, dword [eax]
call dword [edx + 0x44]
lea eax, [ebp - 0x18]
call fcn.004050b8
mov eax, dword [ebp - 4]
cmp word [eax + 0x252], 0
je 0x48f614
lea eax, [ebp - 0x18]
push eax
mov eax, dword [ebp - 4]
lea ecx, [eax + 0x180]
mov ebx, dword [ebp - 4]
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x254]
call dword [ebx + 0x250]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x180]
test eax, eax
je 0x48f638
push 0
push 0
call fcn.00418790
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3c]
mov edx, dword [ebp - 0x18]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebp - 4]
cmp dword [eax + 0x180], 0
jne 0x48f59a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x284]
call fcn.00418770
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2a0]
call fcn.004834b8
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x12c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2a0]
call fcn.00483310
xor eax, eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2a0]
call fcn.0048347c
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x29c]
mov ebx, dword [eax + 0xc]
dec ebx
test ebx, ebx
jl 0x48f7c5
inc ebx
xor esi, esi
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x29c]
mov edx, esi
call fcn.0047e6dc
mov edx, dword [0x4813d4]
call fcn.00404388
mov edx, dword [ebp - 4]
mov dword [edx + 0x2a4], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1d8]
cmp byte [eax + 0x21], 0
je 0x48f778
mov eax, dword [ebp - 4]
call fcn.0048fff8
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2a4]
call fcn.00482b70
cdq
cmp edx, dword [esp + 4]
jne 0x48f70d
cmp eax, dword [esp]
pop edx
pop eax
jbe 0x48f778
jmp 0x48f711
pop edx
pop eax
jle 0x48f778
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x284]
call fcn.00418770
sub eax, dword [ebp - 0x30]
add dword [ebp - 0x28], eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 4]
call fcn.0049010c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2a0]
xor edx, edx
call fcn.00483354
test esi, esi
jne 0x48f778
push 0
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2a0]
call fcn.004834b8
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x12c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2a0]
call fcn.00483310
mov eax, dword [ebp - 4]
movzx eax, byte [eax + 0x270]
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x130]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x284]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2a4]
call fcn.00482330
mov eax, dword [ebp - 4]
mov edi, dword [eax + 0x2a0]
mov eax, edi
call fcn.00483338
mov edx, eax
inc edx
mov eax, edi
call fcn.00483354
inc esi
dec ebx
jne 0x48f6ae
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x284]
call fcn.00418770
sub eax, dword [ebp - 0x30]
add dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
cdq
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2a0]
call fcn.0048342c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1d8]
cmp byte [eax + 0x21], 0
je 0x48f830
mov eax, dword [ebp - 4]
call fcn.0048fff8
push edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2a0]
call fcn.004832a8
cdq
cmp edx, dword [esp + 4]
jne 0x48f824
cmp eax, dword [esp]
pop edx
pop eax
jbe 0x48f830
jmp 0x48f828
pop edx
pop eax
jle 0x48f830
mov eax, dword [ebp - 4]
call fcn.0049010c
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x12c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2a0]
call fcn.004832cc
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x284]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2a0]
call fcn.00482ec8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1d8]
cmp byte [eax + 0x21], 1
jne 0x48f875
mov eax, dword [ebp - 4]
call fcn.00490034
mov byte [ebp - 0x19], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x48fc7f
mov eax, dword [ebp - 4]
cmp byte [eax + 0x10c], 0
jne 0x48f8fe
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1d8]
cmp byte [eax + 0x21], 0
je 0x48f8e5
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x158]
call fcn.004834f8
cmp eax, 1
jne 0x48f8e5
push 0
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x284]
xor edx, edx
mov ecx, dword [eax]
call dword [ecx + 0x18]
mov dword [ebp - 0x3c], 0x30304b50
lea edx, [ebp - 0x3c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x284]
mov ecx, 4
mov ebx, dword [eax]
call dword [ebx + 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x284]
call fcn.004041d8
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x284], edx
cmp byte [ebp - 0x19], 0
je 0x48fbb9
mov eax, dword [ebp - 4]
cmp byte [eax + 0x10c], 0
jne 0x48f92b
mov eax, dword [ebp - 4]
cmp byte [eax + 0x271], 0
jne 0x48f92b
lea edx, [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.0048558c
mov eax, dword [ebp - 4]
cmp byte [eax + 0x271], 0
jne 0x48f94b
mov eax, dword [ebp - 4]
cmp byte [eax + 0x270], 0
je 0x48f94b
mov eax, dword [ebp - 4]
call fcn.004862c0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1d8]
cmp byte [eax + 0x21], 2
jne 0x48f9c3
lea eax, [ebp - 0x14]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x1a8]
call fcn.00405150
push 2
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x12c]
inc ecx
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 4]
call fcn.00487418
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0x30]
lea edx, [ebp - 0x68]
mov eax, dword [ebp - 4]
call fcn.0048558c
mov ebx, dword [ebp - 0x68]
mov dword [ebp - 0x6c], ebx
mov eax, dword [ebp - 0x6c]
call fcn.00405548
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2a8]
call fcn.00405548
push eax
call sub.kernel32.dll_MoveFileA_1
cmp eax, 1
sbb eax, eax
inc eax
jmp 0x48f9e6
mov eax, dword [ebp - 4]
cmp byte [eax + 0x10c], 0
jne 0x48f9e6
mov eax, dword [ebp - 4]
cmp byte [eax + 0x271], 0
jne 0x48f9e6
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0x30]
mov eax, dword [ebp - 4]
cmp byte [eax + 0x270], 0
je 0x48f9fc
mov eax, dword [ebp - 4]
call fcn.00491988
jmp 0x48fa13
mov eax, dword [ebp - 4]
cmp byte [eax + 0x10c], 0
je 0x48fa13
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x284], edx
mov eax, dword [ebp - 4]
cmp byte [eax + 0x1c5], 0
je 0x48fa26
push ebp
call fcn.0048e524
pop ecx
mov eax, dword [ebp - 4]
cmp byte [eax + 0x271], 0
jne 0x48fa6d
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x2a0]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x158]
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x29c]
mov edx, dword [ebp - 4]
mov dword [edx + 0x114], eax
mov edx, dword [ebp - 4]
mov dword [edx + 0x118], eax
mov eax, dword [ebp - 4]
mov byte [eax + 0x38], 7
jmp 0x48fa92
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x29c]
call fcn.004041d8
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x29c], edx
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x20]
mov dword [eax + 0x118], edx
mov eax, dword [ebp - 4]
cmp byte [eax + 0x10c], 0
jne 0x48fac7
mov eax, dword [ebp - 4]
cmp byte [eax + 0x271], 0
jne 0x48fac7
lea edx, [ebp - 0x70]
mov eax, dword [ebp - 4]
call fcn.0048558c
mov eax, dword [ebp - 0x70]
call fcn.0048088c
mov eax, dword [ebp - 4]
fstp qword [eax + 0x120]
wait
cmp byte [ebp - 0x21], 0
je 0x48fae7
mov eax, dword [ebp - 4]
cmp byte [eax + 0x271], 0
jne 0x48fae7
movzx edx, byte [ebp - 0x21]
mov eax, dword [ebp - 4]
call fcn.00487114
jmp 0x48fb10
mov eax, dword [ebp - 4]
cmp byte [eax + 0x271], 0
jne 0x48fb10
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x298]
mov edx, dword [ebp - 4]
mov dword [edx + 0x118], eax
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x298], edx
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x12c]
inc edx
mov eax, dword [ebp - 4]
call fcn.00485eac
mov eax, dword [ebp - 4]
cmp word [eax + 0xca], 0
je 0x48fb46
mov ebx, dword [ebp - 4]
mov ecx, 0x64
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0xcc]
call dword [ebx + 0xc8]
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x1d8]
cmp byte [ebx + 0x21], 0
je 0x48fbe6
cmp byte [ebx + 0x20], 0
je 0x48fbe6
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x158]
call fcn.004832b0
test eax, eax
jbe 0x48fbe6
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1d8]
cmp byte [eax + 0x21], 1
jne 0x48fb91
mov edx, 1
mov eax, dword [ebp - 4]
call fcn.00485f8c
lea edx, [ebp - 0x78]
mov eax, dword [ebp - 4]
call fcn.0048558c
mov eax, dword [ebp - 0x78]
lea ecx, [ebp - 0x74]
mov edx, 0x48fce0
call fcn.00409ef8
mov edx, dword [ebp - 0x74]
mov eax, dword [ebp - 4]
call fcn.00491b18
jmp 0x48fbe6
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x29c]
call fcn.004041d8
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x29c], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2a8]
call fcn.00405548
push eax
call sub.kernel32.dll_DeleteFileA_1
mov eax, dword [ebp - 4]
movzx edx, byte [ebp - 0x21]
mov byte [eax + 0x38], dl
mov eax, dword [ebp - 4]
movzx edx, byte [ebp - 0x22]
mov byte [eax + 0x49], dl
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x298]
call fcn.004041d8
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x298], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2a0]
call fcn.004041d8
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x2a0], edx
mov eax, dword [ebp - 4]
call fcn.00485f64
mov eax, dword [ebp - 4]
cmp byte [eax + 0x10c], 0
je 0x48fc51
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x130]
mov eax, dword [ebp - 4]
call fcn.0048680c
movzx edx, byte [ebp - 0x31]
mov eax, dword [ebp - 4]
call fcn.00485ec0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3c]
mov edx, dword [eax]
call dword [edx + 0x44]
movzx edx, byte [ebp - 0x3d]
mov eax, dword [ebp - 4]
call fcn.00485ed0
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x48fcbb
lea eax, [ebp - 0x78]
mov edx, 3
call fcn.004050dc
lea eax, [ebp - 0x68]
mov edx, 0xa
call fcn.004050dc
lea eax, [ebp - 0x18]
mov edx, 3
call fcn.004050dc
ret