Function at 0x40eeb0
Capabilities:
Enumerate threads

Disassembly:
mov ecx, dword [0x45ccd4]
sub esp, 0x24
push ebx
push ebp
mov ebp, dword [0x45cccc]
mov eax, 0x3b87af8d
imul ebp
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
push esi
mov esi, eax
mov eax, 0xe0e0bbb3
imul ecx
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
push edi
mov edi, eax
mov eax, 0x1f1f444d
imul ebp
sar edx, 0x14
sub edi, esi
add edi, edx
mov esi, edx
mov eax, 0x61fd3f09
imul ecx
sar edx, 0x15
shr esi, 0x1f
mov ecx, edx
add esi, edi
add esi, edx
mov edx, dword [0x45cce8]
mov ebx, dword [0x45ccd0]
imul edx, edx, 0x569052
shr ecx, 0x1f
add ecx, esi
add ecx, edx
mov edx, dword [0x45ccdc]
mov eax, ebp
imul edx, edx, 0x5184aa
imul eax, eax, 0x530e8f
add ecx, eax
mov eax, dword [esp + 0x38]
add ecx, edx
test eax, eax
mov dword [str._r_____r____], ecx
jne 0x40f005
mov esi, dword [0x45cce0]
mov eax, 0xd0d507c9
imul esi, esi, 0x11c215
imul ebx
mov eax, dword [0x45ccc8]
imul eax, eax, 0x273a49
add edx, ebx
sar edx, 0x15
add esi, edx
mov edi, edx
shr edi, 0x1f
add edi, esi
add edi, eax
mov eax, 0xc5432eb
imul ebx
sar edx, 0x12
add edi, edx
mov eax, edx
shr eax, 0x1f
add eax, edi
mov edi, eax
mov eax, 0xa2f64c79
imul ebx
add edx, ebx
sar edx, 0x16
add edi, edx
mov esi, edx
mov eax, 0x647e2ce7
imul dword [0x45cce4]
sar edx, 0x15
shr esi, 0x1f
mov eax, edx
shr eax, 0x1f
add eax, edx
add esi, edi
sub esi, eax
mov eax, dword [esp + 0x3c]
test eax, eax
mov dword [0x45ccc8], esi
je 0x40f00b
mov edi, eax
lea edx, [edi + 1]
mov dword [esp + 0x10], edx
mov dl, byte [edi]
inc edi
test dl, dl
jne 0x40efd5
sub edi, dword [esp + 0x10]
mov dword [esp + 0x14], edi
je 0x40f00b
push eax
call fcn.0040e500
mov ecx, dword [str._r_____r____]
mov ebp, dword [0x45cccc]
mov ebx, dword [0x45ccd0]
add esp, 4
mov dword [esp + 0x38], eax
mov esi, dword [0x45ccc8]
mov eax, dword [0x45cce4]
imul eax, eax, 0x273a49
mov dword [esp + 0x10], eax
mov eax, 0x54a93351
imul ebp
mov eax, dword [esp + 0x10]
sar edx, 0x13
add eax, edx
mov ebp, edx
shr ebp, 0x1f
add ebp, eax
mov eax, 0x61fd3f09
imul dword [0x45ccd4]
sar edx, 0x15
add ebp, edx
mov edi, dword [0x45cce8]
mov eax, edx
imul edi, edi, 0x569052
shr eax, 0x1f
add eax, ebp
mov ebp, eax
mov eax, dword [0x45cce0]
imul eax, eax, 0x530e8f
add ebp, eax
mov eax, 0x647e2ce7
imul dword [0x45ccd4]
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add ebp, edx
add eax, ebp
mov ebp, dword [esp + 0x38]
sub eax, edi
sub eax, ecx
add eax, 0x34e0fb
test ebp, ebp
mov dword [0x45cccc], eax
jne 0x40f09a
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x24
ret
mov eax, 0x26bae4e5
imul esi, esi, 0x5184aa
imul ebx
sar edx, 0x13
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov ebx, ecx
mov ecx, dword [0x45ccd8]
mov eax, 0xd0d507c9
imul ecx
add edx, ecx
imul ecx, ecx, 0x839c4a
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, ebx
add eax, ecx
mov ebx, eax
mov eax, 0x1f1f444d
imul dword [0x45ccdc]
mov eax, dword [0x45cce4]
sar edx, 0x14
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ebx, ecx
add ebx, esi
sub ebx, eax
lea edx, [ebx + edi - 0x273a49]
push ebp
mov dword [0x45ccd0], edx
call dword [sym.imp.KERNEL32.dll_GetProcessId]
mov ebx, eax
push ebx
push 4
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
mov ecx, dword [str._r_____r____]
mov esi, dword [0x45ccdc]
mov dword [esp + 0x38], eax
mov eax, dword [0x45ccd8]
lea edi, [eax + ecx]
imul ecx, ecx, 0x5399dc
mov eax, 0x54a93351
imul edi, edi, 0x5184aa
imul esi
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0x61fd3f09
imul esi
sar edx, 0x15
add edi, edx
mov eax, edx
shr eax, 0x1f
mov edx, esi
imul edx, edx, 0x530e8f
add eax, edi
mov edi, dword [0x45cce0]
add ecx, edi
add ecx, eax
lea eax, [edx + ecx - 0x273a49]
xor ecx, ecx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], ecx
mov dword [0x45ccd4], eax
mov dword [esp + 0x24], ecx
mov eax, 0x54a93351
mov dword [esp + 0x28], ecx
imul edi
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], ecx
mov ecx, dword [0x45cce8]
mov ebp, ecx
imul ebp, ebp, 0x273a49
sar edx, 0x13
mov eax, edx
imul esi, esi, 0x273a49
shr eax, 0x1f
add eax, edx
sub eax, ebp
mov edx, edi
imul edi, edi, 0x6489e9
imul edx, edx, 0x1830cc
add eax, edx
mov edx, dword [0x45ccc8]
imul edx, edx, 0x5399dc
add eax, edx
mov ebp, eax
mov eax, 0x61fd3f09
imul dword [0x45ccd4]
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0xbd455a63
imul ecx
add edx, ecx
sar edx, 0x16
add ebp, edx
mov eax, edx
shr eax, 0x1f
add eax, ebp
mov ebp, eax
mov eax, 0xc5432eb
imul ecx
sar edx, 0x12
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x45ccd0]
sub ebp, ecx
mov ecx, dword [0x45cccc]
mov dword [0x45ccd8], ebp
lea ebp, [edx + ecx]
imul ebp, ebp, 0x44ce3d
add ebp, esi
mov esi, dword [0x45cce4]
mov eax, 0x1f1f444d
imul esi
sar edx, 0x14
add ebp, edx
mov eax, edx
shr eax, 0x1f
add eax, ebp
mov ebp, eax
mov eax, 0x61fd3f09
imul esi
sar edx, 0x15
add ebp, edx
mov esi, edx
mov eax, 0x647e2ce7
imul ecx
sar edx, 0x15
shr esi, 0x1f
mov eax, edx
add esi, ebp
mov ebp, dword [esp + 0x38]
shr eax, 0x1f
lea ecx, [esp + 0x18]
add eax, edx
add esi, edi
push ecx
sub esi, eax
push ebp
mov dword [esp + 0x20], 0x1c
mov dword [esp + 0x18], 0
mov dword [0x45ccdc], esi
call sub.KERNEL32.dll_Thread32First
test eax, eax
je 0x40f4f1
mov edi, dword [0x45cce8]
mov ecx, dword [0x45ccd0]
mov edx, dword [0x45cccc]
lea eax, [ecx + edi]
imul eax, eax, 0x34e0fb
mov dword [esp + 0x14], eax
mov eax, 0x26bae4e5
imul edx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
sub edx, eax
mov dword [esp + 0x14], edx
mov eax, 0x3b87af8d
imul edi
mov eax, dword [esp + 0x14]
sar edx, 0x14
add eax, edx
mov esi, edx
mov edx, dword [0x45ccdc]
imul edx, edx, 0x273a49
shr esi, 0x1f
add esi, eax
mov eax, dword [0x45ccd4]
sub esi, edx
mov edx, eax
imul edx, edx, 0x569052
sub esi, edx
mov edx, dword [0x45ccd8]
imul edx, edx, 0x6489e9
add esi, edx
cmp dword [esp + 0x24], ebx
mov dword [0x45cce0], esi
jne 0x40f3c5
mov ecx, dword [0x45ccc8]
mov ebx, dword [str._r_____r____]
lea ebp, [ecx + eax]
mov eax, 0x26bae4e5
imul ebp, ebp, 0x1830cc
imul ebx
imul ebx, ebx, 0x5399dc
sar edx, 0x13
add ebp, edx
mov eax, edx
shr eax, 0x1f
add eax, ebp
mov ebp, eax
mov eax, 0x3b87af8d
imul dword [0x45ccd8]
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45cce4]
sub ebp, eax
mov eax, 0x1f1f444d
imul edx
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0x61fd3f09
imul dword [0x45ccd8]
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
add ebp, ebx
mov ebx, dword [esp + 0x20]
mov dword [0x45cce4], ebp
jmp 0x40f507
mov edx, dword [0x45ccd8]
mov eax, dword [0x45cce4]
mov esi, dword [0x45ccc8]
imul eax, eax, 0x273a49
lea edi, [edx + ecx]
imul ecx, ecx, 0x5399dc
imul edi, edi, 0x530e8f
sub edi, eax
mov eax, 0x54a93351
imul esi
sar edx, 0x13
mov eax, edx
add edi, edx
shr eax, 0x1f
add eax, edi
sub eax, ecx
mov ecx, dword [str._r_____r____]
mov edi, eax
mov eax, 0x61fd3f09
imul esi
sar edx, 0x15
mov esi, edx
add edi, edx
mov eax, 0xa2f64c79
imul ecx
add edx, ecx
sar edx, 0x16
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
shr esi, 0x1f
lea edx, [esp + 0x18]
add esi, edi
push edx
sub esi, ecx
push ebp
mov dword [0x45cce8], esi
call sub.KERNEL32.dll_Thread32Next
test eax, eax
je 0x40f4f1
jmp 0x40f450
mov edi, dword [0x45ccd0]
mov esi, dword [0x45cce0]
mov eax, 0xd0d507c9
imul edi
add edx, edi
mov ecx, esi
imul ecx, ecx, 0x11c215
sar edx, 0x15
add ecx, edx
mov ebp, edx
mov edx, dword [0x45ccc8]
imul edx, edx, 0x273a49
shr ebp, 0x1f
add ebp, ecx
add ebp, edx
mov eax, 0xc5432eb
imul edi
sar edx, 0x12
add ebp, edx
mov eax, edx
shr eax, 0x1f
add eax, ebp
mov ebp, eax
mov eax, 0xa2f64c79
imul edi
add edx, edi
sar edx, 0x16
mov ecx, edx
add ebp, edx
shr ecx, 0x1f
add ecx, ebp
mov ebp, dword [0x45cce4]
mov eax, 0x647e2ce7
imul ebp
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
cmp dword [esp + 0x24], ebx
mov dword [0x45ccc8], ecx
je 0x40f58e
mov edx, dword [esp + 0x38]
lea ecx, [esp + 0x18]
push ecx
push edx
call sub.KERNEL32.dll_Thread32Next
test eax, eax
jne 0x40f450
mov edi, dword [0x45cce8]
mov ecx, dword [0x45ccc8]
mov esi, dword [0x45cce0]
mov ebx, dword [esp + 0x10]
mov eax, 0x54a93351
imul ecx, ecx, 0x5399dc
imul esi
imul esi, esi, 0x1830cc
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebp, edi
imul ebp, ebp, 0x273a49
sub eax, ebp
add eax, esi
add eax, ecx
mov ebp, eax
mov eax, 0x61fd3f09
imul dword [0x45ccd4]
sar edx, 0x15
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov eax, 0xbd455a63
imul edi
sub ebp, ecx
add edx, edi
sar edx, 0x16
mov ecx, edx
add ebp, edx
mov eax, 0xc5432eb
imul edi
sar edx, 0x12
shr ecx, 0x1f
mov eax, edx
shr eax, 0x1f
add ecx, ebp
add eax, edx
sub ecx, eax
mov dword [0x45ccd8], ecx
mov ecx, dword [esp + 0x38]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
pop edi
pop esi
pop ebp
mov eax, ebx
pop ebx
add esp, 0x24
ret
mov eax, 0x26bae4e5
imul edi
mov edi, dword [0x45ccd8]
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebx, eax
mov eax, 0xd0d507c9
imul edi
add edx, edi
imul edi, edi, 0x839c4a
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ccdc]
sub eax, ebx
add eax, edi
mov edi, dword [0x45cce8]
mov ebx, eax
mov eax, 0x1f1f444d
imul edx
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov edx, edi
imul edx, edx, 0x569052
mov eax, ecx
imul eax, eax, 0x5184aa
add ebx, edx
add ebx, eax
sub ebx, ebp
sub ebx, 0x273a49
mov dword [0x45ccd0], ebx
mov ebx, dword [esp + 0x20]
jmp 0x40f507