Function at 0x40f100
Capabilities:
Enumerate threads

Disassembly:
mov ecx, dword [0x45cce8]
sub esp, 0x24
imul ecx, ecx, 0xdaea
push ebx
mov ebx, dword [0x45ccd4]
mov eax, 0x98dd629f
imul ebx
add edx, ebx
sar edx, 0xf
add ecx, edx
push ebp
push esi
push edi
mov edi, edx
shr edi, 0x1f
add edi, ecx
mov ecx, dword [0x45cccc]
mov edx, ecx
imul edx, edx, 0xd3c7
add edi, edx
mov eax, 0x61494a93
imul ebx
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0x61494a93
imul ecx
sar edx, 0xf
add edi, edx
mov esi, edx
mov edx, dword [0x45ccdc]
imul edx, edx, 0xd082
shr esi, 0x1f
add esi, edi
add esi, edx
mov eax, 0x5cb3b92f
imul ecx
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, dword [esp + 0x38]
test eax, eax
mov dword [str._r_____r____], esi
jne 0x40f248
mov ecx, dword [0x45ccd0]
mov eax, 0x5134ce4f
imul ecx
sar edx, 0xd
mov edi, edx
shr edi, 0x1f
add edi, edx
mov edx, dword [0x45ccc8]
imul edx, edx, 0x64e1
add edi, edx
mov eax, 0x9aba81d9
imul ecx
add edx, ecx
sar edx, 0xf
add edi, edx
mov ebp, edx
mov eax, 0x4e93cfed
imul dword [0x45cce4]
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45cce0]
imul edx, edx, 0x2a2d
shr ebp, 0x1f
add ebp, edi
sub ebp, eax
add ebp, edx
mov eax, 0x1fd2221d
imul ecx
sar edx, 0xd
mov ecx, edx
add ebp, edx
shr ecx, 0x1f
add ecx, ebp
mov ebp, dword [esp + 0x3c]
test ebp, ebp
mov dword [0x45ccc8], ecx
je 0x40f24e
mov edi, ebp
lea edx, [edi + 1]
lea esp, [esp]
mov al, byte [edi]
inc edi
test al, al
jne 0x40f220
sub edi, edx
mov dword [esp + 0x14], edi
je 0x40f24e
push ebp
call fcn.0040e6f0
mov esi, dword [str._r_____r____]
mov ebx, dword [0x45ccd4]
add esp, 4
mov dword [esp + 0x38], eax
mov ecx, dword [0x45ccc8]
mov ebp, dword [0x45cce4]
mov eax, 0x98dd629f
imul ebp, ebp, 0x64e1
imul ebx
add edx, ebx
sar edx, 0xf
add ebp, edx
mov eax, edx
shr eax, 0x1f
add eax, ebp
mov ebp, eax
mov eax, dword [0x45cce0]
imul eax, eax, 0xd3c7
add ebp, eax
mov edi, dword [0x45cce8]
mov eax, 0x4e93cfed
imul edi, edi, 0xdaea
imul ebx
sar edx, 0xe
add ebp, edx
mov ebx, edx
mov eax, 0x8891a35
imul dword [0x45cccc]
shr ebx, 0x1f
sar edx, 9
add ebx, ebp
mov eax, edx
shr eax, 0x1f
add ebx, edx
add eax, ebx
mov ebx, dword [esp + 0x38]
sub eax, edi
sub eax, esi
add eax, 0x86a3
test ebx, ebx
mov dword [0x45cccc], eax
jne 0x40f2d4
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x24
ret
mov esi, dword [0x45ccd8]
imul ecx, ecx, 0xd082
mov eax, 0x5134ce4f
imul esi
imul esi, esi, 0x150d2
sar edx, 0xd
mov ebp, edx
shr ebp, 0x1f
add ebp, edx
mov eax, 0x61494a93
imul dword [0x45ccdc]
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
add ebp, esi
mov esi, dword [0x45cce4]
sub ebp, eax
mov eax, 0x79b0bfed
imul dword [0x45ccd0]
add ebp, ecx
sar edx, 0xe
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ebp, ecx
sub ebp, esi
lea edx, [edi + ebp - 0x64e1]
push ebx
mov dword [0x45ccd0], edx
call dword [sym.imp.KERNEL32.dll_GetProcessId]
push eax
push 4
mov dword [esp + 0x18], eax
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
mov esi, dword [str._r_____r____]
mov ecx, dword [0x45ccdc]
mov dword [esp + 0x38], eax
mov eax, dword [0x45ccd8]
lea edi, [eax + esi]
imul esi, esi, 0xd65c
mov eax, 0x98dd629f
imul edi, edi, 0xd082
imul ecx
add edx, ecx
sar edx, 0xf
add edi, edx
mov ebx, edx
mov edx, ecx
imul edx, edx, 0xd3c7
shr ebx, 0x1f
add ebx, edi
add ebx, esi
add ebx, edx
mov edi, dword [0x45cce8]
mov eax, 0x8891a35
imul ecx
sar edx, 9
mov eax, edx
shr eax, 0x1f
add eax, edx
xor edx, edx
mov dword [esp + 0x18], edx
mov esi, dword [0x45cce0]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], edx
sub ebx, eax
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], edx
mov eax, 0x95af2ed3
imul edi
add edx, edi
sar edx, 0xf
mov ebp, edi
lea ebx, [ebx + esi - 0x64e1]
imul ebp, ebp, 0x64e1
mov eax, edx
mov dword [0x45ccd4], ebx
shr eax, 0x1f
add eax, edx
imul ecx, ecx, 0x64e1
mov edx, dword [0x45ccc8]
sub eax, ebp
imul edx, edx, 0xd65c
add eax, edx
mov ebp, eax
mov eax, 0x98dd629f
imul ebx
add edx, ebx
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0x9aba81d9
imul edi
add edx, edi
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov edi, dword [0x45cccc]
mov eax, 0x8891a35
imul esi
sar edx, 9
add ebp, edx
mov eax, edx
shr eax, 0x1f
add eax, ebp
mov edx, esi
imul esi, esi, 0x10171
imul edx, edx, 0x3bfc
add eax, edx
mov dword [0x45ccd8], eax
mov eax, dword [0x45ccd0]
lea ebx, [eax + edi]
imul ebx, ebx, 0xb0bd
add ebx, ecx
mov ecx, dword [0x45cce4]
mov eax, 0x98dd629f
imul ecx
add edx, ecx
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add ebx, edx
add eax, ebx
mov ebx, eax
mov eax, 0x61494a93
imul ecx
sar edx, 0xf
mov ecx, edx
add ebx, edx
mov eax, 0x4e93cfed
imul edi
sar edx, 0xe
shr ecx, 0x1f
mov eax, edx
add ecx, ebx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x38]
sub ecx, eax
add ecx, esi
mov dword [0x45ccdc], ecx
lea ecx, [esp + 0x18]
push ecx
push edx
mov dword [esp + 0x20], 0x1c
xor ebp, ebp
call sub.KERNEL32.dll_Thread32First
test eax, eax
je 0x40f711
mov ebx, dword [0x45cce8]
mov ecx, dword [0x45ccd0]
mov eax, dword [0x45ccdc]
mov edx, dword [0x45ccd4]
imul eax, eax, 0x64e1
imul edx, edx, 0xdaea
lea edi, [ecx + ebx]
imul edi, edi, 0x86a3
sub edi, eax
sub edi, edx
mov eax, 0x5cb3b92f
imul ebx
sar edx, 0xe
add edi, edx
mov esi, edx
mov edx, dword [0x45cccc]
mov eax, 0x79b0bfed
imul edx
sar edx, 0xe
shr esi, 0x1f
mov eax, edx
add esi, edi
mov edi, dword [0x45ccd8]
shr eax, 0x1f
add eax, edx
mov edx, edi
imul edx, edx, 0x10171
sub esi, eax
mov eax, dword [esp + 0x10]
add esi, edx
cmp dword [esp + 0x24], eax
mov dword [0x45cce0], esi
mov eax, 0x98dd629f
jne 0x40f5f0
mov edx, dword [0x45ccd4]
mov ecx, dword [0x45ccc8]
lea ebp, [ecx + edx]
imul edi
add edx, edi
imul ebp, ebp, 0x3bfc
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [str._r_____r____]
sub ebp, eax
imul edx, edx, 0xd65c
add ebp, edx
mov edx, dword [0x45cce4]
mov eax, 0x61494a93
imul edx
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0x5cb3b92f
imul edi
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0x79b0bfed
imul dword [str._r_____r____]
sar edx, 0xe
mov eax, edx
add ebp, edx
shr eax, 0x1f
add eax, ebp
mov ebp, dword [esp + 0x20]
mov dword [0x45cce4], eax
jmp 0x40f723
mov edx, dword [0x45cce4]
add edi, ecx
imul edx, edx, 0x64e1
imul ecx, ecx, 0xd65c
imul edi, edi, 0xd3c7
sub edi, edx
sub edi, ecx
mov ecx, dword [0x45ccc8]
imul ecx
add edx, ecx
sar edx, 0xf
add edi, edx
mov esi, edx
mov eax, 0x8891a35
imul ecx
mov ecx, dword [str._r_____r____]
sar edx, 9
shr esi, 0x1f
add esi, edi
mov edi, edx
add esi, edx
mov eax, 0x1fd2221d
imul ecx
sar edx, 0xd
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 [0x45cce8], edi
call sub.KERNEL32.dll_Thread32Next
test eax, eax
je 0x40f711
lea ecx, [ecx]
mov edi, dword [0x45ccd0]
mov eax, 0x5134ce4f
imul edi
sar edx, 0xd
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x45ccc8]
imul edx, edx, 0x64e1
add ecx, edx
mov eax, 0x9aba81d9
imul edi
mov esi, dword [0x45cce0]
add edx, edi
sar edx, 0xf
add ecx, edx
mov ebx, edx
mov eax, 0x4e93cfed
imul dword [0x45cce4]
sar edx, 0xe
mov eax, edx
shr ebx, 0x1f
add ebx, ecx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x1fd2221d
imul edi
mov eax, dword [esp + 0x24]
mov ecx, esi
imul ecx, ecx, 0x2a2d
add ebx, ecx
sar edx, 0xd
mov ecx, edx
add ebx, edx
mov edx, dword [esp + 0x10]
shr ecx, 0x1f
add ecx, ebx
cmp eax, edx
mov dword [0x45ccc8], ecx
je 0x40f7b0
mov ecx, dword [esp + 0x38]
lea eax, [esp + 0x18]
push eax
push ecx
call sub.KERNEL32.dll_Thread32Next
test eax, eax
jne 0x40f670
mov ebx, dword [0x45cce8]
mov ecx, dword [0x45ccc8]
mov esi, dword [0x45cce0]
mov eax, 0x95af2ed3
imul ecx, ecx, 0xd65c
imul ebx
add edx, ebx
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edi, ebx
imul edi, edi, 0x64e1
sub eax, edi
add eax, ecx
mov ecx, dword [0x45ccd4]
mov edi, eax
mov eax, 0x98dd629f
imul ecx
add edx, ecx
sar edx, 0xf
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov eax, 0x9aba81d9
imul ebx
add edx, ebx
sar edx, 0xf
mov eax, edx
sub edi, ecx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0x8891a35
imul esi
imul esi, esi, 0x3bfc
sar edx, 9
mov ecx, edx
shr ecx, 0x1f
add edi, edx
mov edx, dword [esp + 0x38]
add ecx, edi
add ecx, esi
push edx
mov dword [0x45ccd8], 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 [0x45ccd8]
mov ebx, dword [0x45cce8]
mov eax, 0x5134ce4f
imul ebp
imul ebp, ebp, 0x150d2
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, ebx
imul edx, edx, 0xdaea
add eax, edx
mov edx, dword [0x45ccdc]
add eax, ebp
mov dword [esp + 0x14], eax
mov eax, 0x61494a93
imul edx
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
sub edx, eax
mov eax, ecx
imul eax, eax, 0xd082
add edx, eax
mov dword [esp + 0x14], edx
mov ebp, dword [esp + 0x20]
mov eax, 0x79b0bfed
imul edi
mov edi, dword [0x45cce4]
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
sub edx, eax
sub edx, edi
sub edx, 0x64e1
mov dword [0x45ccd0], edx
jmp 0x40f723