Function at 0x40f790
Capabilities:
Enumerate threads

Disassembly:
mov ecx, dword [0x45ebcc]
sub esp, 0x24
push ebx
push ebp
push esi
mov esi, dword [0x45ebd8]
mov eax, 0x98f19603
imul esi
add edx, esi
sar edx, 0x13
push edi
mov edi, edx
shr edi, 0x1f
add edi, edx
mov eax, 0x98f19603
imul ecx
add edx, ecx
mov ecx, dword [0x45ebd4]
mov ebx, dword [0x45ebe0]
sar edx, 0x13
add edi, edx
mov ebp, edx
mov eax, 0x7af682a5
imul ecx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, ebx
imul edx, edx, 0x852b6
shr ebp, 0x1f
add ebp, edi
sub ebp, eax
sub ebp, edx
mov eax, 0x64ddc525
imul ecx
mov eax, dword [0x45ebdc]
imul eax, eax, 0x14957d
sar edx, 0x12
mov ecx, edx
shr ecx, 0x1f
add ebp, edx
add ecx, ebp
add ecx, eax
mov eax, dword [esp + 0x38]
test eax, eax
mov dword [0x45ebc4], ecx
jne 0x40f8da
mov eax, 0x1ec1ffc5
imul dword [0x45ebd0]
sar edx, 0x10
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edi, ebx
mov ebp, eax
imul edi, edi, 0x16c72
sub ebp, edi
mov edi, dword [0x45ebe4]
mov eax, 0xaf53e355
imul edi
add edx, edi
sar edx, 0x13
add ebp, edx
mov eax, edx
shr eax, 0x1f
add eax, ebp
mov edx, esi
imul edx, edx, 0xbae55
add eax, edx
mov ebp, eax
mov eax, 0x4adacc0f
imul ebx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0x441d07d
imul dword [0x45ebdc]
sar edx, 0xe
mov ebx, edx
add ebp, edx
shr ebx, 0x1f
add ebx, ebp
mov ebp, dword [esp + 0x3c]
test ebp, ebp
mov dword [0x45ebc8], ebx
je 0x40f8e6
mov eax, ebp
lea edx, [eax + 1]
mov dword [esp + 0x10], edx
nop
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40f8b0
sub eax, dword [esp + 0x10]
mov dword [esp + 0x14], eax
je 0x40f8e6
push ebp
call fcn.0040ed50
mov ecx, dword [0x45ebc4]
mov esi, dword [0x45ebd8]
add esp, 4
mov dword [esp + 0x38], eax
mov ebx, dword [0x45ebc8]
mov edi, dword [0x45ebe4]
mov eax, 0x98f19603
imul ebx
add edx, ebx
sar edx, 0x13
mov ebp, ecx
imul ebp, ebp, 0x6e773
add ebp, edx
mov ebx, edx
mov eax, 0x98f19603
imul esi
add edx, esi
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
shr ebx, 0x1f
add ebx, ebp
sub ebx, eax
mov eax, 0x7af682a5
imul dword [0x45ebe0]
sar edx, 0x12
add ebx, edx
mov ebp, edx
mov eax, 0x7d19681
imul dword [0x45ebdc]
sar edx, 0xe
shr ebp, 0x1f
add ebp, ebx
mov ebx, dword [0x45ebd4]
add ebp, edx
mov eax, edx
shr eax, 0x1f
add eax, ebp
mov ebp, eax
mov eax, 0xaf53e355
imul ebx
add edx, ebx
sar edx, 0x13
add ebp, edx
mov ebx, edx
mov eax, 0x4adacc0f
imul dword [0x45ebd0]
sar edx, 0x12
shr ebx, 0x1f
mov eax, edx
shr eax, 0x1f
add eax, edx
add ebx, ebp
sub ebx, eax
mov eax, dword [esp + 0x38]
test eax, eax
mov dword [0x45ebcc], ebx
jne 0x40f992
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x24
ret
mov ebx, dword [0x45ebe8]
imul ecx, ecx, 0xd63fb
imul edi, edi, 0xdae0a
mov eax, 0x98f19603
imul ebx
add edx, ebx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebp, ebx
imul ebp, ebp, 0x6e773
sub ebp, eax
mov eax, 0x7d19681
imul dword [0x45ebd0]
sar edx, 0xe
sub ebp, ecx
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov eax, 0xaf53e355
imul esi
add edx, esi
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ebe0]
sub ebp, ecx
add eax, edx
mov edx, dword [esp + 0x38]
add eax, ebp
lea ecx, [edi + eax - 0xbae55]
push edx
mov dword [0x45ebd0], ecx
call dword [sym.imp.KERNEL32.dll_GetProcessId]
mov ebp, eax
push ebp
push 4
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
mov esi, dword [0x45ebc4]
mov ecx, dword [0x45ebc8]
mov edi, dword [0x45ebe8]
mov dword [esp + 0x38], eax
mov ebx, esi
imul ebx, ebx, 0x1b5c14
mov eax, ecx
imul eax, eax, 0x852b6
sub ebx, eax
mov edx, edi
imul edx, edx, 0xa26ed
add ebx, edx
mov eax, 0x64ddc525
imul dword [0x45ebdc]
sar edx, 0x12
mov eax, edx
add ebx, edx
shr eax, 0x1f
add eax, ebx
mov ebx, eax
mov eax, 0x2a9f6a15
imul dword [0x45ebdc]
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ebe4]
sub ebx, eax
lea eax, [ebx + edx + 0xbae55]
xor edx, edx
mov dword [esp + 0x18], edx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], edx
mov dword [0x45ebd4], eax
mov dword [esp + 0x2c], edx
mov eax, 0x4a28aa57
mov dword [esp + 0x30], edx
imul esi
sar edx, 0x11
imul esi, esi, 0xbae55
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov eax, 0x1ec1ffc5
imul edi
imul edi, edi, 0xbae55
sar edx, 0x10
add ebx, edx
mov eax, edx
shr eax, 0x1f
add eax, ebx
sub eax, edi
mov ebx, eax
mov eax, 0x64ddc525
imul ecx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov edi, dword [0x45ebcc]
mov edx, ecx
imul ecx, ecx, 0xf08a4
imul edx, edx, 0xa26ed
add ebx, edx
mov edx, dword [0x45ebe0]
mov eax, 0x2a9f6a15
imul edx
sar edx, 0x11
add ebx, edx
mov eax, edx
shr eax, 0x1f
add eax, ebx
mov ebx, dword [0x45ebd0]
mov edx, edi
imul edx, edx, 0xc032b
sub eax, edx
mov dword [0x45ebd8], eax
mov eax, 0x98f19603
imul ebx
add edx, ebx
sar edx, 0x13
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov eax, 0x4adacc0f
imul edi
imul edi, edi, 0x10a7ca
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
add ebx, esi
sub ebx, eax
mov eax, 0x64ddc525
imul dword [0x45ebe4]
sar edx, 0x12
mov eax, edx
add ebx, edi
shr eax, 0x1f
add ebx, edx
mov edx, dword [esp + 0x38]
add eax, ebx
add eax, ecx
lea ecx, [esp + 0x18]
push ecx
push edx
mov dword [esp + 0x20], 0x1c
mov dword [esp + 0x18], 0
mov dword [0x45ebdc], eax
call sub.KERNEL32.dll_Thread32First
test eax, eax
je 0x40fdf7
mov eax, dword [0x45ebd0]
mov ebx, dword [0x45ebd4]
mov ecx, dword [0x45ebc8]
mov edi, dword [0x45ebe8]
sub eax, ebx
imul eax, eax, 0x82f7d
mov edx, ecx
imul edx, edx, 0x6e773
add eax, edx
mov dword [esp + 0x14], eax
mov eax, 0x7af682a5
imul edi
mov eax, dword [esp + 0x14]
sar edx, 0x12
add eax, edx
mov esi, edx
shr esi, 0x1f
add esi, eax
mov eax, 0x7d19681
imul dword [0x45ebd0]
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ebcc]
imul edx, edx, 0xbae55
sub esi, eax
mov eax, dword [0x45ebd8]
sub esi, edx
mov edx, eax
imul edx, edx, 0xf08a4
add esi, edx
cmp dword [esp + 0x24], ebp
mov dword [0x45ebe0], esi
jne 0x40fcc2
mov ebp, dword [0x45ebe4]
imul ebx, ebx, 0x180656
mov eax, 0x98f19603
imul ebp
add edx, ebp
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebp, eax
mov eax, 0x85097d5b
imul dword [0x45ebd0]
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, ebp
mov dword [esp + 0x14], eax
mov eax, 0x7d19681
imul dword [0x45ebc4]
mov eax, dword [esp + 0x14]
sar edx, 0xe
add eax, edx
mov ebp, edx
shr ebp, 0x1f
add ebp, eax
mov eax, dword [0x45ebd8]
imul eax, eax, 0xa26ed
sub ebp, eax
mov eax, 0x64ddc525
imul dword [0x45ebcc]
sar edx, 0x12
mov eax, edx
add ebp, edx
mov edx, dword [esp + 0x20]
shr eax, 0x1f
add eax, ebp
add eax, ebx
mov dword [0x45ebe4], eax
mov dword [esp + 0x10], edx
jmp 0x40fe09
mov edx, dword [0x45ebd0]
imul ebx, ebx, 0xbae55
lea esi, [edx + eax]
mov eax, 0x64ddc525
imul esi, esi, 0x852b6
imul ecx
mov ecx, dword [0x45ebd8]
mov eax, ecx
imul eax, eax, 0xa26ed
sar edx, 0x12
mov edi, edx
shr edi, 0x1f
sub esi, ebx
add esi, edx
add edi, esi
add edi, eax
mov eax, 0x441d07d
imul ecx
sar edx, 0xe
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub edi, ecx
mov ecx, dword [0x45ebdc]
mov eax, 0x2a9f6a15
imul ecx
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x38]
lea ecx, [esp + 0x18]
push ecx
sub edi, eax
push edx
mov dword [0x45ebe8], edi
call sub.KERNEL32.dll_Thread32Next
test eax, eax
je 0x40fdf7
jmp 0x40fd50
mov esi, dword [0x45ebe0]
mov ebx, dword [0x45ebe4]
mov eax, 0x1ec1ffc5
imul dword [0x45ebd0]
sar edx, 0x10
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edi, eax
mov ecx, esi
imul ecx, ecx, 0x16c72
sub edi, ecx
mov ecx, dword [0x45ebd8]
mov eax, 0xaf53e355
imul ecx, ecx, 0xbae55
imul ebx
add edx, ebx
sar edx, 0x13
add edi, edx
mov eax, edx
shr eax, 0x1f
add eax, edi
add eax, ecx
mov ecx, dword [0x45ebdc]
mov edi, eax
mov eax, 0x4adacc0f
imul esi
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0x441d07d
imul ecx
mov eax, dword [esp + 0x24]
sar edx, 0xe
mov ecx, edx
shr ecx, 0x1f
add edi, edx
add ecx, edi
cmp eax, ebp
mov dword [0x45ebc8], ecx
je 0x40fe91
mov edx, dword [esp + 0x38]
lea ecx, [esp + 0x18]
push ecx
push edx
call sub.KERNEL32.dll_Thread32Next
test eax, eax
jne 0x40fd50
mov esi, dword [0x45ebe0]
mov ecx, dword [0x45ebc8]
mov edi, dword [0x45ebe8]
mov eax, 0x4a28aa57
imul dword [0x45ebc4]
sar edx, 0x11
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov eax, 0x1ec1ffc5
imul edi
imul edi, edi, 0xbae55
sar edx, 0x10
mov ebp, edx
add ebx, edx
mov eax, 0x64ddc525
imul ecx
imul ecx, ecx, 0xa26ed
sar edx, 0x12
shr ebp, 0x1f
mov eax, edx
shr eax, 0x1f
add eax, edx
add ebp, ebx
sub ebp, edi
sub ebp, eax
mov eax, 0x2a9f6a15
imul esi
mov eax, dword [0x45ebcc]
add ebp, ecx
imul eax, eax, 0xc032b
sar edx, 0x11
mov ecx, edx
shr ecx, 0x1f
add ebp, edx
mov edx, dword [esp + 0x38]
add ecx, ebp
sub ecx, eax
push edx
mov dword [0x45ebd8], ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret
mov edi, dword [0x45ebe8]
imul ebx, ebx, 0xdae0a
mov eax, 0x98f19603
imul edi
add edx, edi
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ebc4]
imul edx, edx, 0xd63fb
mov ebp, edi
imul ebp, ebp, 0x6e773
sub ebp, eax
sub ebp, edx
mov eax, 0x7d19681
imul dword [0x45ebd0]
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0xaf53e355
imul dword [0x45ebd8]
add edx, dword [0x45ebd8]
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
add eax, esi
add eax, ebp
lea edx, [ebx + eax - 0xbae55]
mov eax, dword [esp + 0x20]
mov dword [0x45ebd0], edx
mov dword [esp + 0x10], eax
jmp 0x40fe09