Function at 0x40fbff
Capabilities:
Delete file
Enumerate files on windows
Write file on windows

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffb04
push ebx
push esi
push edi
mov ebx, dword [ebp + 8]
mov edi, 0x4221f4
push 0x800
call fcn.0041e63c
pop ecx
mov dword [ebp - 4], eax
push 0x800
call fcn.0041e63c
pop ecx
mov dword [ebp - 8], eax
push 0x800
call fcn.0041e63c
pop ecx
mov dword [ebp - 0xc], eax
call sub.KERNEL32.dll_GetTickCount
mov dword [ebp - 0x10], eax
mov byte [0x429d24], 0
mov dword [0x421074], 1
mov dword [0x421090], 1
lea eax, [edi + 0x164c]
push eax
push ebx
call fcn.004016c9
add esp, 8
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x40fd68
mov edx, dword [ebp - 0x1c]
movsx ecx, byte [edx + 4]
cmp ecx, 0x3a
jne 0x40fcbf
mov eax, dword [ebp - 0x1c]
add eax, 5
push eax
push dword [0x429490]
call fcn.00416db4
add esp, 8
push 0x20
push dword [0x429490]
call fcn.00416ee9
add esp, 8
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x40fd07
mov edx, dword [ebp - 0x20]
mov byte [edx], 0
jmp 0x40fd07
push 0xff
push dword [0x429490]
push 0
call sub.KERNEL32.dll_GetModuleFileNameA
push dword [0x429490]
call sub.KERNEL32.dll_lstrlenA
add eax, dword [0x429490]
dec eax
jmp 0x40fce6
dec eax
movsx ecx, byte [eax]
cmp ecx, 0x5c
jne 0x40fce5
mov byte [eax + 1], 0
lea eax, [edi + 0x1651]
push eax
push dword [0x429490]
call fcn.00416cd8
add esp, 8
push 0
push 0x80
push 2
push 0
push 3
push 0xc0000000
push dword [0x429490]
call sub.KERNEL32.dll_CreateFileA
mov dword [0x422000], eax
lea edx, [edi + 0x1670]
push edx
lea ecx, [edi + 0x165c]
push ecx
push dword [0x42111a]
call sub.USER32.dll_wsprintfA
add esp, 0xc
push 0
lea eax, [ebp - 0x14]
push eax
push dword [0x42111a]
call sub.KERNEL32.dll_lstrlenA
push eax
push dword [0x42111a]
push dword [0x422000]
call sub.KERNEL32.dll_WriteFile
lea edx, [edi + 0x1675]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x40ff0f
xor ecx, ecx
mov dword [ebp - 0x24], ecx
lea eax, [edi + 0x167e]
push eax
call sub.KERNEL32.dll_GetModuleHandleA
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jne 0x40fdb1
push 0
lea edx, [edi + 0x169b]
push edx
lea ecx, [edi + 0x1687]
push ecx
push 0
call sub.USER32.dll_MessageBoxA
lea eax, [edi + 0x16a1]
push eax
push dword [ebp - 0x24]
call sub.KERNEL32.dll_GetProcAddress
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
jne 0x40fde0
push 0
lea edx, [edi + 0x16c8]
push edx
lea ecx, [edi + 0x16af]
push ecx
push 0
call sub.USER32.dll_MessageBoxA
push 0xfffffffffffffff5
call sub.KERNEL32.dll_GetStdHandle
mov dword [0x422010], eax
push 0xffffffffffffffff
call dword [ebp - 0x28]
test eax, eax
je 0x40feca
cmp dword [0x422000], 0
je 0x40fe55
push 0
lea eax, [ebp - 0x14]
push eax
lea edx, [edi + 0x16e1]
push edx
call sub.KERNEL32.dll_lstrlenA
push eax
lea ecx, [edi + 0x16ce]
push ecx
push dword [0x422000]
call sub.KERNEL32.dll_WriteFile
cmp dword [0x422010], 0xffffffff
jne 0x40fe55
push 0
lea eax, [ebp - 0x14]
push eax
lea edx, [edi + 0x1700]
push edx
call sub.KERNEL32.dll_lstrlenA
push eax
lea ecx, [edi + 0x16f4]
push ecx
push dword [0x422000]
call sub.KERNEL32.dll_WriteFile
lea eax, [edi + 0x1720]
push eax
lea edx, [edi + 0x170c]
push edx
push dword [0x42111a]
call sub.USER32.dll_wsprintfA
add esp, 0xc
push 0
lea ecx, [ebp - 0x2c]
push ecx
push dword [0x42111a]
call fcn.00416de4
pop ecx
push eax
push dword [0x42111a]
push dword [0x422010]
call sub.KERNEL32.dll_WriteConsoleA
test eax, eax
jne 0x40ff0f
push dword [0x42111a]
call fcn.00404791
pop ecx
push 0
lea eax, [ebp - 0x14]
push eax
push dword [0x42111a]
call sub.KERNEL32.dll_lstrlenA
push eax
push dword [0x42111a]
push dword [0x422000]
call sub.KERNEL32.dll_WriteFile
jmp 0x40ff0f
call sub.KERNEL32.dll_AllocConsole
lea edx, [edi + 0x1739]
push edx
lea ecx, [edi + 0x1725]
push ecx
push dword [0x42111a]
call sub.USER32.dll_wsprintfA
add esp, 0xc
push 0
lea eax, [ebp - 0x30]
push eax
push dword [0x42111a]
call fcn.00416de4
pop ecx
push eax
push dword [0x42111a]
push dword [0x422010]
call sub.KERNEL32.dll_WriteConsoleA
lea edx, [edi + 0x173e]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
jne 0x40ff65
cmp dword [0x422000], 0
je 0x4113c5
push 0
lea ecx, [ebp - 0x14]
push ecx
lea eax, [edi + 0x1763]
push eax
call sub.KERNEL32.dll_lstrlenA
push eax
lea edx, [edi + 0x1743]
push edx
push dword [0x422000]
call sub.KERNEL32.dll_WriteFile
push dword [0x422000]
call sub.KERNEL32.dll_CloseHandle
jmp 0x4113c5
push ebx
push dword [ebp - 4]
call fcn.00416db4
add esp, 8
push 0x22
push dword [ebp - 4]
call fcn.00416ee9
add esp, 8
test eax, eax
je 0x40ff85
mov byte [eax], 0x20
push dword [ebp - 4]
call fcn.0040148a
pop ecx
xor ecx, ecx
mov dword [ebp - 0x40], ecx
push 0x22
push dword [ebp - 4]
call fcn.00416ee9
add esp, 8
mov esi, eax
test esi, esi
jne 0x40ffb5
push 0x20
push dword [ebp - 4]
call fcn.00416ee9
add esp, 8
mov esi, eax
test esi, esi
je 0x411334
push 0x22
push dword [ebp - 4]
call fcn.00416ee9
add esp, 8
test eax, eax
je 0x40ffd0
mov esi, eax
mov byte [esi], 0
push 0x2a
push dword [ebp - 4]
call fcn.00416ee9
add esp, 8
test eax, eax
jne 0x40fff5
push 0x3f
push dword [ebp - 4]
call fcn.00416ee9
add esp, 8
test eax, eax
je 0x40fffc
mov dword [ebp - 0x40], 1
inc esi
push esi
push 0x429499
call fcn.00416db4
add esp, 8
push 0x22
push 0x429499
call fcn.00416ee9
add esp, 8
mov esi, eax
test esi, esi
je 0x410023
mov byte [esi], 0x20
push 0x429499
call fcn.0040148a
pop ecx
push 0x22
push 0x429499
call fcn.00416ee9
add esp, 8
mov esi, eax
test esi, esi
je 0x410048
mov byte [esi], 0
jmp 0x410059
push 0x20
push 0x429499
call fcn.00416ee9
add esp, 8
mov esi, eax
test esi, esi
je 0x410060
mov byte [esi], 0
mov eax, 0x429499
test eax, eax
je 0x4113c5
cmp dword [ebp - 0x40], 0
je 0x41008d
cmp dword [ebp - 0x40], 0
je 0x4100d6
lea edx, [edi + 0x1783]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
jne 0x4100d6
push 0x429499
call fcn.00401642
pop ecx
mov esi, eax
test esi, esi
je 0x4100c0
inc esi
mov byte [esi + 4], 0
push 4
push esi
lea eax, [ebp - 0x3c]
push eax
call fcn.00416fb0
add esp, 0xc
mov byte [ebp - 0x38], 0
lea edx, [ebp - 0x3c]
push edx
call fcn.004014b4
pop ecx
cmp dword [ebp - 0x40], 0
je 0x410155
mov dword [0x4210dc], 1
jmp 0x410155
lea ecx, [edi + 0x1787]
push ecx
push ebx
call fcn.004016c9
add esp, 8
mov esi, eax
test esi, esi
je 0x410155
add esi, 3
push 4
push esi
lea eax, [ebp - 0x3c]
push eax
call fcn.00416fb0
add esp, 0xc
mov byte [ebp - 0x38], 0
lea edx, [ebp - 0x3c]
push edx
call fcn.004014b4
pop ecx
lea ecx, [ebp - 0x3c]
push ecx
call sub.USER32.dll_CharLowerA
push 0x429499
push dword [ebp - 8]
call fcn.00416db4
add esp, 8
mov eax, dword [ebp - 8]
cmp byte [eax], 0
je 0x410155
push dword [ebp - 8]
call fcn.00416de4
pop ecx
mov edx, dword [ebp - 8]
movsx ecx, byte [edx + eax - 1]
cmp ecx, 0x5c
je 0x410155
lea eax, [edi + 0x178b]
push eax
push dword [ebp - 8]
call fcn.00416cd8
add esp, 8
test esi, esi
jne 0x41019b
cmp dword [0x422000], 0
je 0x4113c5
push 0
lea edx, [ebp - 0x14]
push edx
lea ecx, [edi + 0x17a5]
push ecx
call sub.KERNEL32.dll_lstrlenA
push eax
lea eax, [edi + 0x178d]
push eax
push dword [0x422000]
call sub.KERNEL32.dll_WriteFile
push dword [0x422000]
call sub.KERNEL32.dll_CloseHandle
jmp 0x4113c5
xor esi, esi
mov eax, dword [esi*4 + 0x42117c]
inc eax
push eax
lea edx, [ebp - 0x3c]
push edx
call fcn.00416f68
add esp, 8
test eax, eax
jne 0x4101bf
lea ecx, [esi + 1]
mov dword [0x421164], ecx
inc esi
cmp esi, 0xe
jl 0x41019d
cmp dword [0x421164], 0
je 0x4113c5
mov eax, dword [0x421164]
mov dword [ebp - 0x44], eax
lea edx, [edi + 0x17bd]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x410228
add eax, 8
push eax
lea edx, [ebp - 0x19c]
push edx
call fcn.00416db4
add esp, 8
push 0x20
lea ecx, [ebp - 0x19c]
push ecx
call fcn.00416ee9
add esp, 8
mov esi, eax
test esi, esi
je 0x41021b
mov byte [esi], 0
lea eax, [ebp - 0x19c]
push eax
call fcn.0040f7e4
pop ecx
lea edx, [edi + 0x17c6]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x410276
add eax, 0xd
push eax
lea edx, [ebp - 0x29c]
push edx
call fcn.00416db4
add esp, 8
push 0x20
lea ecx, [ebp - 0x29c]
push ecx
call fcn.00416ee9
add esp, 8
mov esi, eax
test esi, esi
je 0x410269
mov byte [esi], 0
lea eax, [ebp - 0x29c]
push eax
call fcn.0040f8f2
pop ecx
lea edx, [edi + 0x17d4]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x410294
mov dword [0x4210a8], 1
lea ecx, [edi + 0x17e0]
push ecx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x4102b2
mov dword [0x422004], 1
lea eax, [edi + 0x17ec]
push eax
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x4102d0
mov dword [0x4210e4], 1
lea edx, [edi + 0x17f3]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x4102eb
or dword [0x421104], 1
lea ecx, [edi + 0x17f8]
push ecx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x410309
mov dword [0x421088], 1
lea eax, [edi + 0x17fe]
push eax
push ebx
call fcn.004016c9
add esp, 8
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0
je 0x41048e
mov edx, dword [ebp - 0x48]
add edx, 9
push edx
push dword [0x429490]
call fcn.00416db4
add esp, 8
push 0x2c
push dword [0x429490]
call fcn.0040fb99
add esp, 8
inc eax
mov dword [ebp - 0x4c], eax
xor ecx, ecx
mov dword [ebp - 0x50], ecx
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x4c]
jge 0x41048e
push 1
push 8
call fcn.0041e608
pop ecx
mov esi, eax
test eax, eax
je 0x410380
push 0xff
push esi
call fcn.00401275
add esp, 8
jmp 0x410382
mov eax, esi
push eax
push 0x429cc4
call fcn.004121a3
add esp, 0xc
push 0x2c
push dword [ebp - 0x50]
push dword [0x429490]
push 0x429cc4
call fcn.004121b9
pop ecx
push dword [eax]
call fcn.0040fb21
add esp, 0x10
push 0x2f
push 0x429cc4
call fcn.004121b9
pop ecx
push dword [eax]
call fcn.00416ee9
add esp, 8
mov esi, eax
test esi, esi
je 0x4103d0
mov byte [esi], 0
push 0x429cc4
call fcn.004121b9
pop ecx
push dword [eax]
call fcn.004014b4
pop ecx
push 1
push 8
call fcn.0041e608
pop ecx
mov dword [ebp - 0x54], eax
test eax, eax
je 0x410406
push 0xff
push dword [ebp - 0x54]
call fcn.00401275
add esp, 8
jmp 0x410409
mov eax, dword [ebp - 0x54]
push eax
push 0x429ce0
call fcn.004121a3
add esp, 0xc
push 0x3a
push 0x429cc4
call fcn.004121b9
pop ecx
push dword [eax]
call fcn.00416ee9
add esp, 8
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0
je 0x410459
mov edx, dword [ebp - 0x58]
inc edx
push edx
push 0x429ce0
call fcn.004121b9
pop ecx
push dword [eax]
call fcn.00416db4
add esp, 8
mov ecx, dword [ebp - 0x58]
mov byte [ecx], 0
jmp 0x41047b
push 0x429cc4
call fcn.004121b9
pop ecx
push dword [eax]
push 0x429ce0
call fcn.004121b9
pop ecx
push dword [eax]
call fcn.00416db4
add esp, 8
test esi, esi
jne 0x41048e
inc dword [ebp - 0x50]
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x4c]
jl 0x410360
lea edx, [edi + 0x1808]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x4104ac
mov dword [0x421080], 1
lea ecx, [edi + 0x181b]
push ecx
push ebx
call fcn.004016c9
add esp, 8
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 0
je 0x410514
push 0xff
call fcn.0041e63c
pop ecx
mov dword [0x421084], eax
mov eax, dword [ebp - 0x5c]
add eax, 9
push eax
push dword [0x421084]
call fcn.00416db4
add esp, 8
push 0x20
push dword [0x421084]
call fcn.00416ee9
add esp, 8
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0
je 0x410509
mov edx, dword [ebp - 0x60]
mov byte [edx], 0
push dword [0x421084]
call sub.USER32.dll_CharUpperA
xor ecx, ecx
mov dword [ebp - 0x64], ecx
lea eax, [edi + 0x1825]
push eax
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x410534
mov dword [ebp - 0x64], 1
lea edx, [edi + 0x182e]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x410552
mov dword [0x42107c], 1
lea ecx, [edi + 0x1832]
push ecx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x410570
mov dword [0x421d1c], 1
lea eax, [edi + 0x183a]
push eax
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x41058e
mov dword [0x421d1c], 2
lea edx, [edi + 0x1841]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
jne 0x4105b6
lea ecx, [edi + 0x184a]
push ecx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x4105c0
mov dword [0x421d1c], 3
lea eax, [edi + 0x1851]
push eax
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x4105de
mov dword [0x421d1c], 4
lea edx, [edi + 0x185d]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x4105fc
mov dword [0x4210a4], 1
lea ecx, [edi + 0x1866]
push ecx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x41061a
mov dword [0x421094], 1
xor eax, eax
mov dword [0x4210d0], eax
lea edx, [edi + 0x186e]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x41063f
mov dword [0x4210d0], 1
lea ecx, [edi + 0x1873]
push ecx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x410661
mov byte [0x421098], 3
xor eax, eax
mov dword [0x421090], eax
lea edx, [edi + 0x187b]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x410684
mov byte [0x421098], 0x43
xor ecx, ecx
mov dword [0x421090], ecx
lea eax, [edi + 0x1883]
push eax
push ebx
call fcn.004016c9
add esp, 8
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0
je 0x4106c7
mov dword [0x4210c8], 1
lea edx, [edi + 0x188c]
push edx
call fcn.00416de4
pop ecx
add eax, dword [ebp - 0x68]
push eax
lea ecx, [ebp - 0x39c]
push ecx
call fcn.00416db4
add esp, 8
lea eax, [edi + 0x1895]
push eax
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x4106e3
xor edx, edx
mov dword [0x421ff4], edx
lea ecx, [edi + 0x189b]
push ecx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x410701
mov dword [0x421ff8], 1
lea eax, [edi + 0x18a7]
push eax
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x410724
mov byte [0x421098], 0x30
xor edx, edx
mov dword [0x421090], edx
lea ecx, [edi + 0x18ac]
push ecx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x410742
mov dword [0x421114], 1
lea eax, [edi + 0x18b3]
push eax
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x410760
mov dword [0x4210b0], 1
lea edx, [edi + 0x18ba]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x41077e
mov dword [0x4210ac], 1
cmp dword [0x421164], 3
jle 0x410791
mov dword [0x4210b0], 1
lea ecx, [edi + 0x18c5]
push ecx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x4107ac
xor eax, eax
mov dword [0x4210b0], eax
lea edx, [edi + 0x18d0]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x4107d2
mov dword [0x4210b4], 1
xor ecx, ecx
mov dword [0x4210b0], ecx
lea eax, [edi + 0x18dd]
push eax
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x4107f0
mov dword [0x422008], 1
lea edx, [edi + 0x18e3]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x410810
lea ecx, [edi + 0x18e7]
mov dword [0x421178], ecx
lea eax, [edi + 0x18e9]
push eax
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x41082e
mov dword [0x421174], 1
lea edx, [edi + 0x18f0]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x41084c
mov dword [0x4210ec], 1
lea ecx, [edi + 0x18f8]
push ecx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x41086a
mov dword [0x4210f0], 1
cmp dword [0x421164], 0xb
jne 0x41087a
mov byte [0x429d24], 0x27
mov byte [0x429d25], 0
lea eax, [edi + 0x1900]
push eax
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x41089c
mov byte [0x429d24], 0x27
lea edx, [edi + 0x190d]
push edx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x4108b7
mov byte [0x429d24], 0x22
lea ecx, [edi + 0x191a]
push ecx
push ebx
call fcn.004016c9
add esp, 8
test eax, eax
je 0x4108e5
mov dword [0x4210e8], 1
cmp dword [0x421164], 0xb
je 0x4108e5
mov byte [0x429d24], 0x22
lea eax, [edi + 0x1925]
push eax
push ebx
call fcn.004016c9
add esp, 8
mov esi, eax
test esi, esi
je 0x410945
push 0x20
lea eax, [ebp - 0x18]
push eax
lea edx, [ebp - 0x9c]
push edx
lea ecx, [edi + 0x1932]
push ecx
call fcn.00416de4
pop ecx
add esi, eax
push esi
call fcn.0040fae1
add esp, 0x10
lea eax, [ebp - 0x9c]
push eax
call fcn.0041207d
pop ecx
mov dword [0x4210f4], eax
cmp dword [0x4210f4], 0
je 0x410945
mov dword [0x4210f8], 1
lea edx, [edi + 0x193f]
push edx
push ebx
call fcn.004016c9
add esp, 8
mov esi, eax
test esi, esi
je 0x41097e
push 0x20
lea eax, [ebp - 0x18]
push eax
push 0x429390
lea edx, [edi + 0x1947]
push edx
call fcn.00416de4
pop ecx
add esi, eax
push esi
call fcn.0040fae1
add esp, 0x10
lea ecx, [edi + 0x194f]
push ecx
push ebx
call fcn.00416ef5
add esp, 8
mov esi, eax
test esi, esi
je 0x4109b7
push 0x20
lea eax, [ebp - 0x18]
push eax
push 0x428f34
lea edx, [edi + 0x1957]
push edx
call fcn.00416de4
pop ecx
add esi, eax
push esi
call fcn.0040fae1
add esp, 0x10
lea ecx, [edi + 0x195f]
push ecx
push ebx
call fcn.00416ef5
add esp, 8
mov esi, eax
test esi, esi
je 0x4109f0
push 0x20
lea eax, [ebp - 0x18]
push eax
push 0x428f48
lea edx, [edi + 0x196c]
push edx
call fcn.00416de4
pop ecx
add esi, eax
push esi
call fcn.0040fae1
add esp, 0x10
lea ecx, [edi + 0x1979]
push ecx
push ebx
call fcn.00416ef5
add esp, 8
mov esi, eax
test esi, esi
je 0x410a3d
push 0x20
lea eax, [ebp - 0x18]
push eax
lea edx, [ebp - 0x9c]
push edx
lea ecx, [edi + 0x1982]
push ecx
call fcn.00416de4
pop ecx
add esi, eax
push esi
call fcn.0040fae1
add esp, 0x10
lea eax, [ebp - 0x9c]
push eax
call fcn.0041207d
pop ecx
mov dword [0x421100], eax
lea edx, [edi + 0x198b]
push edx
push ebx
call fcn.004016c9
add esp, 8
mov esi, eax
test esi, esi
je 0x410a8a
push 0x20
lea eax, [ebp - 0x18]
push eax
lea edx, [ebp - 0x9c]
push edx
lea ecx, [edi + 0x1992]
push ecx
call fcn.00416de4
pop ecx
add esi, eax
push esi
call fcn.0040fae1
add esp, 0x10
lea eax, [ebp - 0x9c]
push eax
call fcn.0041207d
pop ecx
mov dword [0x4210d4], eax
lea edx, [edi + 0x1999]
push edx
push ebx
call fcn.004016c9
add esp, 8
mov esi, eax
mov byte [0x42938a], 0x2c
mov byte [0x42938b], 0
test esi, esi
je 0x410b50
push 4
lea eax, [edi + 0x199e]
push eax
lea edx, [esi + 4]
push edx
call fcn.00417000
add esp, 0xc
test eax, eax
jne 0x410adb
mov byte [0x42938a], 0x7c
mov byte [0x42938b], 0
jmp 0x410b50
push 3
lea ecx, [edi + 0x19a3]
push ecx
lea eax, [esi + 4]
push eax
call fcn.00417000
add esp, 0xc
test eax, eax
jne 0x410b04
mov byte [0x42938a], 9
mov byte [0x42938b], 0
jmp 0x410b50
push 5
lea edx, [edi + 0x19a7]
push edx
lea ecx, [esi + 4]
push ecx
call fcn.00417000
add esp, 0xc
test eax, eax
jne 0x410b2d
mov byte [0x42938a], 0x20
mov byte [0x42938b], 0
jmp 0x410b50
push 0x20
lea eax, [ebp - 0x18]
push eax
push 0x42938a
lea edx, [edi + 0x19ad]
push edx
call fcn.00416de4
pop ecx
add esi, eax
push esi
call fcn.0040fae1
add esp, 0x10
mov dword [ebp - 0x6c], 0xffffffff
cmp dword [ebp - 0x40], 0
je 0x410c04
push dword [ebp - 4]
push dword [ebp - 0xc]
call fcn.00416db4
add esp, 8
push dword [ebp - 0xc]
call sub.KERNEL32.dll_lstrlenA
add eax, dword [ebp - 0xc]
dec eax
jmp 0x410b7e
dec eax
movsx ecx, byte [eax]
cmp ecx, 0x5c
jne 0x410b7d
mov byte [eax + 1], 0
mov dword [0x4210d8], 1
lea eax, [ebp - 0x4dc]
push eax
push dword [ebp - 4]
call sub.KERNEL32.dll_FindFirstFileA
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0xffffffff
jne 0x410c04
cmp dword [0x422000], 0
je 0x4113c5
push dword [ebp - 4]
lea edx, [edi + 0x19b2]
push edx
push dword [0x42111a]
call sub.USER32.dll_wsprintfA
add esp, 0xc
push 0
lea ecx, [ebp - 0x14]
push ecx
push dword [0x42111a]
call sub.KERNEL32.dll_lstrlenA
push eax
push dword [0x42111a]
push dword [0x422000]
call sub.KERNEL32.dll_WriteFile
push dword [0x422000]
call sub.KERNEL32.dll_CloseHandle
jmp 0x4113c5
cmp dword [0x4210dc], 0
je 0x410c17
mov dword [0x4210e0], 1
push 1
push 0x1f7
call fcn.0041e608
pop ecx
mov dword [ebp - 0x70], eax
test eax, eax
je 0x410c36
push dword [ebp - 0x70]
call fcn.004121fa
pop ecx
jmp 0x410c39
mov eax, dword [ebp - 0x70]
push eax
push 0x429cfc
call fcn.004122bc
add esp, 0xc
cmp dword [ebp - 0x6c], 0xffffffff
je 0x410cdb
push dword [ebp - 0xc]
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 4
push eax
call fcn.00416db4
add esp, 8
lea edx, [ebp - 0x4b0]
push edx
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 4
push eax
call fcn.00416cd8
add esp, 8
cmp dword [0x4210dc], 0
jne 0x410cf5
push dword [ebp - 8]
push 0x429499
call fcn.00416db4
add esp, 8
lea ecx, [ebp - 0x4b0]
push ecx
push 0x429499
call fcn.00416cd8
add esp, 8
push 0x2e
push 0x429499
call fcn.00416ee9
add esp, 8
mov dword [ebp - 0x74], eax
lea eax, [ebp - 0x3c]
push eax
mov edx, dword [ebp - 0x74]
inc edx
push edx
call fcn.00416db4
add esp, 8
jmp 0x410cf5
push dword [ebp - 4]
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 4
push eax
call fcn.00416db4
add esp, 8
cmp dword [0x422000], 0
jne 0x410d0b
cmp dword [0x422010], 0
je 0x410dac
lea ecx, [ebp - 0x4ec]
push ecx
call sub.KERNEL32.dll_GetLocalTime
push dword [0x421122]
lea eax, [ebp - 0x4ec]
push eax
call fcn.004051b0
add esp, 8
push 0x429499
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 4
push eax
push dword [0x421122]
lea edx, [edi + 0x19c8]
push edx
push dword [0x42111a]
call sub.USER32.dll_wsprintfA
add esp, 0x14
cmp dword [0x422010], 0
je 0x410d89
push 0
lea ecx, [ebp - 0x14]
push ecx
push dword [0x42111a]
call sub.KERNEL32.dll_lstrlenA
push eax
push dword [0x42111a]
push dword [0x422010]
call sub.KERNEL32.dll_WriteConsoleA
jmp 0x410dac
push 0
lea eax, [ebp - 0x14]
push eax
push dword [0x42111a]
call sub.KERNEL32.dll_lstrlenA
push eax
push dword [0x42111a]
push dword [0x422000]
call sub.KERNEL32.dll_WriteFile
call fcn.00409e8e
test eax, eax
je 0x4112f1
push 0x429ca8
call fcn.0041205e
pop ecx
test eax, eax
je 0x411153
xor esi, esi
jmp 0x41113c
push 1
push 0x25
call fcn.0041e608
pop ecx
mov dword [ebp - 0x78], eax
test eax, eax
je 0x410df6
push 0xff
push dword [ebp - 0x78]
call fcn.00401297
add esp, 8
jmp 0x410df9
mov eax, dword [ebp - 0x78]
push eax
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 0x10b
push eax
call fcn.0041208b
add esp, 0xc
push esi
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 0x10b
push eax
call fcn.004120ed
add esp, 8
push 0
push 0
push esi
push 0x40fa7b
push 0x429ca8
call fcn.00412a93
add esp, 0x14
xor edx, edx
mov dword [ebp - 0x7c], edx
push 0x429cfc
call fcn.0041204f
pop ecx
mov ecx, dword [eax + 0x183]
mov eax, esi
shl eax, 5
cmp byte [ecx + eax + 0xb], 0x43
je 0x410e98
push 0x2c
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 0x10b
push eax
call fcn.004120b0
pop ecx
push dword [eax]
call fcn.00416ee9
add esp, 8
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0
je 0x410e98
mov edx, dword [ebp - 0x7c]
mov byte [edx], 0
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 0x10b
push eax
call fcn.004120b0
pop ecx
push eax
call fcn.0040359e
pop ecx
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 0x10b
push eax
call fcn.004120b0
pop ecx
push eax
call fcn.00403654
pop ecx
push 0x429cfc
call fcn.0041204f
pop ecx
mov ecx, dword [eax + 0x183]
mov eax, esi
shl eax, 5
cmp byte [ecx + eax + 0xb], 0x44
je 0x410f2b
push 0x429cfc
call fcn.0041204f
pop ecx
mov edx, dword [eax + 0x183]
mov ecx, esi
shl ecx, 5
cmp byte [edx + ecx + 0xb], 0x54
je 0x410f2b
push 0x429cfc
call fcn.0041204f
pop ecx
mov eax, dword [eax + 0x183]
mov edx, esi
shl edx, 5
cmp byte [eax + edx + 0xb], 0x40
jne 0x410faa
lea ecx, [edi + 0x19e9]
push ecx
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 0x10b
push eax
call fcn.004120b0
pop ecx
push dword [eax + 4]
call fcn.004016c9
add esp, 8
test eax, eax
je 0x410faa
lea eax, [ebp - 0x4fc]
push eax
call sub.KERNEL32.dll_GetLocalTime
movzx edx, word [ebp - 0x4fc]
push edx
movzx ecx, word [ebp - 0x4fa]
push ecx
movzx eax, word [ebp - 0x4f6]
push eax
lea edx, [edi + 0x19f1]
push edx
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 0x10b
push eax
call fcn.004120b0
pop ecx
push dword [eax + 4]
call fcn.0041a464
add esp, 0x14
jmp 0x41102d
push 0x429cfc
call fcn.0041204f
pop ecx
mov ecx, dword [eax + 0x183]
mov eax, esi
shl eax, 5
cmp byte [ecx + eax + 0xb], 0x44
je 0x411001
push 0x429cfc
call fcn.0041204f
pop ecx
mov edx, dword [eax + 0x183]
mov ecx, esi
shl ecx, 5
cmp byte [edx + ecx + 0xb], 0x54
je 0x411001
push 0x429cfc
call fcn.0041204f
pop ecx
mov eax, dword [eax + 0x183]
mov edx, esi
shl edx, 5
cmp byte [eax + edx + 0xb], 0x40
jne 0x41102d
movsx ecx, byte [0x429d26]
cmp ecx, 0x31
je 0x41102d
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 0x10b
push eax
call fcn.004120b0
pop ecx
push dword [eax + 4]
call fcn.0040f9a7
pop ecx
push 1
push 8
call fcn.0041e608
pop ecx
mov dword [ebp - 0x80], eax
test eax, eax
je 0x411050
push 0xff
push dword [ebp - 0x80]
call fcn.00401275
add esp, 8
jmp 0x411053
mov eax, dword [ebp - 0x80]
push eax
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 0x127
push eax
call fcn.004121a3
add esp, 0xc
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 0x127
push eax
call fcn.004121b9
pop ecx
mov edx, dword [eax]
mov byte [edx], 0
cmp dword [ebp - 0x7c], 0
je 0x41113b
mov ecx, dword [ebp - 0x7c]
inc ecx
push ecx
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 0x127
push eax
call fcn.004121b9
pop ecx
push dword [eax]
call fcn.00416db4
add esp, 8
push 0x429cfc
call fcn.0041204f
pop ecx
mov eax, dword [eax + 0x183]
mov edx, esi
shl edx, 5
cmp byte [eax + edx + 0xb], 0x44
je 0x411110
push 0x429cfc
call fcn.0041204f
pop ecx
mov ecx, dword [eax + 0x183]
mov eax, esi
shl eax, 5
cmp byte [ecx + eax + 0xb], 0x54
je 0x411110
push 0x429cfc
call fcn.0041204f
pop ecx
mov edx, dword [eax + 0x183]
mov ecx, esi
shl ecx, 5
cmp byte [edx + ecx + 0xb], 0x40
jne 0x41113b
movsx eax, byte [0x429d26]
cmp eax, 0x31
je 0x41113b
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 0x127
push eax
call fcn.004121b9
pop ecx
push dword [eax]
call fcn.0040f9a7
pop ecx
inc esi
push 0x429cfc
call fcn.0041204f
pop ecx
cmp esi, dword [eax + 0x187]
jl 0x410dd3
xor edx, edx
mov dword [ebp - 0x84], edx
cmp dword [0x4210c8], 0
je 0x4111ba
xor esi, esi
jmp 0x4111a7
push 0x429cfc
call fcn.0041204f
pop ecx
mov eax, dword [eax + 0x183]
mov edx, esi
shl edx, 5
add eax, edx
push eax
lea ecx, [ebp - 0x39c]
push ecx
call fcn.00416f68
add esp, 8
test eax, eax
jne 0x4111a6
mov dword [0x429d38], esi
mov dword [ebp - 0x84], 1
jmp 0x4111ba
inc esi
push 0x429cfc
call fcn.0041204f
pop ecx
cmp esi, dword [eax + 0x187]
jl 0x411168
cmp dword [ebp - 0x84], 0
jne 0x4111ca
xor eax, eax
mov dword [0x4210c8], eax
push 0x429cc4
call fcn.0041205e
pop ecx
test eax, eax
je 0x41129e
xor esi, esi
jmp 0x411287
cmp dword [ebp - 0x64], 0
jne 0x411213
push 0
push 0
push esi
push 0x40fa52
push 0x429cc4
call fcn.00412a93
add esp, 0x14
test eax, eax
jne 0x411213
mov eax, dword [0x4210bc]
mov dword [eax + esi*4], 1
jmp 0x411258
cmp dword [ebp - 0x64], 0
jne 0x411258
push 0x429cc4
call fcn.00412315
pop ecx
push eax
push 0x429ce0
call fcn.00412069
add esp, 8
push dword [eax]
push esi
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 0x143
push eax
call fcn.00412069
add esp, 8
push dword [eax]
call fcn.00416db4
add esp, 8
cmp dword [ebp - 0x64], 0
je 0x411286
push 0
push 0
push esi
push 0x40fa52
push 0x429cc4
call fcn.00412a93
add esp, 0x14
test eax, eax
je 0x411286
mov edx, dword [0x4210bc]
mov dword [edx + esi*4], 1
inc esi
push 0x429cfc
call fcn.0041204f
pop ecx
cmp esi, dword [eax + 0x187]
jl 0x4111e4
cmp dword [0x4210dc], 0
je 0x4112ba
cmp dword [0x4210e0], 0
jne 0x4112ba
mov dword [0x4210e0], 1
push 0
call fcn.004057f4
pop ecx
push 0x429cfc
call fcn.0041204f
pop ecx
push eax
call fcn.004015f1
pop ecx
cmp dword [0x4210e4], 0
je 0x4112f1
push 0x429cfc
call fcn.0041204f
pop ecx
add eax, 4
push eax
call sub.KERNEL32.dll_DeleteFileA
mov ecx, dword [ebp - 0x44]
mov dword [0x421164], ecx
mov dword [0x4210e0], 0xffffffff
cmp dword [0x4210dc], 0
je 0x411317
mov dword [0x422004], 1
cmp dword [ebp - 0x40], 0
je 0x411334
lea eax, [ebp - 0x4dc]
push eax
push dword [ebp - 0x6c]
call sub.KERNEL32.dll_FindNextFileA
test eax, eax
jne 0x410c17
push dword [ebp - 4]
call fcn.0041e5e4
pop ecx
push dword [ebp - 8]
call fcn.0041e5e4
pop ecx
push dword [ebp - 0xc]
call fcn.0041e5e4
pop ecx
cmp dword [0x422000], 0
je 0x411363
push dword [0x422000]
call sub.KERNEL32.dll_CloseHandle
cmp dword [0x422010], 0
je 0x4113c5
lea edx, [edi + 0x19fe]
push edx
push ebx
call fcn.00416ef5
add esp, 8
test eax, eax
je 0x4113c5
call sub.KERNEL32.dll_GetTickCount
sub eax, dword [ebp - 0x10]
push eax
lea ecx, [edi + 0x1a02]
push ecx
push dword [0x42111a]
call sub.USER32.dll_wsprintfA
add esp, 0xc
push 0
lea eax, [ebp - 0x88]
push eax
push dword [0x42111a]
call fcn.00416de4
pop ecx
push eax
push dword [0x42111a]
push dword [0x422010]
call sub.KERNEL32.dll_WriteConsoleA
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret