Function at 0x30596f
Capabilities:
Create thread

Disassembly:
mov eax, 0x323bb9
call fcn.003200c8
sub esp, 0x88
mov eax, dword [0x23339b8]
sub eax, dword [0x23339b4]
push ebx
push esi
push edi
push 0x18
pop edi
cdq
idiv edi
xor ebx, ebx
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x38], ebx
push eax
call fcn.003068a4
mov dword [ebp - 4], ebx
call fcn.00304fe8
test al, al
jne 0x3059d5
mov esi, dword [0x333510]
xor ecx, ecx
inc ecx
cmp esi, ecx
jle 0x3059cf
mov eax, esi
cdq
idiv ecx
inc ecx
add ecx, edx
cmp ecx, esi
jl 0x3059c3
mov dword [0x333510], ecx
mov eax, dword [0x23339b8]
sub eax, dword [0x23339b4]
lea ecx, [ebp - 0x4c]
cdq
idiv edi
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], ebx
push eax
call fcn.0030697d
mov byte [ebp - 4], 1
xor eax, eax
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x50], ebx
push 0x32cb94
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x50], 7
mov dword [ebp - 0x54], ebx
mov word [ebp - 0x64], ax
call fcn.003021ab
mov byte [ebp - 4], 2
push 0x23341f4
lea eax, [ebp - 0x64]
push eax
call fcn.00302930
mov byte [ebp - 4], 1
push ebx
push 1
lea ecx, [ebp - 0x64]
call fcn.0030222a
mov eax, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x40]
sub eax, esi
push 0x4c
cdq
pop ecx
idiv ecx
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x4c]
test eax, eax
je 0x305ade
xor ecx, ecx
mov edi, esi
mov dword [ebp - 0x1c], ecx
mov esi, eax
mov eax, dword [0x23339b4]
add eax, ecx
cmp edi, eax
je 0x305a7c
push 0xffffffffffffffff
push 0
push eax
mov ecx, edi
call fcn.0030226e
mov ecx, dword [ebp - 0x1c]
mov eax, dword [0x23339d0]
sub eax, dword [0x23339cc]
cdq
idiv dword [ebp - 0x28]
cmp eax, dword [ebp - 0x18]
jbe 0x305aa8
mov eax, dword [0x23339cc]
add eax, ecx
lea ecx, [edi + 0x18]
cmp ecx, eax
je 0x305aa8
push 0xffffffffffffffff
push 0
push eax
call fcn.0030226e
lea eax, [ebp - 0x34]
push eax
xor eax, eax
push eax
push edi
push 0x30301a
push eax
push eax
call fcn.00311b99
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
add esp, 0x18
mov dword [ebx + edx*4], eax
push 0x18
inc edx
pop eax
add ecx, eax
add edi, 0x4c
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x1c], ecx
cmp edx, esi
jb 0x305a62
mov esi, dword [ebp - 0x40]
mov edi, ebx
cmp ebx, dword [ebp - 0x48]
je 0x305af7
push 0xffffffffffffffff
push dword [edi]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
add edi, 4
cmp edi, dword [ebp - 0x48]
jne 0x305ae5
lea eax, [ebp - 0x11]
lea ecx, [ebp - 0x30]
mov byte [ebp - 0x11], 1
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], ecx
mov edi, esi
cmp esi, dword [ebp - 0x3c]
je 0x305bc8
push edi
lea ecx, [ebp - 0x2c]
call fcn.00305ca1
add edi, 0x4c
cmp edi, dword [ebp - 0x3c]
jne 0x305b12
cmp byte [ebp - 0x11], 0
jne 0x305bc8
mov edx, dword [ebp - 0x30]
lea ecx, [ebp - 0x94]
call fcn.00301712
mov byte [ebp - 4], 3
push eax
mov edx, 0x2333dec
lea ecx, [ebp - 0x7c]
call fcn.00302598
pop ecx
mov byte [ebp - 4], 4
push eax
call fcn.00302c70
mov byte [ebp - 4], 3
push 0
push 1
lea ecx, [ebp - 0x7c]
call fcn.0030222a
mov byte [ebp - 4], 1
push 0
push 1
lea ecx, [ebp - 0x94]
call fcn.0030222a
xor eax, eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
push 0x32cb9c
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x50], 7
mov dword [ebp - 0x54], eax
mov word [ebp - 0x64], ax
call fcn.003021ab
mov byte [ebp - 4], 5
push 0x2333b04
lea eax, [ebp - 0x64]
push eax
call fcn.00302930
mov byte [ebp - 4], 1
push 0
push 1
lea ecx, [ebp - 0x64]
call fcn.0030222a
push 0xfffffffffffffffe
pop esi
jmp 0x305c6a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, 1
jne 0x305c13
xor eax, eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
push str.command_not_in_code
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x50], 7
mov dword [ebp - 0x54], eax
mov word [ebp - 0x64], ax
call fcn.003021ab
mov byte [ebp - 4], 6
lea eax, [ebp - 0x64]
push eax
call fcn.00302c70
mov byte [ebp - 4], 1
push 0
push 1
lea ecx, [ebp - 0x64]
call fcn.0030222a
xor eax, eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
push 0x32cb9c
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x50], 7
mov dword [ebp - 0x54], eax
mov word [ebp - 0x64], ax
call fcn.003021ab
mov byte [ebp - 4], 7
push 0x2333a60
lea eax, [ebp - 0x64]
push eax
call fcn.00302930
mov byte [ebp - 4], 1
push 0
push 1
lea ecx, [ebp - 0x64]
call fcn.0030222a
jmp 0x305c63
push esi
call fcn.00305d8d
add esi, 0x4c
cmp esi, dword [ebp - 0x3c]
jne 0x305c5a
xor esi, esi
mov byte [ebp - 4], 0
test ebx, ebx
je 0x305c84
push ebx
call fcn.00311398
xor eax, eax
pop ecx
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x40]
call fcn.00306949
mov ecx, dword [ebp - 0xc]
pop edi
mov eax, esi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret