Function at 0x404838
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x16c
mov dl, byte [0x4182fc]
push ebx
push esi
push edi
push 0xf
xor eax, eax
pop ecx
lea edi, [ebp - 0x6b]
mov byte [ebp - 0x6c], dl
push 0x3f
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
pop ecx
xor eax, eax
push dword [ebp + 0xc]
lea edi, [ebp - 0x16b]
mov byte [ebp - 0x16c], dl
mov ebx, 0x4182fc
push dword [ebp + 8]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push str.DeleteDiskLite._1.__08X.__08X.
push ebx
push 3
stosb byte es:[edi], al
call fcn.00407279
mov edi, 0x7d0
push edi
push 0
push dword [0x41411c]
call fcn.0040b6c0
lea eax, [ebp - 0x6c]
push 0x40
push eax
push 0x582
mov dword [0x414118], edi
call fcn.00406e92
mov esi, 0x414118
lea eax, [ebp - 0x6c]
push esi
push 0
push 0
push eax
push dword [ebp + 8]
call fcn.00403730
add esp, 0x40
test eax, eax
je 0x404acb
lea eax, [ebp - 0x6c]
push eax
push dword [0x414118]
push dword [0x41411c]
push str.DeleteDiskLite._2.__08X.__08X.__s
push ebx
push 3
call fcn.00407279
add esp, 0x18
lea eax, [ebp - 4]
mov dword [ebp - 4], 0x100
push eax
lea eax, [ebp - 0x16c]
push eax
push 1
push esi
call dword [0x419c5c]
test eax, eax
je 0x404aab
push 4
lea eax, [ebp - 4]
pop ebx
push eax
lea eax, [ebp - 0x1c]
push eax
push 2
push esi
mov dword [ebp - 4], ebx
call dword [0x419c5c]
test eax, eax
je 0x404aab
lea eax, [ebp - 4]
mov dword [ebp - 4], ebx
push eax
lea eax, [ebp - 0x20]
push eax
push 3
push esi
call dword [0x419c5c]
test eax, eax
je 0x404aab
lea eax, [ebp - 4]
mov dword [ebp - 4], ebx
push eax
lea eax, [ebp - 0x10]
push eax
push 6
push esi
call dword [0x419c5c]
test eax, eax
je 0x404aab
lea eax, [ebp - 4]
mov dword [ebp - 4], ebx
push eax
lea eax, [ebp - 0xc]
push eax
push 7
push esi
call dword [0x419c5c]
test eax, eax
je 0x404aab
lea eax, [ebp - 4]
mov dword [ebp - 4], ebx
push eax
lea eax, [ebp - 8]
push eax
push 8
push esi
call dword [0x419c5c]
test eax, eax
je 0x404aab
xor eax, eax
cmp dword [ebp - 0x10], eax
mov dword [ebp - 0x18], eax
je 0x4049b5
mov dword [ebp - 0x18], 1
cmp dword [ebp - 0xc], eax
jne 0x4049be
or dword [ebp - 0x18], 2
cmp dword [ebp - 8], eax
jne 0x4049c6
or dword [ebp - 0x18], ebx
mov ebx, dword [ebp + 8]
lea eax, [ebp - 0x6c]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x16c]
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x2c]
push eax
push ebx
mov dword [ebp - 0x14], 3
call fcn.004023d5
pop ecx
test eax, eax
pop ecx
jne 0x404a06
xor esi, esi
push edi
push esi
push dword [0x41411c]
call fcn.0040b6c0
add esp, 0xc
jmp 0x404a9f
xor edi, edi
push 0xffffffffffffffff
push edi
push 0x58d
call fcn.00406e92
add esp, 0xc
push eax
push ebx
push 0xfffffffffffffffa
push ebx
call dword [sym.imp.USER32.dll_GetWindowLongA]
push eax
call fcn.0040289b
add esp, 0xc
test eax, eax
jne 0x404a42
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 0x20
push edi
mov esi, eax
push 0x418858
jmp 0x404abc
mov eax, dword [ebp + 0xc]
mov dword [0x418858], esi
push 0x419154
mov esi, 0x418858
push edi
push esi
push 0x404757
push edi
push edi
mov dword [0x418870], ebx
mov dword [0x418874], eax
call dword [sym.imp.KERNEL32.dll_CreateThread]
cmp eax, edi
mov dword [0x41915c], eax
jne 0x404a94
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
call fcn.00402923
push 0x20
push edi
push esi
call fcn.0040b6c0
add esp, 0xc
push ebx
jmp 0x404ac5
push edi
push eax
call dword [sym.imp.KERNEL32.dll_SetThreadPriority]
push 1
pop esi
push 0
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, esi
jmp 0x404acd
call dword [sym.imp.KERNEL32.dll_GetLastError]
push edi
push 0
push dword [0x41411c]
mov esi, eax
call fcn.0040b6c0
add esp, 0xc
push esi
call dword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret