Function at 0x4f4a0c
Capabilities:
Create thread
Terminate thread

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffd0
push ebx
push esi
push edi
xor ecx, ecx
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0xc], ecx
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x4f4d99
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
push ebp
push 0x4f4a77
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x94]
call fcn.00403afc
xor ecx, ecx
mov dl, 1
mov eax, dword [0x49b610]
call fcn.0049b9d0
mov edx, dword [ebp - 4]
mov dword [edx + 0x94], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4f4a81
lea eax, [ebp - 0x18]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x78]
push eax
call sub.kernel32.dll_GetExitCodeThread
cmp dword [ebp - 0x18], 0x103
jne 0x4f4ab2
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x78]
push eax
call sub.kernel32.dll_TerminateThread
push 0x1f4
call sub.kernel32.dll_Sleep_1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x78]
push eax
call sub.kernel32.dll_CloseHandle_1
mov edx, dword [0x515a28]
mov edx, dword [edx + 0x18]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x94]
mov ecx, dword [eax]
call dword [ecx + 0x88]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x94]
mov edx, 0x1bb
mov ecx, dword [eax]
call dword [ecx + 0x8c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x94]
mov edx, 0x2710
mov ecx, dword [eax]
call dword [ecx + 0x94]
mov eax, dword [ebp - 4]
mov byte [eax + 0xbf], 0
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.00503d08
mov eax, dword [0x515a90]
mov byte [eax], 1
lea eax, [ebp - 0x1c]
push eax
push 0
push 0
push 0x503c9c
push 0
push 0
call sub.kernel32.dll_CreateThread_1
mov edx, dword [ebp - 4]
mov dword [edx + 0x78], eax
push 0x4f4db4
mov eax, dword [0x515a28]
push dword [eax + 8]
push 0x4f4dc0
mov eax, dword [0x515a28]
push dword [eax + 0xc]
push 0x4f4dc0
mov eax, dword [0x515a28]
push dword [eax + 0x10]
lea eax, [ebp - 0x14]
mov edx, 6
call fcn.00404c90
mov eax, dword [ebp - 0x14]
call fcn.00404bd0
mov ebx, eax
mov edx, 0x4f4dc4
lea eax, [ebp - 0x24]
call fcn.00403134
lea eax, [ebp - 0x28]
mov edx, ebx
mov byte [eax + 1], dl
mov byte [eax], 1
lea edx, [ebp - 0x28]
lea eax, [ebp - 0x24]
mov cl, 2
call fcn.00403104
lea edx, [ebp - 0x24]
lea eax, [ebp - 0x20]
call fcn.00404b74
mov edx, dword [ebp - 0x20]
lea eax, [ebp - 0xc]
mov ecx, dword [ebp - 0x14]
call fcn.00404c1c
push 0
lea eax, [ebp - 0x10]
push eax
mov ecx, 0x3e8
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
call fcn.004efd88
push 0
mov eax, dword [ebp - 4]
lea ecx, [eax + 0x88]
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.004eb938
cmp dword [ebp - 0x10], 0
xor eax, eax
push ebp
push 0x4f4d50
push dword fs:[eax]
mov dword fs:[eax], esp
xor ecx, ecx
mov edx, 0x4f4dd0
mov eax, dword [ebp - 4]
call fcn.004efa9c
mov eax, dword [0x5157ec]
cmp dword [eax + 0x18c], 1
jne 0x4f4c52
xor ecx, ecx
mov edx, 0x4f4e04
mov eax, dword [ebp - 4]
call fcn.004efa9c
push 0
push 0
lea eax, [ebp - 0x10]
push eax
mov ecx, 0x4f4e38
mov edx, 3
mov eax, dword [ebp - 4]
call fcn.004eb6d0
push 0
mov eax, dword [ebp - 4]
lea ecx, [eax + 0x88]
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.004eb938
push 0x12c
call sub.kernel32.dll_Sleep_1
xor ecx, ecx
mov edx, 0x4f4e48
mov eax, dword [ebp - 4]
call fcn.004efa9c
push 0
push 0
lea eax, [ebp - 0x10]
push eax
mov ecx, 0x4f4e78
mov edx, 2
mov eax, dword [ebp - 4]
call fcn.004eb6d0
push 0
push 0
lea eax, [ebp - 0x10]
push eax
mov ecx, 0x4f4e88
mov edx, 2
mov eax, dword [ebp - 4]
call fcn.004eb6d0
push 0
push 0
lea eax, [ebp - 0x10]
push eax
mov ecx, 0x4f4e98
mov edx, 3
mov eax, dword [ebp - 4]
call fcn.004eb6d0
push 0
push 0
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [0x515a28]
mov ecx, dword [ecx + 8]
lea eax, [ebp - 0x2c]
mov edx, 0x4f4eac
call fcn.00404c1c
mov ecx, dword [ebp - 0x2c]
mov edx, 3
mov eax, dword [ebp - 4]
call fcn.004eb6d0
push 0
push 0
lea eax, [ebp - 0x10]
push eax
push 0x4f4ec0
mov eax, dword [0x515a28]
push dword [eax + 8]
push 0x4f4ecc
lea eax, [ebp - 0x30]
mov edx, 3
call fcn.00404c90
mov ecx, dword [ebp - 0x30]
mov edx, 2
mov eax, dword [ebp - 4]
call fcn.004eb6d0
push 0x4f4ed8
mov eax, dword [ebp - 4]
lea ecx, [eax + 0x88]
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.004eb938
xor ecx, ecx
mov edx, 0x4f4ee4
mov eax, dword [ebp - 4]
call fcn.004efa9c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4f4d5a
mov edx, 0x4f4ef8
mov eax, 1
call fcn.00505894
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4f4da0
lea eax, [ebp - 0x30]
mov edx, 2
call fcn.00404934
lea eax, [ebp - 0x20]
call fcn.00404910
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.00404934
ret