Function at 0x46c4c0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x57a627
mov eax, dword fs:[0]
push eax
sub esp, 0x1bc
mov eax, dword [0x5eabd8]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x188], ecx
mov dword [ebp - 0x184], 0
mov eax, dword [ebp - 0x188]
cmp dword [eax + 0xc], 0
je 0x46c509
jmp 0x46cbfe
lea ecx, [ebp - 0x48]
push ecx
mov edx, dword [ebp - 0x188]
mov ecx, dword [edx + 0x10]
call fcn.00465e40
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x190], eax
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x184]
or ecx, 1
mov dword [ebp - 0x184], ecx
mov ecx, dword [ebp - 0x190]
call fcn.0041c3c0
test eax, eax
je 0x46c5f1
lea edx, [ebp - 0x50]
push edx
mov eax, dword [ebp - 0x188]
mov ecx, dword [eax + 0x10]
call fcn.0044cda0
mov dword [ebp - 0x194], eax
mov ecx, dword [ebp - 0x194]
mov dword [ebp - 0x198], ecx
mov dword [ebp - 4], 1
mov edx, dword [ebp - 0x184]
or edx, 2
mov dword [ebp - 0x184], edx
mov ecx, dword [ebp - 0x198]
call fcn.004368b0
push eax
lea eax, [ebp - 0x4c]
push eax
mov ecx, dword [ebp - 0x188]
mov ecx, dword [ecx + 0x10]
call fcn.00465e40
mov dword [ebp - 0x19c], eax
mov edx, dword [ebp - 0x19c]
mov dword [ebp - 0x1a0], edx
mov dword [ebp - 4], 2
mov eax, dword [ebp - 0x184]
or eax, 4
mov dword [ebp - 0x184], eax
mov ecx, dword [ebp - 0x1a0]
call fcn.00434e50
test eax, eax
jne 0x46c5f1
mov dword [ebp - 0x1a4], 1
jmp 0x46c5fb
mov dword [ebp - 0x1a4], 0
mov cl, byte [ebp - 0x1a4]
mov byte [ebp - 0x41], cl
mov dword [ebp - 4], 1
mov edx, dword [ebp - 0x184]
and edx, 4
je 0x46c625
and dword [ebp - 0x184], 0xfffffffb
lea ecx, [ebp - 0x4c]
call fcn.0041c360
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x184]
and eax, 2
je 0x46c646
and dword [ebp - 0x184], 0xfffffffd
lea ecx, [ebp - 0x50]
call fcn.0041c360
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x184]
and ecx, 1
je 0x46c667
and dword [ebp - 0x184], 0xfffffffe
lea ecx, [ebp - 0x48]
call fcn.0041c360
movzx edx, byte [ebp - 0x41]
test edx, edx
je 0x46c699
mov eax, dword [ebp - 0x188]
mov dword [eax + 0xc], 2
mov ecx, dword [ebp - 0x188]
add ecx, 0x20
push ecx
mov ecx, dword [ebp - 0x188]
add ecx, 0x24
call fcn.00417a80
jmp 0x46cbfe
lea edx, [ebp - 0x15c]
push edx
mov eax, dword [ebp - 0x188]
mov ecx, dword [eax + 0x10]
call fcn.00465e80
mov dword [ebp - 0x1a8], eax
mov ecx, dword [ebp - 0x1a8]
mov dword [ebp - 0x1ac], ecx
mov dword [ebp - 4], 3
mov ecx, dword [ebp - 0x1ac]
call fcn.004404e0
mov dword [ebp - 0x54], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x15c]
call fcn.0052d230
cmp dword [ebp - 0x54], 0
je 0x46c717
mov edx, dword [ebp - 0x188]
mov dword [edx + 0xc], 2
mov eax, dword [ebp - 0x188]
add eax, 0x1c
push eax
mov ecx, dword [ebp - 0x188]
add ecx, 0x24
call fcn.00417a80
jmp 0x46cbfe
mov ecx, dword [ebp - 0x188]
mov dword [ecx + 0xc], 1
mov ecx, dword [ebp - 0x188]
call fcn.0046af20
mov edx, dword [ebp - 0x188]
mov dword [edx + 0x14], eax
mov eax, dword [ebp - 0x188]
cmp dword [eax + 0x14], 0
jne 0x46c756
mov ecx, dword [ebp - 0x188]
mov dword [ecx + 0xc], 2
jmp 0x46cbfe
mov edx, dword [ebp - 0x188]
mov eax, dword [edx + 0x14]
mov ecx, dword [ebp - 0x188]
mov ecx, dword [ecx + 0x14]
mov edx, dword [eax]
mov eax, dword [edx + 0x10]
call eax
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [ebp - 0x188]
mov edx, dword [ecx + 0x14]
mov eax, dword [ebp - 0x188]
mov ecx, dword [eax + 0x14]
mov edx, dword [edx]
mov eax, dword [edx + 0x1c]
call eax
push eax
mov ecx, dword [ebp - 0x188]
call fcn.0046b9b0
mov ecx, dword [ebp - 0x188]
mov dword [ecx + 0x18], eax
mov edx, dword [ebp - 0x188]
cmp dword [edx + 0x18], 0
jne 0x46c856
mov eax, dword [ebp - 0x188]
mov dword [eax + 0xc], 2
lea ecx, [ebp - 0x160]
push ecx
mov edx, dword [ebp - 0x188]
mov ecx, dword [edx + 0x10]
call fcn.0044cda0
mov dword [ebp - 0x1b0], eax
mov ecx, dword [ebp - 0x1b0]
call fcn.004368b0
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea ecx, [ebp - 0x160]
call fcn.0041c360
mov eax, dword [ebp - 0x188]
mov ecx, dword [eax + 0x14]
mov dword [ebp - 0x168], ecx
mov edx, dword [ebp - 0x168]
mov dword [ebp - 0x164], edx
cmp dword [ebp - 0x164], 0
je 0x46c83a
push 1
mov eax, dword [ebp - 0x164]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x164]
mov eax, dword [edx]
call eax
mov dword [ebp - 0x1b4], eax
jmp 0x46c844
mov dword [ebp - 0x1b4], 0
mov ecx, dword [ebp - 0x188]
mov dword [ecx + 0x14], 0
jmp 0x46cbfe
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
mov edx, dword [ebp - 0x188]
mov eax, dword [edx + 0x18]
mov ecx, dword [ebp - 0x188]
mov ecx, dword [ecx + 0x18]
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [ebp - 0x188]
mov ecx, dword [ecx + 0x10]
call fcn.0046e910
fstp qword [ebp - 0x14]
mov dword [ebp - 0x18], 1
cmp dword [ebp - 0x18], 0
je 0x46ca76
mov edx, dword [ebp - 0x188]
cmp dword [edx + 0x28], 0
je 0x46c914
mov dword [ebp - 0x18], 0
mov eax, dword [ebp - 0x188]
mov dword [eax + 0xc], 2
push 0xe
lea ecx, [ebp - 0x16c]
push ecx
call fcn.0046cef0
add esp, 8
mov dword [ebp - 0x1b8], eax
mov edx, dword [ebp - 0x1b8]
mov dword [ebp - 0x1bc], edx
mov dword [ebp - 4], 4
mov eax, dword [ebp - 0x1bc]
push eax
mov ecx, dword [ebp - 0x188]
add ecx, 0x24
call fcn.00417a80
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x16c]
call fcn.0041c360
jmp 0x46c897
push 0x3e8
mov ecx, dword [ebp - 0x188]
add ecx, 4
mov edx, dword [ebp - 0x188]
mov eax, dword [edx + 4]
mov edx, dword [eax + 0xc]
call edx
test eax, eax
je 0x46ca69
mov eax, dword [ebp - 0x188]
mov ecx, dword [eax + 0x14]
mov edx, dword [ebp - 0x188]
mov eax, dword [edx + 0x14]
mov edx, dword [ecx]
mov ecx, eax
mov eax, dword [edx + 8]
call eax
test eax, eax
je 0x46ca29
mov ecx, dword [ebp - 0x188]
cmp dword [ecx + 0x28], 0
jne 0x46ca29
lea ecx, [ebp - 0x40]
call fcn.005345b0
mov dword [ebp - 4], 5
lea edx, [ebp - 0x40]
push edx
mov eax, dword [ebp - 0x188]
mov ecx, dword [eax + 0x14]
mov edx, dword [ebp - 0x188]
mov eax, dword [edx + 0x14]
mov edx, dword [ecx]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x46ca18
lea ecx, [ebp - 0x40]
call fcn.0041bb70
test eax, eax
jne 0x46ca18
fld1
fcomp qword [ebp - 0x14]
fnstsw ax
test ah, 0x44
jnp 0x46c9cb
sub esp, 8
fld qword [ebp - 0x14]
fstp qword [esp]
lea ecx, [ebp - 0x40]
call fcn.00534d30
lea ecx, [ebp - 0x40]
push ecx
mov edx, dword [ebp - 0x188]
mov eax, dword [edx + 0x18]
mov ecx, dword [ebp - 0x188]
mov ecx, dword [ecx + 0x18]
mov edx, dword [eax]
mov eax, dword [edx + 0xc]
call eax
test eax, eax
jne 0x46ca18
mov ecx, dword [ebp - 0x188]
mov dword [ecx + 0xc], 2
mov edx, dword [ebp - 0x188]
add edx, 0x24
push edx
mov eax, dword [ebp - 0x188]
mov ecx, dword [eax + 0x18]
call fcn.00534550
mov dword [ebp - 0x18], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x40]
call fcn.005346a0
jmp 0x46ca30
mov dword [ebp - 0x18], 0
mov ecx, dword [ebp - 0x188]
mov edx, dword [ecx + 0x14]
mov eax, dword [ebp - 0x188]
mov ecx, dword [eax + 0x14]
mov edx, dword [edx]
mov eax, dword [edx + 0xc]
call eax
mov ecx, dword [ebp - 0x188]
mov dword [ecx + 0x2c], eax
mov ecx, dword [ebp - 0x188]
add ecx, 4
mov edx, dword [ebp - 0x188]
mov eax, dword [edx + 4]
mov edx, dword [eax + 0x14]
call edx
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x46c897
push 0x2710
mov ecx, dword [ebp - 0x188]
add ecx, 4
mov eax, dword [ebp - 0x188]
mov edx, dword [eax + 4]
mov eax, dword [edx + 0xc]
call eax
test eax, eax
je 0x46cbab
mov ecx, dword [ebp - 0x188]
cmp dword [ecx + 0x14], 0
je 0x46cb16
mov edx, dword [ebp - 0x188]
mov eax, dword [edx + 0x14]
mov ecx, dword [ebp - 0x188]
mov ecx, dword [ecx + 0x14]
mov edx, dword [eax]
mov eax, dword [edx + 0x18]
call eax
mov ecx, dword [ebp - 0x188]
mov edx, dword [ecx + 0x14]
mov dword [ebp - 0x174], edx
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x170], eax
cmp dword [ebp - 0x170], 0
je 0x46caff
push 1
mov ecx, dword [ebp - 0x170]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x170]
mov eax, dword [edx]
call eax
mov dword [ebp - 0x1c0], eax
jmp 0x46cb09
mov dword [ebp - 0x1c0], 0
mov ecx, dword [ebp - 0x188]
mov dword [ecx + 0x14], 0
mov edx, dword [ebp - 0x188]
cmp dword [edx + 0x18], 0
je 0x46cb94
mov eax, dword [ebp - 0x188]
mov ecx, dword [eax + 0x18]
mov edx, dword [ebp - 0x188]
mov eax, dword [edx + 0x18]
mov edx, dword [ecx]
mov ecx, eax
mov eax, dword [edx + 0x10]
call eax
mov ecx, dword [ebp - 0x188]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x17c], edx
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x178], eax
cmp dword [ebp - 0x178], 0
je 0x46cb7d
push 1
mov ecx, dword [ebp - 0x178]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x178]
mov eax, dword [edx]
call eax
mov dword [ebp - 0x1c4], eax
jmp 0x46cb87
mov dword [ebp - 0x1c4], 0
mov ecx, dword [ebp - 0x188]
mov dword [ecx + 0x18], 0
mov ecx, dword [ebp - 0x188]
add ecx, 4
mov edx, dword [ebp - 0x188]
mov eax, dword [edx + 4]
mov edx, dword [eax + 0x14]
call edx
mov eax, dword [ebp - 0x188]
cmp dword [eax + 0xc], 2
je 0x46cbc6
mov ecx, dword [ebp - 0x188]
mov dword [ecx + 0xc], 3
jmp 0x46cbfe
lea edx, [ebp - 0x180]
push edx
mov eax, dword [ebp - 0x188]
mov ecx, dword [eax + 0x10]
call fcn.0044cda0
mov dword [ebp - 0x1c8], eax
mov ecx, dword [ebp - 0x1c8]
call fcn.004368b0
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea ecx, [ebp - 0x180]
call fcn.0041c360
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov esp, ebp
pop ebp
ret