Function at 0x5b3430
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff40
push ebx
push esi
xor eax, eax
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0x34], eax
xor eax, eax
push ebp
push 0x5b396e
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 0xb5], 0
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
call fcn.005b9b50
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
mov eax, dword [eax + 0x160]
push eax
call sub.kernel32.dll_DeleteFileW
lea eax, [ebp - 0x34]
call fcn.0061cf6c
call fcn.0064d630
mov edx, dword [0x66f3fc]
mov dword [edx], eax
call fcn.0064d630
mov edx, dword [0x66ff34]
mov dword [edx], eax
mov byte [ebp - 0x2a], 0
mov byte [ebp - 0x29], 0
mov byte [ebp - 0xaf], 0
call fcn.004c1cbc
mov dword [ebp - 0xc], eax
call fcn.0064d5e0
mov edx, dword [0x6702f4]
mov dword [edx], eax
call fcn.0064d630
mov edx, dword [0x66f840]
mov dword [edx], eax
call fcn.0064e78c
mov dword [ebp - 0xb4], eax
lea eax, [ebp - 7]
mov edx, 7
call fcn.00658ea4
xor eax, eax
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0xac], 1
xor eax, eax
mov dword [ebp - 0x20], eax
xor eax, eax
mov dword [ebp - 0x1c], eax
call fcn.0064d630
mov dword [ebp - 0x3c], eax
call fcn.0064d630
mov dword [ebp - 0x14], eax
mov byte [ebp - 0xae], 0
mov byte [ebp - 0xad], 0
xor eax, eax
mov dword [ebp - 0x30], eax
mov edx, 0x5b398c
mov eax, dword [ebp - 0xc]
call fcn.004c2260
mov ebx, eax
lea eax, [ebx + 0x34]
mov edx, 0x5b3998
call fcn.004038bc
mov ecx, 0x5b39c0
mov edx, 0x5b39dc
mov eax, ebx
call fcn.004c22f8
push ebp
mov al, 3
call fcn.005ab55c
pop ecx
push ebp
mov al, 6
call fcn.005ab55c
pop ecx
mov edx, 0x5b39ec
mov eax, dword [ebp - 0xc]
call fcn.004c2260
mov ebx, eax
lea eax, [ebx + 0x34]
mov edx, 0x5b3a00
call fcn.004038bc
mov ecx, 0x5b3a18
mov edx, 0x5b39dc
mov eax, ebx
call fcn.004c22f8
mov edx, 0x5b3a3c
mov eax, ebx
call fcn.004c2260
mov esi, eax
mov ecx, 0x5b3a54
mov edx, 0x5b3a64
mov eax, esi
call fcn.004c2044
lea edx, [ebp - 0xc0]
mov eax, 0x5b3a70
call fcn.004c1bb8
mov ecx, dword [ebp - 0xc0]
mov edx, 0x5b3a88
mov eax, esi
call fcn.004c2044
mov ecx, 0x5b3a98
mov edx, 0x5b3ab4
mov eax, esi
call fcn.004c2044
mov edx, 0x5b3a3c
mov eax, ebx
call fcn.004c2260
mov esi, eax
mov ecx, 0x5b3ac4
mov edx, 0x5b3a64
mov eax, esi
call fcn.004c2044
mov ecx, 0x5b3acc
mov edx, 0x5b3b04
mov eax, esi
call fcn.004c22f8
mov ecx, 0x5b3b14
mov edx, 0x5b3ab4
mov eax, esi
call fcn.004c2044
mov edx, 0x5b3a3c
mov eax, ebx
call fcn.004c2260
mov ebx, eax
mov ecx, 0x5b3b30
mov edx, 0x5b3a64
mov eax, ebx
call fcn.004c2044
lea edx, [ebp - 0xc0]
mov eax, 0x5b3b40
call fcn.004c1bb8
mov ecx, dword [ebp - 0xc0]
mov edx, 0x5b3a88
mov eax, ebx
call fcn.004c2044
mov ecx, 0x5b3b60
mov edx, 0x5b3ab4
mov eax, ebx
call fcn.004c2044
push ebp
lea edx, [ebp - 0xc0]
mov eax, 0x5b3b7c
call fcn.004c1b58
mov edx, dword [ebp - 0xc0]
mov eax, 0x5b3b94
call fcn.005ab640
pop ecx
mov edx, 0x5b3bb0
mov eax, dword [ebp - 0xc]
call fcn.004c2288
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
add eax, 0x34
mov edx, 0x5b3bc0
call fcn.004038bc
mov eax, dword [ebp - 0x18]
mov byte [eax + 0x30], 1
push ebp
call fcn.005ac42c
pop ecx
push ebp
call fcn.005aba60
pop ecx
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
mov eax, dword [eax + 0x598]
mov ebx, dword [eax + 0x18]
dec ebx
cmp ebx, 0
jl 0x5b3706
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
mov eax, dword [eax + 0x598]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax + ebx*4]
mov dword [eax + 0x38], ebx
dec ebx
cmp ebx, 0xffffffff
jne 0x5b36eb
push ebp
call fcn.005af784
pop ecx
push ebp
call fcn.005afb54
pop ecx
push ebp
call fcn.005b026c
pop ecx
mov eax, dword [0x66f0f0]
push eax
mov edx, dword [0x66f1d4]
mov ecx, 0xb
mov eax, dword [ebp - 0x18]
call fcn.004c2380
mov edx, 0x5b3bec
mov eax, dword [ebp - 0x18]
call fcn.004c2288
mov ebx, eax
push ebp
mov eax, dword [ebp + 8]
add eax, 0xffffffcc
mov ecx, ebx
mov edx, dword [ebp - 0x18]
call fcn.005b3358
pop ecx
mov eax, dword [0x670050]
test byte [eax + 1], 0x40
je 0x5b3785
mov eax, dword [ebp + 8]
mov edx, dword [eax - 0x24]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
call fcn.005bd358
mov edx, dword [ebp + 8]
cmp eax, dword [edx - 0x20]
jne 0x5b3785
mov edx, 0x5b3bfc
mov eax, ebx
call fcn.004c2288
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
mov eax, dword [eax + 0x1d4]
mov ebx, dword [eax + 0x18]
dec ebx
cmp ebx, 0
jl 0x5b37c5
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
mov eax, dword [eax + 0x1d4]
mov edx, dword [eax + 0x1c]
mov edx, dword [edx + ebx*4]
cmp byte [edx + 0xc4], 0
je 0x5b37bf
mov edx, dword [ebp + 8]
mov edx, ebx
call fcn.0064ec4c
dec ebx
cmp ebx, 0xffffffff
jne 0x5b379a
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
mov dl, byte [0x5b3c00]
cmp dl, byte [eax + 0x594]
je 0x5b37eb
push ebp
mov al, 1
call fcn.005ac8c4
pop ecx
push ebp
mov al, 2
call fcn.005ac8c4
pop ecx
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x18]
dec eax
test eax, eax
jl 0x5b3854
inc eax
mov dword [ebp - 0xbc], eax
xor ebx, ebx
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x1c]
mov esi, dword [eax + ebx*4]
lea eax, [esi + 0x34]
mov ecx, dword [esi + 0x34]
mov edx, dword [ebp - 0x34]
call fcn.00403b14
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax + ebx*4]
cmp eax, dword [ebp - 0x18]
jne 0x5b3835
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x24]
mov edx, dword [ebp + 8]
sub eax, dword [edx - 0x34]
shl eax, 9
jmp 0x5b3837
xor eax, eax
test eax, eax
setg dl
push edx
mov ecx, eax
mov edx, 0x5b3c0c
mov eax, esi
call fcn.004c2824
inc ebx
dec dword [ebp - 0xbc]
jne 0x5b37ff
mov eax, dword [ebp - 0x14]
call fcn.004028c0
mov eax, dword [ebp - 0xb4]
call fcn.0064edac
mov eax, dword [0x66f840]
mov eax, dword [eax]
call fcn.004028c0
mov eax, dword [0x6702f4]
mov eax, dword [eax]
call fcn.004028c0
mov eax, dword [ebp - 0xc]
call fcn.004c291c
mov eax, dword [0x66f3fc]
mov eax, dword [eax]
mov dl, 1
call fcn.00650140
mov eax, dword [0x670288]
mov byte [eax], 1
mov eax, dword [0x66fbf4]
mov byte [eax], 0
cmp byte [ebp - 0xb5], 0
jne 0x5b38cd
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
mov edx, dword [eax + 0x160]
mov eax, dword [ebp - 0x34]
call fcn.00437b0c
test al, al
jne 0x5b38cd
mov byte [ebp - 0xb5], 2
mov eax, dword [0x66fbf4]
mov byte [eax], 1
mov eax, dword [0x670288]
mov byte [eax], 0
mov eax, dword [0x66f3fc]
call fcn.00652f6c
mov eax, dword [0x66ff34]
mov eax, dword [eax]
call fcn.004028c0
xor edx, edx
mov eax, dword [ebp - 0x34]
call fcn.00622138
mov eax, dword [ebp - 0x3c]
mov ebx, dword [eax + 0x24]
dec ebx
cmp ebx, 0
jl 0x5b391e
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 0x18]
mov eax, dword [eax + ebx*4]
push eax
call sub.kernel32.dll_DeleteFileW
dec ebx
cmp ebx, 0xffffffff
jne 0x5b3909
mov eax, dword [ebp - 0x3c]
call fcn.004028c0
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x44]
mov eax, dword [eax + 0x160]
mov ecx, 1
mov edx, 0xc0000000
call fcn.00658f04
mov edx, dword [ebp + 8]
mov edx, dword [edx - 0x44]
mov dword [edx + 0x164], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5b3975
lea eax, [ebp - 0xc0]
call fcn.00403274
lea eax, [ebp - 0x34]
call fcn.00403880
ret