Function at 0x40eb99
Capabilities:
Allocate thread local storage
Delete directory
Delete file
Get common file path
Get graphical window text
Read file on windows
Resume thread
Set console window title
Set current directory
Set environment variable
Set file attributes
Suspend thread
Timestomp file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
lea eax, [ebp - 0xc]
push ebx
test eax, eax
mov dword [ebp - 0xc], ecx
jne 0x40f842
push esi
xor esi, esi
push edi
push esi
push esi
call dword [sym.imp.USER32.dll_GetWindowLongA]
push esi
push esi
push esi
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov ebx, dword [sym.imp.MSVCRT.dll_toupper]
mov esi, dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40ebf3
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40ebf3
cmp byte [ebp - 7], 0x3a
jne 0x40ebf3
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
mov edi, dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40ec31
call esi
test eax, eax
je 0x40ec1d
cmp byte [ebp - 3], 0x3a
jne 0x40ec1d
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40ec45
call esi
test eax, eax
je 0x40ec45
cmp byte [ebp - 3], 0x3a
jne 0x40ec45
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40ec5f
cmp byte [ebp - 3], 0x3a
jne 0x40ec5f
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
push 0
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40ec8b
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40ec8b
cmp byte [ebp - 7], 0x3a
jne 0x40ec8b
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40ecc3
call esi
test eax, eax
je 0x40ecaf
cmp byte [ebp - 3], 0x3a
jne 0x40ecaf
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40ecd7
call esi
test eax, eax
je 0x40ecd7
cmp byte [ebp - 3], 0x3a
jne 0x40ecd7
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40ecf1
cmp byte [ebp - 3], 0x3a
jne 0x40ecf1
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
push 0
call dword [sym.imp.KERNEL32.dll_SetComputerNameA]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40ed1d
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40ed1d
cmp byte [ebp - 7], 0x3a
jne 0x40ed1d
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40ed55
call esi
test eax, eax
je 0x40ed41
cmp byte [ebp - 3], 0x3a
jne 0x40ed41
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40ed69
call esi
test eax, eax
je 0x40ed69
cmp byte [ebp - 3], 0x3a
jne 0x40ed69
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40ed83
cmp byte [ebp - 3], 0x3a
jne 0x40ed83
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
xor eax, eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_OpenEventW]
xor eax, eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_OpenThread]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40edbd
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40edbd
cmp byte [ebp - 7], 0x3a
jne 0x40edbd
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40edf5
call esi
test eax, eax
je 0x40ede1
cmp byte [ebp - 3], 0x3a
jne 0x40ede1
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40ee09
call esi
test eax, eax
je 0x40ee09
cmp byte [ebp - 3], 0x3a
jne 0x40ee09
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40ee23
cmp byte [ebp - 3], 0x3a
jne 0x40ee23
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
push 0
call dword [sym.imp.KERNEL32.dll_SetEvent]
xor eax, eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_OpenFileMappingA]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40ee5a
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40ee5a
cmp byte [ebp - 7], 0x3a
jne 0x40ee5a
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40ee92
call esi
test eax, eax
je 0x40ee7e
cmp byte [ebp - 3], 0x3a
jne 0x40ee7e
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40eea6
call esi
test eax, eax
je 0x40eea6
cmp byte [ebp - 3], 0x3a
jne 0x40eea6
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40eec0
cmp byte [ebp - 3], 0x3a
jne 0x40eec0
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_SleepEx]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40eeee
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40eeee
cmp byte [ebp - 7], 0x3a
jne 0x40eeee
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40ef26
call esi
test eax, eax
je 0x40ef12
cmp byte [ebp - 3], 0x3a
jne 0x40ef12
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40ef3a
call esi
test eax, eax
je 0x40ef3a
cmp byte [ebp - 3], 0x3a
jne 0x40ef3a
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40ef54
cmp byte [ebp - 3], 0x3a
jne 0x40ef54
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
push 0
call dword [sym.imp.KERNEL32.dll_ResetEvent]
push 0
call dword [sym.imp.KERNEL32.dll_SetConsoleTitleW]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40ef88
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40ef88
cmp byte [ebp - 7], 0x3a
jne 0x40ef88
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40efc0
call esi
test eax, eax
je 0x40efac
cmp byte [ebp - 3], 0x3a
jne 0x40efac
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40efd4
call esi
test eax, eax
je 0x40efd4
cmp byte [ebp - 3], 0x3a
jne 0x40efd4
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40efee
cmp byte [ebp - 3], 0x3a
jne 0x40efee
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_WriteProfileSectionA]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40f01c
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40f01c
cmp byte [ebp - 7], 0x3a
jne 0x40f01c
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40f054
call esi
test eax, eax
je 0x40f040
cmp byte [ebp - 3], 0x3a
jne 0x40f040
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40f068
call esi
test eax, eax
je 0x40f068
cmp byte [ebp - 3], 0x3a
jne 0x40f068
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40f082
cmp byte [ebp - 3], 0x3a
jne 0x40f082
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
push 0
call dword [sym.imp.KERNEL32.dll_ResumeThread]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40f0ae
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40f0ae
cmp byte [ebp - 7], 0x3a
jne 0x40f0ae
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40f0e6
call esi
test eax, eax
je 0x40f0d2
cmp byte [ebp - 3], 0x3a
jne 0x40f0d2
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40f0fa
call esi
test eax, eax
je 0x40f0fa
cmp byte [ebp - 3], 0x3a
jne 0x40f0fa
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40f114
cmp byte [ebp - 3], 0x3a
jne 0x40f114
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40f142
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40f142
cmp byte [ebp - 7], 0x3a
jne 0x40f142
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40f17a
call esi
test eax, eax
je 0x40f166
cmp byte [ebp - 3], 0x3a
jne 0x40f166
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40f18e
call esi
test eax, eax
je 0x40f18e
cmp byte [ebp - 3], 0x3a
jne 0x40f18e
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40f1a8
cmp byte [ebp - 3], 0x3a
jne 0x40f1a8
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
call dword [sym.imp.KERNEL32.dll_TlsAlloc]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40f1d2
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40f1d2
cmp byte [ebp - 7], 0x3a
jne 0x40f1d2
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40f20a
call esi
test eax, eax
je 0x40f1f6
cmp byte [ebp - 3], 0x3a
jne 0x40f1f6
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40f21e
call esi
test eax, eax
je 0x40f21e
cmp byte [ebp - 3], 0x3a
jne 0x40f21e
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40f238
cmp byte [ebp - 3], 0x3a
jne 0x40f238
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
xor eax, eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_OpenMutexA]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40f267
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40f267
cmp byte [ebp - 7], 0x3a
jne 0x40f267
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40f29f
call esi
test eax, eax
je 0x40f28b
cmp byte [ebp - 3], 0x3a
jne 0x40f28b
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40f2b3
call esi
test eax, eax
je 0x40f2b3
cmp byte [ebp - 3], 0x3a
jne 0x40f2b3
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40f2cd
cmp byte [ebp - 3], 0x3a
jne 0x40f2cd
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableA]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40f2fb
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40f2fb
cmp byte [ebp - 7], 0x3a
jne 0x40f2fb
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40f333
call esi
test eax, eax
je 0x40f31f
cmp byte [ebp - 3], 0x3a
jne 0x40f31f
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40f347
call esi
test eax, eax
je 0x40f347
cmp byte [ebp - 3], 0x3a
jne 0x40f347
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40f361
cmp byte [ebp - 3], 0x3a
jne 0x40f361
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_SetPriorityClass]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40f38f
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40f38f
cmp byte [ebp - 7], 0x3a
jne 0x40f38f
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40f3c7
call esi
test eax, eax
je 0x40f3b3
cmp byte [ebp - 3], 0x3a
jne 0x40f3b3
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40f3db
call esi
test eax, eax
je 0x40f3db
cmp byte [ebp - 3], 0x3a
jne 0x40f3db
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40f3f5
cmp byte [ebp - 3], 0x3a
jne 0x40f3f5
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
push 0
call dword [sym.imp.KERNEL32.dll_PulseEvent]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40f421
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40f421
cmp byte [ebp - 7], 0x3a
jne 0x40f421
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40f459
call esi
test eax, eax
je 0x40f445
cmp byte [ebp - 3], 0x3a
jne 0x40f445
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40f46d
call esi
test eax, eax
je 0x40f46d
cmp byte [ebp - 3], 0x3a
jne 0x40f46d
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40f487
cmp byte [ebp - 3], 0x3a
jne 0x40f487
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
xor eax, eax
push eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_SetFileTime]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40f4b7
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40f4b7
cmp byte [ebp - 7], 0x3a
jne 0x40f4b7
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40f4ef
call esi
test eax, eax
je 0x40f4db
cmp byte [ebp - 3], 0x3a
jne 0x40f4db
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40f503
call esi
test eax, eax
je 0x40f503
cmp byte [ebp - 3], 0x3a
jne 0x40f503
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40f51d
cmp byte [ebp - 3], 0x3a
jne 0x40f51d
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
xor eax, eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_OpenEventA]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40f556
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40f556
cmp byte [ebp - 7], 0x3a
jne 0x40f556
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40f58e
call esi
test eax, eax
je 0x40f57a
cmp byte [ebp - 3], 0x3a
jne 0x40f57a
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40f5a2
call esi
test eax, eax
je 0x40f5a2
cmp byte [ebp - 3], 0x3a
jne 0x40f5a2
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40f5bc
cmp byte [ebp - 3], 0x3a
jne 0x40f5bc
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
xor eax, eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40f5eb
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40f5eb
cmp byte [ebp - 7], 0x3a
jne 0x40f5eb
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40f623
call esi
test eax, eax
je 0x40f60f
cmp byte [ebp - 3], 0x3a
jne 0x40f60f
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40f637
call esi
test eax, eax
je 0x40f637
cmp byte [ebp - 3], 0x3a
jne 0x40f637
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40f651
cmp byte [ebp - 3], 0x3a
jne 0x40f651
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
push 0
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40f67d
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40f67d
cmp byte [ebp - 7], 0x3a
jne 0x40f67d
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40f6b5
call esi
test eax, eax
je 0x40f6a1
cmp byte [ebp - 3], 0x3a
jne 0x40f6a1
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40f6c9
call esi
test eax, eax
je 0x40f6c9
cmp byte [ebp - 3], 0x3a
jne 0x40f6c9
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40f6e3
cmp byte [ebp - 3], 0x3a
jne 0x40f6e3
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
xor eax, eax
push eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40f713
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40f713
cmp byte [ebp - 7], 0x3a
jne 0x40f713
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40f74b
call esi
test eax, eax
je 0x40f737
cmp byte [ebp - 3], 0x3a
jne 0x40f737
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40f75f
call esi
test eax, eax
je 0x40f75f
cmp byte [ebp - 3], 0x3a
jne 0x40f75f
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
test eax, eax
je 0x40f779
cmp byte [ebp - 3], 0x3a
jne 0x40f779
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
xor eax, eax
push eax
push eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_ReadFile]
xor eax, eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_OpenSemaphoreA]
push 0
call dword [sym.imp.KERNEL32.dll_SuspendThread]
push 0
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryA]
push 0
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
xor eax, eax
push eax
push eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_WriteFileEx]
lea eax, [ebp - 0xc]
cmp eax, 0xd5
jne 0x40f7da
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x40f7da
cmp byte [ebp - 7], 0x3a
jne 0x40f7da
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 0xc]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x40f812
call esi
test eax, eax
je 0x40f7fe
cmp byte [ebp - 3], 0x3a
jne 0x40f7fe
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
and byte [ebp - 6], 0
lea eax, [ebp - 8]
push eax
mov byte [ebp - 8], 0x42
mov byte [ebp - 7], 0x3a
call edi
jmp 0x40f826
call esi
test eax, eax
je 0x40f826
cmp byte [ebp - 3], 0x3a
jne 0x40f826
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
lea eax, [ebp - 4]
push eax
push 3
call esi
pop edi
pop esi
test eax, eax
je 0x40f842
cmp byte [ebp - 3], 0x3a
jne 0x40f842
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
mov ecx, dword [ebp - 0xc]
push dword [ecx + 0x19118]
lea eax, [ecx + 0x118]
push eax
lea eax, [ecx + 4]
push dword [ecx + 0x10c]
push dword [ecx + 0x108]
push eax
call fcn.0041140e
pop ebx
leave
ret