Function at 0x40f4e0
Capabilities:
Enumerate threads

Disassembly:
sub esp, 0x24
push ebx
push ebp
push esi
push edi
mov ecx, dword [0x45ebcc]
mov eax, 0x1671bc81
imul ecx
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebx, dword [0x45ebd8]
mov esi, eax
mov ebp, dword [0x45ebd4]
mov eax, 0x1671bc81
imul ebx
sar edx, 0x1a
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x45ebdc]
imul edx, edx, 0x564c079b
sub esi, ecx
add esi, edx
mov eax, 0x1a129787
imul ebp
sar edx, 0x1a
mov ecx, edx
add esi, edx
shr ecx, 0x1f
add ecx, esi
mov esi, dword [0x45ebe0]
mov eax, esi
imul eax, eax, 0xe74a505
add ecx, eax
mov eax, 0x4eb7d3f9
imul ebp
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, dword [esp + 0x38]
test eax, eax
mov dword [str._r_____r____], ecx
jne 0x40f634
mov edi, esi
mov eax, 0x78d1ad69
imul edi, edi, 0x5c7bb4
imul esi
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0x46d65f19
imul dword [0x45ebd0]
sar edx, 0x1a
mov esi, edx
add edi, edx
shr esi, 0x1f
add esi, edi
mov edi, dword [0x45ebe4]
mov eax, 0x81b5a619
imul edi
add edx, edi
sar edx, 0x1a
add esi, edx
mov eax, edx
shr eax, 0x1f
add eax, esi
mov dword [esp + 0x10], eax
mov eax, 0x4c8f4365
imul dword [0x45ebdc]
mov eax, dword [esp + 0x10]
sar edx, 0x1c
add eax, edx
mov esi, edx
mov edx, ebx
imul edx, edx, 0x7e501e9
shr esi, 0x1f
add esi, eax
mov eax, dword [esp + 0x3c]
add esi, edx
test eax, eax
mov dword [0x45ebc8], esi
je 0x40f640
lea edx, [eax + 1]
mov dword [esp + 0x10], edx
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40f600
sub eax, dword [esp + 0x10]
mov dword [esp + 0x14], eax
je 0x40f640
mov eax, dword [esp + 0x3c]
push eax
call fcn.0040eab0
mov ecx, dword [str._r_____r____]
mov ebx, dword [0x45ebd8]
mov ebp, dword [0x45ebd4]
add esp, 4
mov dword [esp + 0x38], eax
mov esi, dword [0x45ebc8]
mov edi, dword [0x45ebe4]
mov eax, 0x3dbc891d
imul dword [0x45ebdc]
sar edx, 0x1b
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x10], eax
mov eax, 0x1671bc81
imul esi
mov eax, dword [esp + 0x10]
sar edx, 0x1a
add eax, edx
mov esi, edx
shr esi, 0x1f
add esi, eax
mov eax, 0x1671bc81
imul ebx
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x78d1ad69
imul dword [0x45ebd0]
sar edx, 0x1c
add esi, edx
mov eax, edx
shr eax, 0x1f
add eax, esi
mov edx, ecx
imul edx, edx, 0x34652235
add eax, edx
mov esi, eax
mov eax, 0x4eb7d3f9
imul dword [0x45ebe0]
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x81b5a619
imul ebp
add edx, ebp
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add esi, edx
add eax, esi
mov dword [0x45ebcc], eax
mov eax, dword [esp + 0x38]
test eax, eax
jne 0x40f6e9
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x24
ret
mov esi, dword [0x45ebe8]
imul ecx, ecx, 0x2d9fc474
imul edi, edi, 0x21e6e566
mov eax, 0x3dbc891d
imul dword [0x45ebd0]
sar edx, 0x1b
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebp, eax
mov eax, 0xe98e437f
imul esi
imul esi, esi, 0x34652235
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, ebp
add eax, ecx
add eax, edi
add eax, esi
mov ebp, eax
mov eax, 0x81b5a619
imul ebx
add edx, ebx
mov ebx, dword [0x45ebe0]
sar edx, 0x1a
mov ecx, edx
shr ecx, 0x1f
add ebp, edx
mov edx, dword [esp + 0x38]
add ecx, ebp
sub ecx, ebx
sub ecx, 0x7e501e9
push edx
mov dword [0x45ebd0], 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 [0x45ebdc]
mov edi, dword [0x45ebe8]
mov dword [esp + 0x38], eax
mov eax, 0x1a129787
imul ecx
mov esi, edi
imul esi, esi, 0x2746608a
sar edx, 0x1a
add esi, edx
mov ebx, edx
mov eax, 0x1e3444b9
imul ecx
mov ecx, dword [0x45ebc8]
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, ecx
imul edx, edx, 0xe74a505
shr ebx, 0x1f
add ebx, esi
mov esi, dword [str._r_____r____]
sub ebx, eax
add edx, dword [0x45ebe4]
mov eax, esi
imul eax, eax, 0x43cdcacc
add edx, ebx
lea edx, [eax + edx - 0x7e501e9]
xor eax, eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov dword [0x45ebd4], edx
mov eax, 0x1a129787
imul ecx
mov ebx, dword [0x45ebcc]
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebp, ecx
imul ecx, ecx, 0x3580338c
imul ebp, ebp, 0x2746608a
sub ebp, eax
mov edx, ebx
imul edx, edx, 0x21e710c2
add ebp, edx
mov edx, dword [0x45ebe0]
mov eax, 0x1e3444b9
imul edx
sar edx, 0x1a
add ebp, edx
mov eax, edx
shr eax, 0x1f
add eax, ebp
mov ebp, eax
mov eax, 0x46d65f19
imul edi
imul edi, edi, 0x7e501e9
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0x9c59c36b
imul esi
add edx, esi
imul esi, esi, 0x7e501e9
sar edx, 0x1d
mov eax, edx
shr eax, 0x1f
add ebp, edx
mov edx, dword [0x45ebd0]
add eax, ebp
sub eax, edi
mov dword [0x45ebd8], eax
mov eax, 0x1671bc81
imul edx
sar edx, 0x1a
mov edi, edx
shr edi, 0x1f
add edi, edx
mov eax, 0x1a129787
imul dword [0x45ebe4]
sar edx, 0x1a
add edi, edx
mov eax, edx
shr eax, 0x1f
add eax, edi
mov edi, eax
mov eax, 0x78d1ad69
imul ebx
imul ebx, ebx, 0x68114d02
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x38]
sub edi, eax
add edi, ebx
add edi, ecx
lea ecx, [esp + 0x18]
push ecx
add edi, esi
push edx
mov dword [esp + 0x20], 0x1c
xor ebp, ebp
mov dword [0x45ebdc], edi
call sub.KERNEL32.dll_Thread32First
test eax, eax
je 0x40fb51
mov ecx, dword [0x45ebd0]
mov edi, dword [0x45ebd4]
lea eax, [ecx + edi]
imul eax, eax, 0x212c5ae6
mov dword [esp + 0x14], eax
mov eax, 0x3dbc891d
imul ecx
mov ecx, dword [esp + 0x14]
sar edx, 0x1b
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov ebx, dword [0x45ebe8]
mov eax, ecx
mov ecx, dword [0x45ebc8]
mov edx, ecx
imul edx, edx, 0x34652235
sub eax, edx
mov dword [esp + 0x14], eax
mov eax, 0x4eb7d3f9
imul ebx
mov eax, dword [esp + 0x14]
sar edx, 0x1c
add eax, edx
mov esi, edx
shr esi, 0x1f
add esi, eax
mov eax, dword [0x45ebcc]
imul eax, eax, 0x7e501e9
sub esi, eax
mov eax, dword [0x45ebd8]
mov edx, eax
imul edx, edx, 0x3580338c
add esi, edx
mov edx, dword [esp + 0x10]
cmp dword [esp + 0x24], edx
mov dword [0x45ebe0], esi
jne 0x40fa12
mov eax, 0x3dbc891d
imul edi, edi, 0x43ce2184
imul dword [str._r_____r____]
sar edx, 0x1b
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ebe4]
mov ebp, eax
mov eax, 0x1671bc81
imul edx
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0x1a129787
imul dword [0x45ebcc]
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
add ebp, edi
sub ebp, eax
mov eax, dword [0x45ebd8]
imul eax, eax, 0x2746608a
add ebp, eax
mov eax, 0x4eb7d3f9
imul dword [0x45ebd0]
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov dword [0x45ebe4], ebp
mov ebp, dword [esp + 0x20]
jmp 0x40fb63
mov edx, dword [0x45ebd0]
imul edi, edi, 0x7e501e9
lea esi, [edx + eax]
mov eax, 0x1a129787
imul esi, esi, 0xe74a505
imul ecx
mov ecx, dword [0x45ebdc]
sar edx, 0x1a
mov ebx, edx
add esi, edx
shr ebx, 0x1f
add ebx, esi
mov esi, dword [0x45ebd8]
mov eax, esi
imul eax, eax, 0x2746608a
sub ebx, eax
mov eax, 0x1e3444b9
imul ecx
sar edx, 0x1a
mov ecx, edx
add ebx, edx
mov eax, 0x4c8f4365
imul esi
sar edx, 0x1c
shr ecx, 0x1f
mov eax, edx
add ecx, ebx
shr eax, 0x1f
sub ecx, edi
add eax, edx
mov edx, dword [esp + 0x38]
sub ecx, eax
mov dword [0x45ebe8], ecx
lea ecx, [esp + 0x18]
push ecx
push edx
call sub.KERNEL32.dll_Thread32Next
test eax, eax
je 0x40fb51
jmp 0x40faa0
mov esi, dword [0x45ebe0]
mov ebx, dword [0x45ebd0]
mov eax, 0x78d1ad69
imul esi
sar edx, 0x1c
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, esi
imul ecx, ecx, 0x5c7bb4
sub ecx, eax
mov edi, dword [0x45ebe4]
mov eax, 0x46d65f19
imul ebx
sar edx, 0x1a
add ecx, edx
mov eax, edx
shr eax, 0x1f
add eax, ecx
mov ecx, eax
mov eax, 0x81b5a619
imul edi
add edx, edi
sar edx, 0x1a
add ecx, edx
mov eax, edx
shr eax, 0x1f
add eax, ecx
mov ecx, dword [0x45ebdc]
mov dword [esp + 0x14], eax
mov eax, 0x4c8f4365
imul ecx
mov eax, dword [esp + 0x14]
sar edx, 0x1c
add eax, edx
mov ecx, edx
mov edx, dword [0x45ebd8]
imul edx, edx, 0x7e501e9
shr ecx, 0x1f
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, edx
cmp dword [esp + 0x24], eax
mov dword [0x45ebc8], ecx
je 0x40fbec
mov edx, dword [esp + 0x38]
lea ecx, [esp + 0x18]
push ecx
push edx
call sub.KERNEL32.dll_Thread32Next
test eax, eax
jne 0x40faa0
mov esi, dword [0x45ebe0]
mov ecx, dword [0x45ebc8]
mov ebx, dword [0x45ebe8]
mov eax, 0x1a129787
imul ecx
imul ecx, ecx, 0x2746608a
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, dword [0x45ebcc]
imul eax, eax, 0x21e710c2
add ecx, eax
mov eax, 0x1e3444b9
imul esi
sar edx, 0x1a
add ecx, edx
mov esi, edx
mov eax, 0x46d65f19
imul ebx
imul ebx, ebx, 0x7e501e9
sar edx, 0x1a
shr esi, 0x1f
add esi, ecx
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub esi, ecx
mov ecx, dword [str._r_____r____]
mov eax, 0x9c59c36b
imul ecx
add edx, ecx
mov ecx, dword [esp + 0x38]
sar edx, 0x1d
mov eax, edx
shr eax, 0x1f
add esi, edx
add eax, esi
sub eax, ebx
push ecx
mov dword [0x45ebd8], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x24
ret
mov eax, 0x3dbc891d
imul edi, edi, 0x21e6e566
imul ebx
mov ebx, dword [0x45ebe8]
sar edx, 0x1b
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebp, eax
mov eax, 0xe98e437f
imul ebx
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [str._r_____r____]
imul edx, edx, 0x2d9fc474
sub eax, ebp
add eax, edx
mov edx, ebx
imul edx, edx, 0x34652235
add eax, edi
mov edi, dword [0x45ebd8]
add eax, edx
mov ebp, eax
mov eax, 0x81b5a619
imul edi
add edx, edi
sar edx, 0x1a
mov eax, edx
shr eax, 0x1f
add ebp, edx
add eax, ebp
mov ebp, dword [esp + 0x20]
sub eax, esi
sub eax, 0x7e501e9
mov dword [0x45ebd0], eax
jmp 0x40fb63