Function at 0x1003a54e
Capabilities:
Delete file
Print debug messages

Disassembly:
mov eax, 0x100d960e
call fcn.100ac440
sub esp, 0x208
mov eax, dword [0x1011c710]
push edi
xor eax, ebp
mov edi, ecx
push str.GetAllFiles_Start___
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x1a0], edi
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [edi + 0x1f0]
test eax, eax
mov dword [ebp - 0x1e4], eax
je 0x1003b08d
mov eax, dword [edi + 0x29c]
mov ecx, dword [eax]
cmp ecx, eax
push ebx
push esi
mov dword [ebp - 0x190], ecx
je 0x1003a7f4
mov ecx, edi
call fcn.10006277
test eax, eax
jne 0x1003b08b
mov ecx, dword [edi + 0x1f0]
add ecx, 0x53c
call fcn.1007c00f
test eax, eax
jne 0x1003b08b
mov eax, dword [ebp - 0x190]
add eax, 0x10
push eax
lea ecx, [ebp - 0x19c]
call fcn.1002cf9f
mov ebx, dword [ebp - 0x19c]
and dword [ebp - 4], 0
test ebx, ebx
je 0x1003a7c4
push dword [ebx + 4]
lea esi, [ebx + 8]
push dword [edi + 0x21c]
push 0x100e2db4
push esi
call fcn.10001d75
mov eax, dword [esi]
add esp, 0x10
cmp dword [eax - 0xc], 0x400
jge 0x1003a7c4
cmp dword [ebx + 0x18], 0
jne 0x1003a63a
lea eax, [ebx + 0xc]
push eax
push esi
mov ecx, edi
call fcn.1002d25a
test eax, eax
je 0x1003a7c4
push str.GetFile_Player...
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push dword [ebx + 4]
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov edx, dword [ebp - 0x1e4]
mov eax, dword [esi]
mov ecx, dword [ebx + 4]
add edx, 0x324
push edx
push eax
push ecx
mov ecx, dword [ebp - 0x1e4]
add ecx, 0x32c
call fcn.10043fe6
test eax, eax
je 0x1003a7a8
push 0
lea ecx, [ebp - 0x70]
call fcn.10012bed
mov eax, dword [esi]
push 0
push eax
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 1
call fcn.10012ff8
mov byte [ebp - 0x24], 0
xor eax, eax
lea edi, [ebp - 0x23]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
lea ecx, [ebp - 0x17c]
stosb byte es:[edi], al
call fcn.100139a7
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 2
call fcn.1001287b
push eax
xor edi, edi
push edi
push edi
lea ecx, [ebp - 0x70]
call fcn.100129f6
push eax
push 0x8003
lea ecx, [ebp - 0x17c]
call fcn.10013a0c
push 0x100e2d52
lea ecx, [ebp - 0x194]
call fcn.1000223a
mov byte [ebp - 4], 3
mov dword [ebp - 0x188], edi
xor eax, eax
mov byte [ebp - 0x180], 0
lea edi, [ebp - 0x17f]
stosw word es:[edi], ax
mov eax, dword [ebp - 0x188]
movzx eax, byte [ebp + eax - 0x24]
push eax
lea eax, [ebp - 0x180]
push str._02x
push eax
call fcn.100acf5b
add esp, 0xc
lea eax, [ebp - 0x180]
push eax
lea ecx, [ebp - 0x194]
call fcn.10007475
inc dword [ebp - 0x188]
cmp dword [ebp - 0x188], 0x10
jl 0x1003a6f9
lea ecx, [ebp - 0x70]
call fcn.1001292c
lea ecx, [ebp - 0x70]
call fcn.10012dbb
add ebx, 0xc
lea eax, [ebp - 0x194]
push ebx
push eax
call fcn.10008590
test al, al
pop ecx
pop ecx
je 0x1003a779
push dword [esi]
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov ecx, dword [ebp - 0x194]
add ecx, 0xfffffff0
call fcn.10001199
lea ecx, [ebp - 0x17c]
mov byte [ebp - 4], 1
call fcn.100139b7
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0
call fcn.10012faa
mov edi, dword [ebp - 0x1a0]
mov eax, dword [esi]
push 4
push eax
call fcn.100ad0b7
test eax, eax
pop ecx
pop ecx
je 0x1003a7c4
push 0x100e2d52
mov ecx, esi
call fcn.10001f92
mov ecx, dword [ebp - 0x198]
or dword [ebp - 4], 0xffffffff
test ecx, ecx
je 0x1003a7d7
call fcn.1002cf1d
lea ecx, [ebp - 0x190]
call fcn.1002ce7e
mov eax, dword [edi + 0x29c]
cmp dword [ebp - 0x190], eax
jne 0x1003a5a8
and dword [ebp - 0x194], 0
lea ecx, [ebp - 0x1d4]
call fcn.1002daae
lea ecx, [ebp - 0x1b0]
mov dword [ebp - 4], 4
call fcn.1002da89
mov eax, dword [edi + 0x290]
mov esi, dword [eax]
mov byte [ebp - 4], 5
mov dword [ebp - 0x184], esi
jmp 0x1003a8e5
mov ecx, edi
call fcn.10006277
test eax, eax
jne 0x1003ab58
lea eax, [esi + 0x10]
mov ecx, dword [eax]
cmp dword [ecx + 0x24], 0
jbe 0x1003a8bb
mov eax, ecx
mov eax, dword [eax + 0x24]
mov dword [ebp - 0x18c], eax
add esi, 0x10
push esi
lea eax, [ebp - 0x18c]
push eax
lea ecx, [ebp - 0x1e0]
call fcn.1002cfbc
push eax
lea ecx, [ebp - 0x1bc]
call fcn.1002d143
lea eax, [ebp - 0x1bc]
push eax
lea eax, [ebp - 0x19c]
push eax
lea ecx, [ebp - 0x1d4]
mov byte [ebp - 4], 7
call fcn.10031225
mov ecx, dword [ebp - 0x1b4]
test ecx, ecx
mov byte [ebp - 4], 6
je 0x1003a8a6
call fcn.1002cf1d
mov ecx, dword [ebp - 0x1d8]
test ecx, ecx
mov byte [ebp - 4], 5
je 0x1003a8ce
call fcn.1002cf1d
jmp 0x1003a8ce
push eax
lea eax, [ebp - 0x19c]
push eax
lea ecx, [ebp - 0x1b0]
call fcn.100315d4
lea ecx, [ebp - 0x184]
call fcn.1002ce7e
mov eax, dword [edi + 0x290]
mov esi, dword [ebp - 0x184]
cmp esi, eax
jne 0x1003a82f
mov ecx, dword [ebp - 0x1ac]
mov eax, dword [ecx]
cmp eax, ecx
mov dword [ebp - 0x184], eax
je 0x1003a992
mov ecx, dword [ebp - 0x1cc]
add eax, 0xc
inc ecx
push eax
lea eax, [ebp - 0x18c]
mov dword [ebp - 0x18c], ecx
push eax
lea ecx, [ebp - 0x1e0]
call fcn.1002cfbc
push eax
lea ecx, [ebp - 0x1bc]
call fcn.1002d143
lea eax, [ebp - 0x1bc]
push eax
lea eax, [ebp - 0x19c]
push eax
lea ecx, [ebp - 0x1d4]
mov byte [ebp - 4], 9
call fcn.10031225
mov ecx, dword [ebp - 0x1b4]
test ecx, ecx
mov byte [ebp - 4], 8
je 0x1003a962
call fcn.1002cf1d
mov ecx, dword [ebp - 0x1d8]
test ecx, ecx
mov byte [ebp - 4], 5
je 0x1003a975
call fcn.1002cf1d
lea ecx, [ebp - 0x184]
call fcn.1003e75e
mov eax, dword [ebp - 0x184]
cmp eax, dword [ebp - 0x1ac]
jne 0x1003a903
lea ecx, [ebp - 0x1b0]
call fcn.1002e9c9
lea ecx, [ebp - 0x1f0]
call fcn.100855ef
lea eax, [ebp - 0x1e0]
push eax
mov ecx, edi
mov byte [ebp - 4], 0xa
call fcn.10039eec
push eax
lea ecx, [ebp - 0x1f0]
mov byte [ebp - 4], 0xb
call fcn.10033a57
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 4], 0xa
call fcn.1000e890
mov dword [ebp - 0x180], 1
call fcn.100c6d12
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
add eax, 0x10
mov dword [ebp - 0x188], eax
lea eax, [ebp - 0x18c]
push eax
mov ecx, edi
mov byte [ebp - 4], 0xc
call fcn.1002e4ec
push eax
lea ecx, [ebp - 0x188]
mov byte [ebp - 4], 0xd
call fcn.10001eb6
mov ecx, dword [ebp - 0x18c]
add ecx, 0xfffffff0
mov byte [ebp - 4], 0xc
call fcn.10001199
lea ecx, [ebp - 0x1c8]
call fcn.1002daae
mov ecx, dword [ebp - 0x1d0]
mov eax, dword [ecx]
cmp eax, ecx
mov esi, eax
mov byte [ebp - 4], 0xe
mov dword [ebp - 0x184], esi
je 0x1003ac5e
lea ecx, [ebp - 0x1bc]
call fcn.100855ef
mov eax, dword [esi + 0x10]
push dword [eax + 0x14]
lea eax, [ebp - 0x208]
push eax
mov ecx, edi
mov byte [ebp - 4], 0xf
call fcn.1003537f
push eax
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 4], 0x10
call fcn.10033a57
lea ecx, [ebp - 0x208]
mov byte [ebp - 4], 0xf
call fcn.1000e890
lea eax, [ebp - 0x188]
push eax
lea eax, [ebp - 0x18c]
push eax
lea ecx, [ebp - 0x1bc]
call fcn.1002dc57
mov ecx, edi
call fcn.10006277
test eax, eax
jne 0x1003adf4
mov ebx, dword [ebp - 0x1b8]
cmp dword [ebp - 0x18c], ebx
jne 0x1003abcd
mov eax, dword [esi + 0x10]
push dword [eax + 0x14]
mov ecx, edi
call fcn.1002db80
test eax, eax
jne 0x1003abcd
cmp dword [ebp - 0x1b4], eax
je 0x1003ab3d
cmp dword [ebp - 0x1e8], eax
je 0x1003ab3d
mov eax, dword [ebx]
cmp eax, ebx
mov dword [ebp - 0x1a4], eax
je 0x1003ab3d
add eax, 0xc
push eax
lea eax, [ebp - 0x190]
push eax
lea ecx, [ebp - 0x1f0]
call fcn.1002dc57
mov eax, dword [ebp - 0x190]
cmp eax, dword [ebp - 0x1ec]
jne 0x1003ab73
lea ecx, [ebp - 0x1a4]
call fcn.100852e0
mov eax, dword [ebp - 0x1a4]
cmp eax, dword [ebp - 0x1b8]
jne 0x1003ab00
add esi, 0x10
push esi
lea eax, [ebp - 0x19c]
push eax
lea ecx, [ebp - 0x1b0]
call fcn.100315d4
jmp 0x1003ac32
lea ecx, [ebp - 0x1d4]
call fcn.1002e9a3
lea ecx, [ebp - 0x1b0]
call fcn.1002e9c9
jmp 0x1003b06d
add esi, 0x10
push esi
lea eax, [ebp - 0x180]
push eax
lea ecx, [ebp - 0x214]
call fcn.1002cfbc
push eax
lea ecx, [ebp - 0x1fc]
call fcn.1002d143
lea eax, [ebp - 0x1fc]
push eax
lea eax, [ebp - 0x19c]
push eax
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x14
call fcn.10031225
mov ecx, dword [ebp - 0x1f4]
test ecx, ecx
mov byte [ebp - 4], 0x13
je 0x1003abc5
call fcn.1002cf1d
mov ecx, dword [ebp - 0x20c]
jmp 0x1003ac1f
add esi, 0x10
push esi
lea eax, [ebp - 0x180]
push eax
lea ecx, [ebp - 0x1c]
call fcn.1002cfbc
push eax
lea ecx, [ebp - 0x1e0]
call fcn.1002d143
lea eax, [ebp - 0x1e0]
push eax
lea eax, [ebp - 0x19c]
push eax
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x12
call fcn.10031225
mov ecx, dword [ebp - 0x1d8]
test ecx, ecx
mov byte [ebp - 4], 0x11
je 0x1003ac1c
call fcn.1002cf1d
mov ecx, dword [ebp - 0x14]
test ecx, ecx
mov byte [ebp - 4], 0xf
je 0x1003ac2c
call fcn.1002cf1d
inc dword [ebp - 0x180]
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 4], 0xe
call fcn.1000e890
lea ecx, [ebp - 0x184]
call fcn.1002ce7e
mov esi, dword [ebp - 0x184]
cmp esi, dword [ebp - 0x1d0]
jne 0x1003aa53
mov ecx, dword [ebp - 0x1ac]
mov eax, dword [ecx]
cmp eax, ecx
mov dword [ebp - 0x184], eax
je 0x1003acee
add eax, 0xc
push eax
lea eax, [ebp - 0x180]
push eax
lea ecx, [ebp - 0x1c]
call fcn.1002cfbc
push eax
lea ecx, [ebp - 0x1e0]
call fcn.1002d143
lea eax, [ebp - 0x1e0]
push eax
lea eax, [ebp - 0x19c]
push eax
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x16
call fcn.10031225
mov ecx, dword [ebp - 0x1d8]
test ecx, ecx
mov byte [ebp - 4], 0x15
je 0x1003acbf
call fcn.1002cf1d
mov ecx, dword [ebp - 0x14]
test ecx, ecx
mov byte [ebp - 4], 0xe
je 0x1003accf
call fcn.1002cf1d
inc dword [ebp - 0x180]
lea ecx, [ebp - 0x184]
call fcn.1003e75e
mov eax, dword [ebp - 0x184]
cmp eax, dword [ebp - 0x1ac]
jne 0x1003ac70
lea ecx, [ebp - 0x1d4]
call fcn.1002e9a3
lea ecx, [ebp - 0x1b0]
call fcn.1002e9c9
mov eax, dword [ebp - 0x1c4]
mov esi, dword [eax]
cmp esi, eax
mov dword [ebp - 0x184], esi
je 0x1003b033
mov edi, dword [ebp - 0x1a0]
mov ecx, dword [edi + 0x1f0]
add ecx, 0x53c
call fcn.1007c00f
test eax, eax
jne 0x1003b0a6
mov ecx, edi
call fcn.10006277
test eax, eax
jne 0x1003b0a6
lea eax, [esi + 0x10]
push eax
lea ecx, [ebp - 0x19c]
call fcn.1002cf9f
lea ecx, [ebp - 0x184]
mov byte [ebp - 4], 0x17
call fcn.1002ce7e
push esi
lea eax, [ebp - 0x18c]
push eax
lea ecx, [ebp - 0x1c8]
call fcn.1002e712
mov esi, dword [ebp - 0x19c]
test esi, esi
je 0x1003b008
push dword [esi]
lea edi, [esi + 8]
push dword [esi + 0x18]
push 0x100e86c8
push edi
call fcn.10001d75
push dword [edi]
mov eax, dword [ebp - 0x1a0]
push dword [eax + 0x21c]
lea ebx, [esi + 0x10]
push 0x100e2db4
push ebx
call fcn.10001d75
mov ecx, dword [ebp - 0x1a0]
add esp, 0x20
lea eax, [esi + 0x18]
push eax
push ebx
call fcn.1002d25a
cmp dword [esi + 0x28], 0
mov dword [ebp - 0x18c], eax
jne 0x1003addd
test eax, eax
je 0x1003b008
cmp dword [esi + 0x34], 0
je 0x1003ae29
push 0x100e2d52
mov ecx, ebx
call fcn.10001f92
jmp 0x1003b008
lea ecx, [ebp - 0x1d4]
call fcn.1002e9a3
lea ecx, [ebp - 0x1b0]
call fcn.1002e9c9
lea ecx, [ebp - 0x1c8]
call fcn.1002e9a3
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 4], 0xe
call fcn.1000e890
jmp 0x1003b041
mov eax, dword [ebp - 0x1a0]
mov eax, dword [eax + 0x214]
test eax, eax
jbe 0x1003ae4e
cmp dword [ebp - 0x194], 0
jbe 0x1003ae4e
cmp dword [ebp - 0x194], eax
ja 0x1003b008
push dword [esi + 0x2c]
mov ecx, dword [ebp - 0x1a0]
call fcn.1002cccc
test eax, eax
je 0x1003b008
push str.GetFile_Ads...
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push dword [edi]
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [ebp - 0x1e4]
mov ecx, dword [ebx]
mov edi, dword [edi]
lea edx, [eax + 0x324]
push edx
push ecx
push edi
lea ecx, [eax + 0x32c]
call fcn.10043fe6
test eax, eax
je 0x1003afc4
push 0
lea ecx, [ebp - 0x70]
call fcn.10012bed
mov eax, dword [ebx]
push 0
push eax
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x18
call fcn.10012ff8
mov byte [ebp - 0x24], 0
xor eax, eax
lea edi, [ebp - 0x23]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
lea ecx, [ebp - 0x17c]
stosb byte es:[edi], al
call fcn.100139a7
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x19
call fcn.1001287b
push eax
xor edi, edi
push edi
push edi
lea ecx, [ebp - 0x70]
call fcn.100129f6
push eax
push 0x8003
lea ecx, [ebp - 0x17c]
call fcn.10013a0c
push 0x100e2d52
lea ecx, [ebp - 0x1a4]
call fcn.1000223a
mov byte [ebp - 4], 0x1a
mov dword [ebp - 0x190], edi
xor eax, eax
mov byte [ebp - 0x180], 0
lea edi, [ebp - 0x17f]
stosw word es:[edi], ax
mov eax, dword [ebp - 0x190]
movzx eax, byte [ebp + eax - 0x24]
push eax
lea eax, [ebp - 0x180]
push str._02x
push eax
call fcn.100acf5b
add esp, 0xc
lea eax, [ebp - 0x180]
push eax
lea ecx, [ebp - 0x1a4]
call fcn.10007475
inc dword [ebp - 0x190]
cmp dword [ebp - 0x190], 0x10
jl 0x1003af1b
lea ecx, [ebp - 0x70]
call fcn.1001292c
lea ecx, [ebp - 0x70]
call fcn.10012dbb
lea eax, [esi + 0x18]
push eax
lea eax, [ebp - 0x1a4]
push eax
call fcn.10008590
test al, al
pop ecx
pop ecx
je 0x1003af9b
push dword [ebx]
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov ecx, dword [ebp - 0x1a4]
add ecx, 0xfffffff0
call fcn.10001199
lea ecx, [ebp - 0x17c]
mov byte [ebp - 4], 0x18
call fcn.100139b7
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x17
call fcn.10012faa
mov eax, dword [ebx]
push 4
push eax
call fcn.100ad0b7
test eax, eax
pop ecx
pop ecx
je 0x1003afe0
push 0x100e2d52
mov ecx, ebx
call fcn.10001f92
cmp dword [ebp - 0x18c], 0
je 0x1003b008
mov ebx, dword [ebx]
push 4
push ebx
call fcn.100ad0b7
test eax, eax
pop ecx
pop ecx
jne 0x1003b008
push dword [esi + 0x1c]
call fcn.100ad185
add dword [ebp - 0x194], eax
pop ecx
mov ecx, dword [ebp - 0x198]
test ecx, ecx
mov byte [ebp - 4], 0xe
je 0x1003b01b
call fcn.1002cf1d
mov esi, dword [ebp - 0x184]
cmp esi, dword [ebp - 0x1c4]
jne 0x1003ad1a
mov edi, dword [ebp - 0x1a0]
mov ecx, edi
call fcn.10034eb1
mov ecx, edi
call fcn.10032d3f
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0xc
call fcn.100317c2
mov ecx, dword [ebp - 0x188]
add ecx, 0xfffffff0
call fcn.10001199
lea ecx, [ebp - 0x1f0]
mov byte [ebp - 4], 5
call fcn.1000e890
lea ecx, [ebp - 0x1b0]
mov byte [ebp - 4], 4
call fcn.10033b5b
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1d4]
call fcn.100317c2
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
pop edi
call fcn.100ac33f
leave
ret 4
lea ecx, [ebp - 0x1c8]
call fcn.1002e9a3
jmp 0x1003b041