Function at 0x40f8f0
Capabilities:
Enumerate threads

Disassembly:
sub esp, 0x24
push ebx
push ebp
push esi
push edi
mov ecx, dword [0x45ebcc]
mov ebx, dword [0x45ebd8]
mov eax, 0x7a5789fb
imul ebx
sar edx, 0x16
mov esi, edx
shr esi, 0x1f
add esi, edx
mov eax, 0x7a5789fb
imul ecx
mov ecx, dword [0x45ebd4]
sar edx, 0x16
mov ebp, edx
add esi, edx
shr ebp, 0x1f
add ebp, esi
mov esi, dword [0x45ebdc]
mov eax, esi
imul eax, eax, 0xcdd745
add ebp, eax
mov eax, 0x312cd50d
imul ecx
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edi, dword [0x45ebe0]
mov edx, edi
imul edx, edx, 0x533e66
sub ebp, eax
sub ebp, edx
mov eax, 0xa16eca11
imul ecx
mov eax, dword [esp + 0x38]
add edx, ecx
sar edx, 0x16
mov ecx, edx
shr ecx, 0x1f
add ebp, edx
add ecx, ebp
test eax, eax
mov dword [0x45ebc4], ecx
jne 0x40fa4e
mov eax, 0x6cf6585f
imul esi
mov esi, dword [0x45ebe4]
sar edx, 0x16
mov ebp, edx
shr ebp, 0x1f
add ebp, edx
mov eax, 0x8c4682e9
imul esi
add edx, esi
sar edx, 0x16
add ebp, edx
mov eax, edx
shr eax, 0x1f
add eax, ebp
mov edx, ebx
imul edx, edx, 0x74cc7d
add eax, edx
mov dword [esp + 0x10], eax
mov ebp, dword [0x45ebd0]
mov eax, 0xef8db9b
imul edi
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x10]
sub edx, eax
mov dword [esp + 0x10], edx
mov eax, 0xc4d1d103
imul ebp
mov eax, dword [esp + 0x10]
add edx, ebp
sar edx, 0x16
add eax, edx
mov edi, edx
mov edx, dword [0x45ebe0]
imul edx, edx, 0xe3db2
shr edi, 0x1f
add edi, eax
mov eax, dword [esp + 0x3c]
sub edi, edx
test eax, eax
mov dword [0x45ebc8], edi
je 0x40fa60
lea edx, [eax + 1]
mov dword [esp + 0x10], edx
mov edi, edi
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40fa20
sub eax, dword [esp + 0x10]
mov dword [esp + 0x14], eax
je 0x40fa60
mov eax, dword [esp + 0x3c]
push eax
call fcn.0040ee80
mov ecx, dword [0x45ebc4]
mov ebx, dword [0x45ebd8]
add esp, 4
mov dword [esp + 0x38], eax
mov edi, dword [0x45ebc8]
mov ebp, dword [0x45ebd0]
mov esi, dword [0x45ebe4]
mov eax, 0x7a5789fb
imul edi
sar edx, 0x16
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edi, eax
mov eax, 0x7a5789fb
imul ebx
sar edx, 0x16
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0xc83bcf21
imul dword [0x45ebdc]
add edx, dword [0x45ebdc]
sar edx, 0x16
add edi, edx
mov eax, edx
shr eax, 0x1f
add eax, edi
mov dword [esp + 0x10], eax
mov eax, 0x8c4682e9
imul dword [0x45ebd4]
add edx, dword [0x45ebd4]
mov eax, dword [esp + 0x10]
sar edx, 0x16
add eax, edx
mov edi, edx
shr edi, 0x1f
add edi, eax
mov eax, 0x312cd50d
imul dword [0x45ebe0]
sar edx, 0x14
add edi, edx
mov eax, edx
shr eax, 0x1f
add eax, edi
mov edi, eax
mov eax, 0xef8db9b
imul ebp
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, ecx
imul edx, edx, 0x450d9b
sub edi, eax
mov eax, dword [esp + 0x38]
add edi, edx
test eax, eax
mov dword [0x45ebcc], edi
jne 0x40fb16
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x24
ret
mov edi, dword [0x45ebe8]
imul ecx, ecx, 0xff7a148d
imul esi, esi, 0x88c9aa
mov eax, 0x7a5789fb
imul edi
imul edi, edi, 0x450d9b
sar edx, 0x16
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, 0xc83bcf21
imul ebp
add edx, ebp
sar edx, 0x16
mov ebp, dword [0x45ebe0]
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, 0x8c4682e9
imul ebx
add edx, ebx
sar edx, 0x16
mov eax, edx
add ecx, edx
mov edx, dword [esp + 0x38]
shr eax, 0x1f
add eax, ecx
add esi, ebp
add esi, eax
lea ecx, [edi + esi - 0x74cc7d]
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 edi, dword [0x45ebdc]
mov ecx, dword [0x45ebc8]
mov dword [esp + 0x38], eax
mov ebp, dword [0x45ebe8]
mov eax, 0x7791c573
imul ebp, ebp, 0x657dbd
imul edi
sub edx, edi
sar edx, 0x16
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebx, eax
mov esi, ecx
imul esi, esi, 0x533e66
sub ebx, esi
mov esi, dword [0x45ebc4]
mov edx, esi
imul edx, edx, 0x1119354
add ebx, edx
add ebp, dword [0x45ebe4]
mov eax, 0xa16eca11
imul edi
add edx, edi
mov edi, dword [0x45ebe8]
sar edx, 0x16
mov eax, edx
shr eax, 0x1f
add eax, edx
add ebp, ebx
lea edx, [eax + ebp + 0x74cc7d]
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 [0x45ebd4], edx
mov dword [esp + 0x30], eax
mov ebx, edi
mov eax, 0xc4d1d103
imul ebx, ebx, 0x74cc7d
imul edi
add edx, edi
mov edi, dword [0x45ebe0]
sar edx, 0x16
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebp, eax
sub ebp, ebx
mov eax, 0x886e3a8d
imul edi
add edx, edi
mov edi, dword [0x45ebcc]
sar edx, 0x16
add ebp, edx
mov ebx, edx
shr ebx, 0x1f
add ebx, ebp
mov edx, edi
imul edx, edx, 0x781723
sub ebx, edx
mov eax, 0x76a21d75
imul esi
imul esi, esi, 0x74cc7d
sar edx, 0x15
add ebx, edx
mov ebp, edx
mov eax, 0xa16eca11
imul ecx
add edx, ecx
sar edx, 0x16
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, ecx
imul ecx, ecx, 0x965d2c
imul edx, edx, 0x657dbd
shr ebp, 0x1f
add ebp, ebx
sub ebp, eax
add ebp, edx
mov edx, dword [0x45ebd0]
mov eax, 0x7a5789fb
imul edx
sar edx, 0x16
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov eax, 0xef8db9b
imul edi
imul edi, edi, 0xa6969a
sar edx, 0x13
add ebx, ecx
mov ecx, dword [0x45ebe4]
mov eax, edx
shr eax, 0x1f
add eax, edx
add ebx, esi
sub ebx, eax
mov eax, 0xa16eca11
imul ecx
mov eax, dword [esp + 0x38]
add edx, ecx
sar edx, 0x16
add ebx, edi
mov ecx, edx
add ebx, edx
lea edx, [esp + 0x18]
shr ecx, 0x1f
push edx
add ecx, ebx
mov dword [0x45ebd8], ebp
push eax
mov dword [esp + 0x20], 0x1c
xor ebp, ebp
mov dword [0x45ebdc], ecx
call sub.KERNEL32.dll_Thread32First
test eax, eax
je 0x40ff8e
mov ecx, dword [0x45ebd0]
mov ebx, dword [0x45ebd4]
mov edi, dword [0x45ebd8]
mov eax, ecx
sub eax, ebx
imul eax, eax, 0x51d30d
mov edx, edi
imul edx, edx, 0x965d2c
add eax, edx
mov dword [esp + 0x14], eax
mov eax, 0xc83bcf21
imul ecx
add edx, ecx
mov ecx, dword [esp + 0x14]
sar edx, 0x16
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ebcc]
imul edx, edx, 0x74cc7d
sub ecx, eax
sub ecx, edx
mov eax, 0x312cd50d
imul dword [0x45ebe8]
sar edx, 0x14
mov esi, edx
add ecx, edx
mov edx, dword [esp + 0x10]
shr esi, 0x1f
add esi, ecx
mov ecx, dword [0x45ebc8]
mov eax, ecx
imul eax, eax, 0x450d9b
add esi, eax
cmp dword [esp + 0x24], edx
mov dword [0x45ebe0], esi
jne 0x40fe4a
mov edx, dword [0x45ebe4]
imul ebx, ebx, 0xf02e46
imul edi, edi, 0x657dbd
mov eax, 0x7a5789fb
imul edx
sar edx, 0x16
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebp, eax
mov eax, 0xc83bcf21
imul dword [0x45ebc4]
add edx, dword [0x45ebc4]
sar edx, 0x16
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, ebp
mov ebp, eax
mov eax, 0x312cd50d
imul dword [0x45ebd0]
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
add ebp, ebx
sub ebp, edi
mov edi, dword [0x45ebcc]
mov eax, 0xa16eca11
imul edi
add edx, edi
sar edx, 0x16
mov eax, edx
add ebp, edx
shr eax, 0x1f
add eax, ebp
mov ebp, dword [esp + 0x20]
mov dword [0x45ebe4], eax
jmp 0x40ffa0
mov edx, dword [0x45ebd0]
imul ebx, ebx, 0x74cc7d
lea eax, [edx + edi]
imul eax, eax, 0x533e66
mov dword [esp + 0x14], eax
mov esi, dword [0x45ebdc]
mov eax, 0x6cf6585f
imul edi
imul edi, edi, 0x657dbd
sar edx, 0x16
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
sub edx, eax
sub edx, ebx
mov dword [esp + 0x14], edx
mov eax, 0x886e3a8d
imul esi
add edx, esi
sar edx, 0x16
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x14]
sub edx, eax
mov dword [esp + 0x14], edx
mov eax, 0xa16eca11
imul ecx
mov eax, dword [esp + 0x14]
add edx, ecx
sar edx, 0x16
mov ecx, edx
add eax, edx
shr ecx, 0x1f
add ecx, eax
mov eax, dword [esp + 0x38]
lea edx, [esp + 0x18]
push edx
add ecx, edi
push eax
mov dword [0x45ebe8], ecx
call sub.KERNEL32.dll_Thread32Next
test eax, eax
je 0x40ff8e
mov ecx, dword [0x45ebdc]
mov edi, dword [0x45ebe4]
mov eax, 0x6cf6585f
imul ecx
sar edx, 0x16
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov eax, 0x8c4682e9
imul edi
mov esi, dword [0x45ebe0]
add edx, edi
sar edx, 0x16
add ecx, edx
mov eax, edx
mov edx, dword [0x45ebd8]
imul edx, edx, 0x74cc7d
shr eax, 0x1f
add eax, ecx
add eax, edx
mov ecx, eax
mov ebx, dword [0x45ebd0]
mov eax, 0xef8db9b
imul esi
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, 0xc4d1d103
imul ebx
add edx, ebx
mov eax, ecx
sar edx, 0x16
add eax, edx
mov ecx, edx
mov edx, esi
imul edx, edx, 0xe3db2
shr ecx, 0x1f
add ecx, eax
mov eax, dword [esp + 0x10]
sub ecx, edx
cmp dword [esp + 0x24], eax
mov dword [0x45ebc8], ecx
je 0x410037
mov edx, dword [esp + 0x38]
lea ecx, [esp + 0x18]
push ecx
push edx
call sub.KERNEL32.dll_Thread32Next
test eax, eax
jne 0x40fee1
mov esi, dword [0x45ebe0]
mov ecx, dword [0x45ebc8]
mov edi, dword [0x45ebcc]
mov ebx, dword [0x45ebe8]
imul edi, edi, 0x781723
mov eax, 0xc4d1d103
imul ebx, ebx, 0x74cc7d
imul dword [0x45ebe8]
add edx, dword [0x45ebe8]
sar edx, 0x16
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, ebx
mov ebx, eax
mov eax, 0x886e3a8d
imul esi
add edx, esi
sar edx, 0x16
mov esi, edx
add ebx, edx
mov eax, 0x76a21d75
imul dword [0x45ebc4]
shr esi, 0x1f
sar edx, 0x15
add esi, ebx
sub esi, edi
mov edi, edx
add esi, edx
mov eax, 0xa16eca11
imul ecx
add edx, ecx
imul ecx, ecx, 0x657dbd
sar edx, 0x16
shr edi, 0x1f
mov eax, edx
shr eax, 0x1f
add edi, esi
add eax, edx
sub edi, eax
add edi, ecx
mov ecx, dword [esp + 0x38]
push ecx
mov dword [0x45ebd8], edi
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 [0x45ebc4]
imul edi, edi, 0x88c9aa
mov eax, 0x7a5789fb
imul ebp, ebp, 0xff7a148d
imul dword [0x45ebe8]
sar edx, 0x16
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0xc83bcf21
imul ebx
add edx, ebx
mov ebx, dword [0x45ebd8]
sar edx, 0x16
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebp, eax
mov eax, 0x8c4682e9
imul ebx
add edx, ebx
sar edx, 0x16
add ebp, edx
mov eax, edx
mov edx, dword [0x45ebe8]
imul edx, edx, 0x450d9b
shr eax, 0x1f
add eax, ebp
mov ebp, dword [esp + 0x20]
add edi, esi
add edi, eax
lea eax, [edx + edi - 0x74cc7d]
mov dword [0x45ebd0], eax
jmp 0x40ff9a