Function at 0x6931c0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x34
push 0
push 0
dec ecx
jne 0x6931c8
push ebx
push esi
push edi
mov dword [ebp - 8], edx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 8]
call fcn.00405e1c
xor eax, eax
push ebp
push 0x693c53
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
push ebp
push 0x6933fb
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x34]
push eax
lea edx, [ebp - 0x38]
mov eax, dword [0x6c9f68]
call fcn.00608534
mov eax, dword [ebp - 0x38]
push eax
mov eax, dword [eax]
call dword [eax + 0x74]
call fcn.00407d8c
mov eax, dword [ebp - 0x34]
cmp eax, 0x14
ja case.default.0x693227
jmp dword [eax*4 + 0x69322e]
lea eax, [ebp - 0xc]
mov edx, 0x693c70
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693c9c
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693cac
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693cbc
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693ccc
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693cec
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693d04
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693d24
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693d48
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693d6c
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693d8c
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693db0
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693dd4
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693e0c
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693e30
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693e6c
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693ea0
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693edc
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693f08
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693f30
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693f5c
call fcn.00405a18
jmp 0x6933f1
lea eax, [ebp - 0xc]
mov edx, 0x693c70
call fcn.00405a18
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x69346c
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x4b8]
call fcn.0058fbec
test al, al
je 0x6934e5
mov eax, dword [ebp - 0xc]
mov edx, 0x693c70
call fcn.00405dc4
je 0x6934ba
lea eax, [ebp - 0x144]
mov ecx, dword [ebp - 0xc]
mov edx, 0x693fc4
call fcn.00405cb4
mov edx, dword [ebp - 0x144]
mov eax, dword [0x6bbcc0]
mov eax, dword [eax]
mov eax, dword [eax + 0x38c]
call fcn.004b49b0
jmp 0x6934e5
lea eax, [ebp - 0x148]
mov ecx, dword [ebp - 0xc]
mov edx, 0x693fdc
call fcn.00405cb4
mov edx, dword [ebp - 0x148]
mov eax, dword [0x6bbcc0]
mov eax, dword [eax]
mov eax, dword [eax + 0x378]
call fcn.004b49b0
mov eax, dword [ebp - 0xc]
mov edx, 0x693c70
call fcn.00405dc4
je 0x693505
xor ebx, ebx
mov eax, 0xbb8
call fcn.00690790
jmp 0x693b12
lea eax, [ebp - 0x34]
push eax
lea edx, [ebp - 0x14c]
mov eax, dword [0x6c9f68]
call fcn.00608534
mov eax, dword [ebp - 0x14c]
push eax
mov eax, dword [eax]
call dword [eax + 0x4c]
call fcn.00407d8c
mov eax, dword [ebp - 0x34]
cmp eax, 8
jg 0x693541
je 0x69357c
dec eax
je 0x69354f
dec eax
je 0x69355e
sub eax, 2
je 0x69356d
jmp 0x6935a9
sub eax, 0x10
je 0x69358b
sub eax, 0x3ff0
je 0x69359a
jmp 0x6935a9
lea eax, [ebp - 0xc]
mov edx, 0x693ffc
call fcn.00405a18
jmp 0x6935b1
lea eax, [ebp - 0xc]
mov edx, 0x694024
call fcn.00405a18
jmp 0x6935b1
lea eax, [ebp - 0xc]
mov edx, 0x694048
call fcn.00405a18
jmp 0x6935b1
lea eax, [ebp - 0xc]
mov edx, 0x694078
call fcn.00405a18
jmp 0x6935b1
lea eax, [ebp - 0xc]
mov edx, 0x6940ac
call fcn.00405a18
jmp 0x6935b1
lea eax, [ebp - 0xc]
mov edx, 0x6940dc
call fcn.00405a18
jmp 0x6935b1
lea eax, [ebp - 0xc]
call fcn.00405980
cmp dword [ebp - 0xc], 0
je 0x693605
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x4b8]
call fcn.0058fbec
test al, al
je 0x6935f4
lea eax, [ebp - 0x150]
mov ecx, dword [ebp - 0xc]
mov edx, 0x693fdc
call fcn.00405cb4
mov edx, dword [ebp - 0x150]
mov eax, dword [0x6bbcc0]
mov eax, dword [eax]
mov eax, dword [eax + 0x378]
call fcn.004b49b0
xor ebx, ebx
mov eax, 0xbb8
call fcn.00690790
jmp 0x693b12
lea edx, [ebp - 0x154]
mov eax, dword [ebp - 8]
call fcn.0040ab7c
mov edx, dword [ebp - 0x154]
mov eax, 0x694104
call fcn.00405f7c
test eax, eax
jne 0x69363f
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x598]
mov edx, dword [ebp - 8]
mov ecx, dword [eax]
call dword [ecx + 0x128]
xor ebx, ebx
jmp 0x693641
mov bl, 1
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x4b8]
call fcn.0058fbec
test al, al
je 0x693699
push 0
push 0
mov eax, dword [0x6bbcc0]
mov eax, dword [eax]
mov eax, dword [eax + 0x380]
call fcn.00504d1c
push 0x40590000
push 0
mov eax, dword [0x6bbcc0]
mov eax, dword [eax]
mov eax, dword [eax + 0x380]
call fcn.00504bac
mov eax, dword [0x6bbcc0]
mov eax, dword [eax]
mov eax, dword [eax + 0x378]
mov edx, 0x694114
call fcn.004b49b0
xor eax, eax
push ebp
push 0x693a95
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x440]
mov edx, dword [eax]
call dword [edx + 0xdc]
mov edx, eax
lea ecx, [ebp - 0x158]
mov eax, dword [0x6c9f5c]
call fcn.006080a0
mov edx, dword [ebp - 0x158]
mov eax, dword [0x6c9f60]
call fcn.00608440
lea edx, [ebp - 0x14]
mov eax, dword [0x6c9f64]
call fcn.006076ec
lea edx, [ebp - 0x15c]
mov eax, dword [0x6c9f60]
call fcn.006081e8
mov edx, dword [ebp - 0x15c]
mov eax, dword [0x6c9f68]
call fcn.0060870c
mov edx, 0x694140
mov eax, dword [0x6c9f68]
call fcn.00608760
lea eax, [ebp - 0x34]
push eax
lea edx, [ebp - 0x160]
mov eax, dword [0x6c9f68]
call fcn.00608534
mov eax, dword [ebp - 0x160]
push eax
mov eax, dword [eax]
call dword [eax + 0x4c]
call fcn.00407d8c
mov eax, dword [ebp - 0x34]
cmp eax, 8
jg 0x693752
je 0x693784
dec eax
je 0x693760
dec eax
je 0x69376c
sub eax, 2
je 0x693778
jmp 0x6937a8
sub eax, 0x10
je 0x693790
sub eax, 0x3ff0
je 0x69379c
jmp 0x6937a8
mov eax, 0x693ffc
call fcn.004a5908
jmp 0x6937b2
mov eax, 0x694024
call fcn.004a5908
jmp 0x6937b2
mov eax, 0x694048
call fcn.004a5908
jmp 0x6937b2
mov eax, 0x694078
call fcn.004a5908
jmp 0x6937b2
mov eax, 0x6940ac
call fcn.004a5908
jmp 0x6937b2
mov eax, 0x6940dc
call fcn.004a5908
jmp 0x6937b2
mov eax, 0x694154
call fcn.004a5908
lea edx, [ebp - 0x164]
mov eax, dword [0x6c9f60]
call fcn.006081e8
mov edx, dword [ebp - 0x164]
lea eax, [ebp - 0x20]
call fcn.00407c94
mov edx, dword [ebp - 0x20]
mov eax, dword [0x6c9f64]
call fcn.006077cc
call fcn.0040ed8c
fstp qword [ebp - 0x30]
wait
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
lea eax, [ebp - 0x24]
xor edx, edx
call fcn.0040fa24
push dword [0x6c9f8c]
push 0x694170
lea eax, [ebp - 0x16c]
mov edx, dword [ebp - 0x24]
call fcn.00406380
push dword [ebp - 0x16c]
lea eax, [ebp - 0x168]
mov edx, 3
call fcn.0040647c
mov edx, dword [ebp - 0x168]
mov eax, dword [0x6c9f64]
call fcn.00607748
test bl, bl
jne 0x69399f
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x598]
mov edx, dword [eax]
call dword [edx + 0xd8]
mov esi, eax
dec esi
test esi, esi
jl 0x6939fc
inc esi
xor ebx, ebx
lea ecx, [ebp - 0x170]
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x598]
mov eax, dword [eax + 0x260]
mov edx, ebx
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - 0x170]
call fcn.004daf10
test al, al
je 0x6938cb
push 0xffffffffffffffff
lea ecx, [ebp - 0x178]
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x598]
mov eax, dword [eax + 0x260]
mov edx, ebx
mov edi, dword [eax]
call dword [edi + 0xc]
mov edx, dword [ebp - 0x178]
lea eax, [ebp - 0x174]
call fcn.00406380
mov eax, dword [ebp - 0x174]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [eax]
call dword [eax + 0x64]
call fcn.00407d8c
lea ecx, [ebp - 0x17c]
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x598]
mov eax, dword [eax + 0x260]
mov edx, ebx
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - 0x17c]
call fcn.0040be30
test al, al
je 0x693995
lea ecx, [ebp - 0x180]
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x598]
mov eax, dword [eax + 0x260]
mov edx, ebx
mov edi, dword [eax]
call dword [edi + 0xc]
mov edx, dword [ebp - 0x180]
lea eax, [ebp - 0x10]
call fcn.00406380
lea eax, [ebp - 4]
push eax
push 0
push 0
push 0
push 0
mov eax, dword [ebp - 0x10]
call fcn.00406390
push eax
call sub.shlwapi.dll_SHCreateStreamOnFileEx
mov eax, dword [ebp - 4]
push eax
lea ecx, [ebp - 0x18c]
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x598]
mov eax, dword [eax + 0x260]
mov edx, ebx
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - 0x18c]
lea edx, [ebp - 0x188]
call fcn.0040c1bc
mov edx, dword [ebp - 0x188]
lea eax, [ebp - 0x184]
call fcn.00406380
mov eax, dword [ebp - 0x184]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [eax]
call dword [eax + 0x60]
call fcn.00407d8c
inc ebx
dec esi
jne 0x69385c
jmp 0x6939fc
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 8]
call fcn.00406380
lea eax, [ebp - 4]
push eax
push 0
push 0
push 0
push 0
mov eax, dword [ebp - 0x10]
call fcn.00406390
push eax
call sub.shlwapi.dll_SHCreateStreamOnFileEx
mov eax, dword [ebp - 4]
push eax
lea edx, [ebp - 0x194]
mov eax, dword [ebp - 8]
call fcn.0040c1bc
mov edx, dword [ebp - 0x194]
lea eax, [ebp - 0x190]
call fcn.00406380
mov eax, dword [ebp - 0x190]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [eax]
call dword [eax + 0x60]
call fcn.00407d8c
lea edx, [ebp - 0x18]
mov eax, dword [0x6c9f64]
call fcn.00607824
lea eax, [ebp - 0x198]
call fcn.00407c7c
push eax
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [eax]
call dword [eax + 0x1c]
call fcn.00407d8c
mov edx, dword [ebp - 0x198]
lea eax, [ebp - 0x1c]
call fcn.00407c94
mov edx, dword [ebp - 0x1c]
mov eax, dword [0x6c9f68]
call fcn.006087e4
mov eax, dword [0x6c9f60]
call fcn.006083f0
mov eax, dword [0x6c9f60]
mov edx, dword [eax]
call dword [edx + 0x40]
mov eax, dword [ebp - 8]
call fcn.00405e2c
push eax
call sub.KERNEL32.DLL_DeleteFileA
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x4b8]
call fcn.0058fbec
test al, al
je 0x693a89
mov eax, dword [0x6bbcc0]
mov eax, dword [eax]
mov eax, dword [eax + 0x378]
mov edx, 0x69417c
call fcn.004b49b0
mov bl, 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x693b12
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x693c5d
lea eax, [ebp - 0x1a0]
mov edx, 2
call fcn.004059a4
lea eax, [ebp - 0x198]
call fcn.00407c7c
lea eax, [ebp - 0x194]
call fcn.00405980
lea eax, [ebp - 0x190]
call fcn.004061a8
lea eax, [ebp - 0x18c]
mov edx, 2
call fcn.004059a4
lea eax, [ebp - 0x184]
call fcn.004061a8
lea eax, [ebp - 0x180]
mov edx, 3
call fcn.004059a4
lea eax, [ebp - 0x174]
call fcn.004061a8
lea eax, [ebp - 0x170]
call fcn.00405980
lea eax, [ebp - 0x16c]
mov edx, 2
call fcn.004061c0
lea eax, [ebp - 0x164]
call fcn.00407c7c
lea eax, [ebp - 0x160]
call fcn.00407c7c
lea eax, [ebp - 0x15c]
call fcn.00407c7c
lea eax, [ebp - 0x158]
call fcn.004061a8
lea eax, [ebp - 0x154]
mov edx, 2
call fcn.004059a4
lea eax, [ebp - 0x14c]
call fcn.00407c7c
lea eax, [ebp - 0x148]
mov edx, 2
call fcn.004059a4
lea eax, [ebp - 0x40]
mov edx, 2
call fcn.004059a4
lea eax, [ebp - 0x38]
call fcn.00407c7c
lea eax, [ebp - 0x24]
call fcn.00405980
lea eax, [ebp - 0x20]
call fcn.00407c7c
lea eax, [ebp - 0x1c]
call fcn.00407c7c
lea eax, [ebp - 0x18]
call fcn.00407c7c
lea eax, [ebp - 0x14]
call fcn.00407c7c
lea eax, [ebp - 0x10]
call fcn.004061a8
lea eax, [ebp - 0xc]
mov edx, 2
call fcn.004059a4
lea eax, [ebp - 4]
call fcn.00407c7c
ret