Function at 0x415578
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
push ecx
push ecx
lea eax, [ebp - 8]
push ebx
test eax, eax
mov dword [ecx], 0x44b114
jne 0x416223
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 - 8]
cmp eax, 0xd5
jne 0x4155d4
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x4155d4
cmp byte [ebp - 7], 0x3a
jne 0x4155d4
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
mov edi, dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x415612
call esi
test eax, eax
je 0x4155fe
cmp byte [ebp - 3], 0x3a
jne 0x4155fe
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 0x415626
call esi
test eax, eax
je 0x415626
cmp byte [ebp - 3], 0x3a
jne 0x415626
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 0x415640
cmp byte [ebp - 3], 0x3a
jne 0x415640
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
push 0
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea eax, [ebp - 8]
cmp eax, 0xd5
jne 0x41566c
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x41566c
cmp byte [ebp - 7], 0x3a
jne 0x41566c
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x4156a4
call esi
test eax, eax
je 0x415690
cmp byte [ebp - 3], 0x3a
jne 0x415690
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 0x4156b8
call esi
test eax, eax
je 0x4156b8
cmp byte [ebp - 3], 0x3a
jne 0x4156b8
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 0x4156d2
cmp byte [ebp - 3], 0x3a
jne 0x4156d2
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
push 0
call dword [sym.imp.KERNEL32.dll_SetComputerNameA]
lea eax, [ebp - 8]
cmp eax, 0xd5
jne 0x4156fe
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x4156fe
cmp byte [ebp - 7], 0x3a
jne 0x4156fe
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x415736
call esi
test eax, eax
je 0x415722
cmp byte [ebp - 3], 0x3a
jne 0x415722
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 0x41574a
call esi
test eax, eax
je 0x41574a
cmp byte [ebp - 3], 0x3a
jne 0x41574a
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 0x415764
cmp byte [ebp - 3], 0x3a
jne 0x415764
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 - 8]
cmp eax, 0xd5
jne 0x41579e
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x41579e
cmp byte [ebp - 7], 0x3a
jne 0x41579e
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x4157d6
call esi
test eax, eax
je 0x4157c2
cmp byte [ebp - 3], 0x3a
jne 0x4157c2
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 0x4157ea
call esi
test eax, eax
je 0x4157ea
cmp byte [ebp - 3], 0x3a
jne 0x4157ea
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 0x415804
cmp byte [ebp - 3], 0x3a
jne 0x415804
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 - 8]
cmp eax, 0xd5
jne 0x41583b
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x41583b
cmp byte [ebp - 7], 0x3a
jne 0x41583b
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x415873
call esi
test eax, eax
je 0x41585f
cmp byte [ebp - 3], 0x3a
jne 0x41585f
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 0x415887
call esi
test eax, eax
je 0x415887
cmp byte [ebp - 3], 0x3a
jne 0x415887
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 0x4158a1
cmp byte [ebp - 3], 0x3a
jne 0x4158a1
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 - 8]
cmp eax, 0xd5
jne 0x4158cf
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x4158cf
cmp byte [ebp - 7], 0x3a
jne 0x4158cf
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x415907
call esi
test eax, eax
je 0x4158f3
cmp byte [ebp - 3], 0x3a
jne 0x4158f3
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 0x41591b
call esi
test eax, eax
je 0x41591b
cmp byte [ebp - 3], 0x3a
jne 0x41591b
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 0x415935
cmp byte [ebp - 3], 0x3a
jne 0x415935
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 - 8]
cmp eax, 0xd5
jne 0x415969
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x415969
cmp byte [ebp - 7], 0x3a
jne 0x415969
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x4159a1
call esi
test eax, eax
je 0x41598d
cmp byte [ebp - 3], 0x3a
jne 0x41598d
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 0x4159b5
call esi
test eax, eax
je 0x4159b5
cmp byte [ebp - 3], 0x3a
jne 0x4159b5
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 0x4159cf
cmp byte [ebp - 3], 0x3a
jne 0x4159cf
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 - 8]
cmp eax, 0xd5
jne 0x4159fd
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x4159fd
cmp byte [ebp - 7], 0x3a
jne 0x4159fd
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x415a35
call esi
test eax, eax
je 0x415a21
cmp byte [ebp - 3], 0x3a
jne 0x415a21
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 0x415a49
call esi
test eax, eax
je 0x415a49
cmp byte [ebp - 3], 0x3a
jne 0x415a49
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 0x415a63
cmp byte [ebp - 3], 0x3a
jne 0x415a63
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
push 0
call dword [sym.imp.KERNEL32.dll_ResumeThread]
lea eax, [ebp - 8]
cmp eax, 0xd5
jne 0x415a8f
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x415a8f
cmp byte [ebp - 7], 0x3a
jne 0x415a8f
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x415ac7
call esi
test eax, eax
je 0x415ab3
cmp byte [ebp - 3], 0x3a
jne 0x415ab3
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 0x415adb
call esi
test eax, eax
je 0x415adb
cmp byte [ebp - 3], 0x3a
jne 0x415adb
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 0x415af5
cmp byte [ebp - 3], 0x3a
jne 0x415af5
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 - 8]
cmp eax, 0xd5
jne 0x415b23
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x415b23
cmp byte [ebp - 7], 0x3a
jne 0x415b23
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x415b5b
call esi
test eax, eax
je 0x415b47
cmp byte [ebp - 3], 0x3a
jne 0x415b47
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 0x415b6f
call esi
test eax, eax
je 0x415b6f
cmp byte [ebp - 3], 0x3a
jne 0x415b6f
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 0x415b89
cmp byte [ebp - 3], 0x3a
jne 0x415b89
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
call dword [sym.imp.KERNEL32.dll_TlsAlloc]
lea eax, [ebp - 8]
cmp eax, 0xd5
jne 0x415bb3
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x415bb3
cmp byte [ebp - 7], 0x3a
jne 0x415bb3
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x415beb
call esi
test eax, eax
je 0x415bd7
cmp byte [ebp - 3], 0x3a
jne 0x415bd7
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 0x415bff
call esi
test eax, eax
je 0x415bff
cmp byte [ebp - 3], 0x3a
jne 0x415bff
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 0x415c19
cmp byte [ebp - 3], 0x3a
jne 0x415c19
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 - 8]
cmp eax, 0xd5
jne 0x415c48
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x415c48
cmp byte [ebp - 7], 0x3a
jne 0x415c48
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x415c80
call esi
test eax, eax
je 0x415c6c
cmp byte [ebp - 3], 0x3a
jne 0x415c6c
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 0x415c94
call esi
test eax, eax
je 0x415c94
cmp byte [ebp - 3], 0x3a
jne 0x415c94
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 0x415cae
cmp byte [ebp - 3], 0x3a
jne 0x415cae
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 - 8]
cmp eax, 0xd5
jne 0x415cdc
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x415cdc
cmp byte [ebp - 7], 0x3a
jne 0x415cdc
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x415d14
call esi
test eax, eax
je 0x415d00
cmp byte [ebp - 3], 0x3a
jne 0x415d00
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 0x415d28
call esi
test eax, eax
je 0x415d28
cmp byte [ebp - 3], 0x3a
jne 0x415d28
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 0x415d42
cmp byte [ebp - 3], 0x3a
jne 0x415d42
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 - 8]
cmp eax, 0xd5
jne 0x415d70
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x415d70
cmp byte [ebp - 7], 0x3a
jne 0x415d70
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x415da8
call esi
test eax, eax
je 0x415d94
cmp byte [ebp - 3], 0x3a
jne 0x415d94
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 0x415dbc
call esi
test eax, eax
je 0x415dbc
cmp byte [ebp - 3], 0x3a
jne 0x415dbc
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 0x415dd6
cmp byte [ebp - 3], 0x3a
jne 0x415dd6
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
push 0
call dword [sym.imp.KERNEL32.dll_PulseEvent]
lea eax, [ebp - 8]
cmp eax, 0xd5
jne 0x415e02
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x415e02
cmp byte [ebp - 7], 0x3a
jne 0x415e02
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x415e3a
call esi
test eax, eax
je 0x415e26
cmp byte [ebp - 3], 0x3a
jne 0x415e26
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 0x415e4e
call esi
test eax, eax
je 0x415e4e
cmp byte [ebp - 3], 0x3a
jne 0x415e4e
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 0x415e68
cmp byte [ebp - 3], 0x3a
jne 0x415e68
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 - 8]
cmp eax, 0xd5
jne 0x415e98
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x415e98
cmp byte [ebp - 7], 0x3a
jne 0x415e98
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x415ed0
call esi
test eax, eax
je 0x415ebc
cmp byte [ebp - 3], 0x3a
jne 0x415ebc
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 0x415ee4
call esi
test eax, eax
je 0x415ee4
cmp byte [ebp - 3], 0x3a
jne 0x415ee4
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 0x415efe
cmp byte [ebp - 3], 0x3a
jne 0x415efe
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 - 8]
cmp eax, 0xd5
jne 0x415f37
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x415f37
cmp byte [ebp - 7], 0x3a
jne 0x415f37
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x415f6f
call esi
test eax, eax
je 0x415f5b
cmp byte [ebp - 3], 0x3a
jne 0x415f5b
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 0x415f83
call esi
test eax, eax
je 0x415f83
cmp byte [ebp - 3], 0x3a
jne 0x415f83
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 0x415f9d
cmp byte [ebp - 3], 0x3a
jne 0x415f9d
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 - 8]
cmp eax, 0xd5
jne 0x415fcc
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x415fcc
cmp byte [ebp - 7], 0x3a
jne 0x415fcc
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x416004
call esi
test eax, eax
je 0x415ff0
cmp byte [ebp - 3], 0x3a
jne 0x415ff0
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 0x416018
call esi
test eax, eax
je 0x416018
cmp byte [ebp - 3], 0x3a
jne 0x416018
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 0x416032
cmp byte [ebp - 3], 0x3a
jne 0x416032
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
push 0
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 8]
cmp eax, 0xd5
jne 0x41605e
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x41605e
cmp byte [ebp - 7], 0x3a
jne 0x41605e
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x416096
call esi
test eax, eax
je 0x416082
cmp byte [ebp - 3], 0x3a
jne 0x416082
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 0x4160aa
call esi
test eax, eax
je 0x4160aa
cmp byte [ebp - 3], 0x3a
jne 0x4160aa
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 0x4160c4
cmp byte [ebp - 3], 0x3a
jne 0x4160c4
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 - 8]
cmp eax, 0xd5
jne 0x4160f4
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x4160f4
cmp byte [ebp - 7], 0x3a
jne 0x4160f4
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x41612c
call esi
test eax, eax
je 0x416118
cmp byte [ebp - 3], 0x3a
jne 0x416118
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 0x416140
call esi
test eax, eax
je 0x416140
cmp byte [ebp - 3], 0x3a
jne 0x416140
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 0x41615a
cmp byte [ebp - 3], 0x3a
jne 0x41615a
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 - 8]
cmp eax, 0xd5
jne 0x4161bb
lea eax, [ebp - 8]
push eax
push 3
call esi
test eax, eax
je 0x4161bb
cmp byte [ebp - 7], 0x3a
jne 0x4161bb
movzx eax, byte [ebp - 8]
push eax
call ebx
pop ecx
lea eax, [ebp - 8]
cmp eax, 0x4db
lea eax, [ebp - 4]
push eax
push 3
jne 0x4161f3
call esi
test eax, eax
je 0x4161df
cmp byte [ebp - 3], 0x3a
jne 0x4161df
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 0x416207
call esi
test eax, eax
je 0x416207
cmp byte [ebp - 3], 0x3a
jne 0x416207
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 0x416223
cmp byte [ebp - 3], 0x3a
jne 0x416223
movzx eax, byte [ebp - 4]
push eax
call ebx
pop ecx
pop ebx
leave
ret