Function at 0x40f130
Capabilities:
Enumerate threads

Disassembly:
mov ecx, dword [0x45dbcc]
mov eax, 0x61b9fbc5
imul ecx
sar edx, 0x19
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esp, 0x24
push ebx
push ebp
push esi
mov esi, dword [0x45dbd4]
push edi
mov edi, eax
mov eax, 0x830d168d
imul esi
add edx, esi
sar edx, 0x19
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45dbe8]
mov ebp, eax
imul edx, edx, 0x3409f8e
mov eax, ecx
imul eax, eax, 0x35f16dd
sub ebp, edi
add ebp, edx
add ebp, eax
mov eax, 0x56f92285
imul esi
sar edx, 0x19
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0x56f92285
imul ecx
mov ecx, dword [0x45dbdc]
mov eax, dword [esp + 0x38]
imul ecx, ecx, 0x3e67c56
sar edx, 0x19
mov ebx, edx
shr ebx, 0x1f
add ebp, edx
add ebx, ebp
add ebx, ecx
test eax, eax
mov dword [str._r_____r____], ebx
jne 0x40f279
mov ecx, dword [0x45dbd0]
mov eax, 0x6386b3b9
imul ecx
mov eax, dword [0x45dbe0]
sar edx, 0x18
imul eax, eax, 0x1fc96d8
mov edi, edx
shr edi, 0x1f
add edi, edx
mov edx, dword [0x45dbc8]
imul edx, edx, 0x2927ae2
add edi, edx
sub edi, eax
mov eax, 0x4bee9027
imul ecx
sar edx, 0x18
add edi, edx
mov ebp, edx
mov eax, 0x187fbc47
imul ecx
shr ebp, 0x1f
sar edx, 0x17
add ebp, edi
mov edi, dword [0x45dbe4]
add ebp, edx
mov ecx, edx
mov eax, 0x8345522b
imul edi
add edx, edi
sar edx, 0x19
shr ecx, 0x1f
mov eax, edx
shr eax, 0x1f
add ecx, ebp
mov ebp, dword [esp + 0x3c]
add eax, edx
sub ecx, eax
test ebp, ebp
mov dword [0x45dbc8], ecx
je 0x40f27f
mov edi, ebp
lea edx, [edi + 1]
mov al, byte [edi]
inc edi
test al, al
jne 0x40f251
sub edi, edx
mov dword [esp + 0x14], edi
je 0x40f27f
push ebp
call fcn.0040e740
mov ebx, dword [str._r_____r____]
mov esi, dword [0x45dbd4]
add esp, 4
mov dword [esp + 0x38], eax
mov ecx, dword [0x45dbc8]
mov ebp, dword [0x45dbe4]
mov eax, 0x830d168d
imul ebp, ebp, 0x2927ae2
imul esi
add edx, esi
sar edx, 0x19
add ebp, edx
mov eax, edx
shr eax, 0x1f
add eax, ebp
mov dword [esp + 0x10], eax
mov eax, 0x3f96a7f5
imul dword [0x45dbcc]
mov eax, dword [esp + 0x10]
sar edx, 0x18
add eax, edx
mov edi, dword [0x45dbe8]
mov ebp, edx
imul edi, edi, 0x3409f8e
shr ebp, 0x1f
add ebp, eax
mov eax, dword [0x45dbe0]
imul eax, eax, 0x35f16dd
add ebp, eax
mov eax, 0x8345522b
imul esi
add edx, esi
sar edx, 0x19
mov eax, edx
shr eax, 0x1f
add ebp, edx
add eax, ebp
sub eax, edi
sub eax, ebx
mov ebx, dword [esp + 0x38]
add eax, 0x293659b
test ebx, ebx
mov dword [0x45dbcc], eax
jne 0x40f30d
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x24
ret
mov esi, dword [0x45dbd8]
imul ecx, ecx, 0x3e67c56
mov eax, 0x6386b3b9
imul esi
imul esi, esi, 0x5e30a0c
sar edx, 0x18
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebp, eax
mov eax, 0x31b1a317
imul dword [0x45dbd0]
sar edx, 0x17
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0x56f92285
imul dword [0x45dbdc]
sar edx, 0x19
mov eax, edx
add ebp, esi
mov esi, dword [0x45dbe4]
shr eax, 0x1f
add eax, edx
sub ebp, eax
add ebp, ecx
sub ebp, esi
lea ecx, [edi + ebp - 0x2927ae2]
push ebx
mov dword [0x45dbd0], ecx
call dword [sym.imp.KERNEL32.dll_GetProcessId]
push eax
push 4
mov dword [esp + 0x18], eax
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
mov ecx, dword [0x45dbdc]
mov esi, dword [str._r_____r____]
mov edx, dword [0x45dbd8]
mov dword [esp + 0x38], eax
lea edi, [edx + esi]
imul esi, esi, 0x3e828c7
mov eax, 0x830d168d
imul edi, edi, 0x3e67c56
imul ecx
add edx, ecx
sar edx, 0x19
add edi, edx
mov ebx, edx
mov eax, 0x3f96a7f5
imul ecx
mov ebp, dword [0x45dbc8]
sar edx, 0x18
imul ebp, ebp, 0x3e828c7
mov eax, edx
shr eax, 0x1f
add eax, edx
shr ebx, 0x1f
add ebx, edi
mov edi, dword [0x45dbe8]
mov edx, ecx
imul edx, edx, 0x35f16dd
add ebx, esi
mov esi, dword [0x45dbe0]
sub ebx, eax
xor eax, eax
mov dword [esp + 0x18], eax
add ebx, esi
lea ebx, [edx + ebx - 0x2927ae2]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov edx, edi
imul edx, edx, 0x2927ae2
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov eax, 0x830d168d
sub ebp, edx
imul ebx
mov dword [0x45dbd4], ebx
add edx, ebx
imul ecx, ecx, 0x2927ae2
sar edx, 0x19
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0x3f96a7f5
imul esi
sar edx, 0x18
add ebp, edx
mov ebx, edx
mov edx, esi
imul esi, esi, 0x539869b
imul edx, edx, 0x406a069
shr ebx, 0x1f
add ebx, ebp
add ebx, edx
mov eax, 0x9d6ba841
imul edi
add edx, edi
sar edx, 0x19
add ebx, edx
mov ebp, edx
mov eax, 0x4bee9027
imul edi
mov edi, dword [0x45dbcc]
sar edx, 0x18
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45dbd0]
shr ebp, 0x1f
add ebp, ebx
lea ebx, [edx + edi]
sub ebp, eax
imul ebx, ebx, 0x53d3666
add ebx, ecx
mov ecx, dword [0x45dbe4]
mov eax, 0x830d168d
imul ecx
add edx, ecx
sar edx, 0x19
mov eax, edx
add ebx, edx
shr eax, 0x1f
add eax, ebx
mov ebx, eax
mov eax, 0x56f92285
imul ecx
sar edx, 0x19
mov ecx, edx
add ebx, edx
mov eax, 0x8345522b
imul edi
add edx, edi
sar edx, 0x19
shr ecx, 0x1f
mov eax, edx
add ecx, ebx
shr eax, 0x1f
add ecx, esi
add eax, edx
mov edx, dword [esp + 0x38]
sub ecx, eax
mov dword [0x45dbdc], ecx
lea ecx, [esp + 0x18]
push ecx
mov dword [0x45dbd8], ebp
push edx
mov dword [esp + 0x20], 0x1c
xor ebp, ebp
call sub.KERNEL32.dll_Thread32First
test eax, eax
je 0x40f751
mov edi, dword [0x45dbe8]
mov ecx, dword [0x45dbd0]
mov eax, dword [0x45dbdc]
mov edx, dword [0x45dbcc]
imul eax, eax, 0x2927ae2
lea ebx, [ecx + edi]
imul ebx, ebx, 0x293659b
sub ebx, eax
mov eax, 0x31b1a317
imul edx
sar edx, 0x17
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x61b9fbc5
imul edi
mov eax, dword [0x45dbd4]
sar edx, 0x19
add ebx, edx
mov esi, edx
mov edx, eax
imul edx, edx, 0x3409f8e
shr esi, 0x1f
add esi, ebx
mov ebx, dword [0x45dbd8]
sub esi, edx
mov edx, ebx
imul edx, edx, 0x539869b
add esi, edx
mov edx, dword [esp + 0x10]
cmp dword [esp + 0x24], edx
mov dword [0x45dbe0], esi
jne 0x40f629
mov ecx, dword [0x45dbc8]
lea ebp, [ecx + eax]
imul ebp, ebp, 0x406a069
mov eax, 0x31b1a317
imul dword [str._r_____r____]
sar edx, 0x17
add ebp, edx
mov eax, edx
shr eax, 0x1f
add eax, ebp
mov ebp, eax
mov eax, 0x61b9fbc5
imul ebx
sar edx, 0x19
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0x830d168d
imul ebx
add edx, ebx
sar edx, 0x19
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45dbe4]
sub ebp, eax
mov eax, dword [str._r_____r____]
imul eax, eax, 0x3e828c7
add ebp, eax
mov eax, 0x56f92285
imul edx
sar edx, 0x19
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov dword [0x45dbe4], ebp
mov ebp, dword [esp + 0x20]
jmp 0x40f763
mov edx, dword [0x45dbe4]
add ebx, ecx
imul edx, edx, 0x2927ae2
imul ecx, ecx, 0x3e828c7
imul ebx, ebx, 0x35f16dd
sub ebx, edx
sub ebx, ecx
mov ecx, dword [0x45dbc8]
mov eax, 0x830d168d
imul ecx
add edx, ecx
sar edx, 0x19
mov esi, edx
add ebx, edx
mov eax, 0x3f96a7f5
imul ecx
mov ecx, dword [str._r_____r____]
sar edx, 0x18
shr esi, 0x1f
mov edi, edx
add esi, ebx
add esi, edx
mov eax, 0x187fbc47
imul ecx
sar edx, 0x17
mov eax, edx
shr edi, 0x1f
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x38]
lea ecx, [esp + 0x18]
add edi, esi
push ecx
sub edi, eax
push edx
mov dword [0x45dbe8], edi
call sub.KERNEL32.dll_Thread32Next
test eax, eax
je 0x40f751
jmp 0x40f6b0
mov edi, dword [0x45dbd0]
mov esi, dword [0x45dbe0]
mov eax, 0x6386b3b9
imul edi
sar edx, 0x18
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x45dbc8]
imul edx, edx, 0x2927ae2
add ecx, edx
mov eax, esi
imul eax, eax, 0x1fc96d8
sub ecx, eax
mov eax, 0x4bee9027
imul edi
sar edx, 0x18
add ecx, edx
mov ebx, edx
mov eax, 0x187fbc47
imul edi
sar edx, 0x17
shr ebx, 0x1f
add ebx, ecx
mov ecx, edx
add ebx, edx
shr ecx, 0x1f
add ecx, ebx
mov ebx, dword [0x45dbe4]
mov eax, 0x8345522b
imul ebx
add edx, ebx
sar edx, 0x19
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
sub ecx, eax
cmp dword [esp + 0x24], edx
mov dword [0x45dbc8], ecx
je 0x40f7ec
mov ecx, dword [esp + 0x38]
lea eax, [esp + 0x18]
push eax
push ecx
call sub.KERNEL32.dll_Thread32Next
test eax, eax
jne 0x40f6b0
mov edi, dword [0x45dbe8]
mov ecx, dword [0x45dbc8]
mov esi, dword [0x45dbe0]
mov ebx, dword [0x45dbd4]
imul ecx, ecx, 0x3e828c7
mov edx, edi
imul edx, edx, 0x2927ae2
sub ecx, edx
mov eax, 0x830d168d
imul ebx
add edx, ebx
sar edx, 0x19
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, 0x3f96a7f5
imul esi
imul esi, esi, 0x406a069
sar edx, 0x18
add ecx, edx
mov ebx, edx
mov eax, 0x9d6ba841
imul edi
shr ebx, 0x1f
add ebx, ecx
add edx, edi
sar edx, 0x19
add ebx, esi
mov ecx, edx
add ebx, edx
mov eax, 0x4bee9027
imul edi
sar edx, 0x18
shr ecx, 0x1f
mov eax, edx
shr eax, 0x1f
add ecx, ebx
add eax, edx
sub ecx, eax
mov dword [0x45dbd8], ecx
mov ecx, dword [esp + 0x38]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x24
ret
mov ebp, dword [0x45dbd8]
mov eax, 0x6386b3b9
imul ebp
imul ebp, ebp, 0x5e30a0c
sar edx, 0x18
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x14], eax
mov eax, 0x31b1a317
imul edi
mov edi, dword [0x45dbe8]
sar edx, 0x17
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
sub edx, eax
mov eax, edi
imul eax, eax, 0x3409f8e
add edx, eax
add edx, ebp
mov dword [esp + 0x14], edx
mov edx, dword [0x45dbdc]
mov eax, 0x56f92285
imul edx
sar edx, 0x19
mov eax, edx
mov ebp, dword [esp + 0x20]
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
sub edx, eax
mov eax, ecx
imul eax, eax, 0x3e67c56
add edx, eax
sub edx, ebx
sub edx, 0x2927ae2
mov dword [0x45dbd0], edx
jmp 0x40f763