Function at 0x40ed60
Capabilities:
Enumerate threads

Disassembly:
mov eax, dword [0x45dbd4]
sub esp, 0x24
push ebx
push ebp
push esi
push edi
mov edi, dword [0x45dbd8]
cdq
mov ebx, eax
push 2
mov ebp, edx
mov eax, edi
cdq
push 0xbeb5aaf
push edx
push eax
call fcn.004305f0
mov esi, eax
mov eax, dword [0x45dbcc]
push 2
cdq
push 0xbeb5aaf
push edx
push eax
call fcn.004305f0
push 1
push 0xba7a7bcd
push ebp
push ebx
add esi, eax
call fcn.004305f0
push 2
push 0x1b912b5c
push ebp
push ebx
sub esi, eax
call fcn.004305f0
mov ebp, dword [0x45dbe0]
add esi, eax
mov eax, dword [0x45dbdc]
mov ecx, eax
imul ecx, ecx, 0x6d4760f7
mov edx, ebp
imul edx, edx, 0x264da184
add esi, ecx
mov ecx, dword [esp + 0x38]
add esi, edx
test ecx, ecx
mov dword [0x45dbc4], esi
jne 0x40eeab
push 1
cdq
push 0xc6fcd893
push edx
push eax
call fcn.004305f0
mov dword [esp + 0x14], eax
mov ecx, dword [0x45dbd0]
mov eax, 0x1f64bb9f
mul ebp
mov eax, dword [esp + 0x14]
shr edx, 0x1c
sub eax, edx
mov dword [esp + 0x14], eax
mov eax, 0x2d0ae8c5
mul ecx
mov eax, dword [esp + 0x14]
sub ecx, edx
mov ebx, dword [0x45dbe4]
shr ecx, 1
add ecx, edx
shr ecx, 0x1f
add eax, ecx
mov ecx, ebp
imul ecx, ecx, 0x3053d3f1
add eax, ecx
mov ecx, eax
mov eax, 0x45291d0f
imul ebx
sar edx, 0x1d
add ecx, edx
mov eax, edx
mov edx, edi
imul edx, edx, 0x7672ee00
shr eax, 0x1f
add eax, ecx
mov ecx, dword [esp + 0x3c]
add eax, edx
test ecx, ecx
mov dword [0x45dbc8], eax
je 0x40eeb6
lea edx, [ecx + 1]
mov dword [esp + 0x14], edx
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x40ee77
sub ecx, dword [esp + 0x14]
mov dword [esp + 0x14], ecx
je 0x40eeb6
mov eax, dword [esp + 0x3c]
push eax
call fcn.0040e3c0
mov esi, dword [0x45dbc4]
mov ebp, dword [0x45dbe0]
mov edi, dword [0x45dbd8]
add esp, 4
mov dword [esp + 0x38], eax
mov eax, dword [0x45dbc8]
mov ebx, dword [0x45dbe4]
push 2
cdq
push 0xbeb5aaf
push edx
push eax
call fcn.004305f0
mov dword [esp + 0x14], eax
push 2
mov eax, edi
cdq
push 0xbeb5aaf
push edx
push eax
call fcn.004305f0
mov ecx, dword [esp + 0x14]
sub ecx, eax
push 1
mov eax, ebp
cdq
push 0xba7a7bcd
push edx
push eax
mov dword [esp + 0x24], ecx
call fcn.004305f0
mov ecx, dword [esp + 0x14]
add ecx, eax
mov eax, 0x1f64bb9f
mul dword [0x45dbd0]
shr edx, 0x1c
sub ecx, edx
mov eax, 0x9a168f41
mul dword [0x45dbdc]
shr edx, 0x1f
add ecx, edx
mov edx, esi
imul edx, edx, 0x1531b042
sub ecx, edx
mov eax, 0x45291d0f
imul dword [0x45dbd4]
sar edx, 0x1d
mov eax, edx
shr eax, 0x1f
add ecx, edx
add eax, ecx
mov dword [0x45dbcc], eax
mov eax, dword [esp + 0x38]
test eax, eax
jne 0x40ef53
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x24
ret
mov edi, dword [0x45dbe8]
push 2
mov eax, edi
cdq
push 0xbeb5aaf
push edx
push eax
call fcn.004305f0
imul esi, esi, 0xf414a551
imul edi, edi, 0x1531b042
sub esi, eax
imul ebx, ebx, 0x7d86eec7
mov eax, 0x9a168f41
mul dword [0x45dbd0]
shr edx, 0x1f
sub esi, edx
mov eax, 0x45291d0f
imul dword [0x45dbd8]
mov eax, dword [esp + 0x38]
sar edx, 0x1d
mov ecx, edx
sub esi, edi
shr ecx, 0x1f
add esi, edx
add ecx, esi
sub ecx, ebx
lea edx, [ecx + ebp - 0x7672ee00]
push eax
mov dword [0x45dbd0], edx
call dword [sym.imp.KERNEL32.dll_GetProcessId]
push eax
push 4
mov dword [esp + 0x1c], eax
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
mov dword [esp + 0x38], eax
mov eax, dword [0x45dbdc]
cdq
push 1
push 0x388a7f11
mov edi, edx
mov esi, eax
push edi
push esi
call fcn.004305f0
push 2
push 0x1b912b5c
push edi
push esi
mov ebx, eax
call fcn.004305f0
mov esi, dword [0x45dbe8]
mov edi, dword [0x45dbc8]
sub eax, ebx
mov ebx, dword [0x45dbc4]
mov ecx, esi
imul ecx, ecx, 0x1b912b5c
add eax, ecx
mov ecx, dword [0x45dbe4]
mov edx, ebx
imul edx, edx, 0x4f22272
add edx, ecx
add edx, eax
xor eax, eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov ecx, edi
mov dword [esp + 0x20], eax
imul ecx, ecx, 0x264da184
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
lea edx, [ecx + edx + 0x7672ee00]
mov dword [esp + 0x30], eax
mov eax, dword [0x45dbe0]
push 1
mov dword [0x45dbd4], edx
cdq
push 0x388a7f11
push edx
push eax
call fcn.004305f0
mov dword [esp + 0x10], eax
push 2
mov eax, edi
cdq
push 0x1b912b5c
push edx
push eax
call fcn.004305f0
mov ecx, dword [esp + 0x10]
sub ecx, eax
push 1
mov eax, ebx
cdq
push 0xeace4fbe
push edx
push eax
mov dword [esp + 0x20], ecx
call fcn.004305f0
mov ecx, dword [esp + 0x10]
add ecx, eax
mov ebp, dword [0x45dbcc]
mov eax, 0x2d0ae8c5
mul esi
mov eax, esi
imul esi, esi, 0x7672ee00
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1f
add ecx, eax
mov edx, ebp
imul edx, edx, 0x388a7f11
mov eax, edi
imul eax, eax, 0x1b912b5c
sub ecx, edx
add ecx, eax
mov eax, dword [0x45dbd0]
push 2
cdq
push 0xbeb5aaf
push edx
sub ecx, esi
push eax
mov dword [0x45dbd8], ecx
mov dword [esp + 0x28], 0x1c
mov dword [esp + 0x20], 0
call fcn.004305f0
mov esi, eax
mov eax, dword [0x45dbe4]
push 2
cdq
push 0x1b912b5c
push edx
push eax
call fcn.004305f0
imul edi, edi, 0x3903276d
imul ebx, ebx, 0x7672ee00
add esi, eax
mov eax, 0x1f64bb9f
mul ebp
imul ebp, ebp, 0x74f4f79a
shr edx, 0x1c
sub esi, edx
mov edx, dword [esp + 0x38]
sub esi, edi
lea ecx, [esp + 0x18]
add esi, ebx
push ecx
add esi, ebp
push edx
mov dword [0x45dbdc], esi
call sub.KERNEL32.dll_Thread32First
test eax, eax
je 0x40f373
mov ebx, dword [0x45dbe8]
push 1
mov eax, ebx
cdq
push 0xba7a7bcd
push edx
push eax
call fcn.004305f0
mov ecx, dword [0x45dbd0]
mov edi, eax
mov eax, dword [0x45dbd4]
sub eax, ecx
mov esi, dword [0x45dbc8]
imul eax, eax, 0x2b57abfe
mov ebp, dword [0x45dbd8]
add edi, eax
mov eax, 0x9a168f41
mul ecx
mov eax, dword [0x45dbcc]
shr edx, 0x1f
imul eax, eax, 0x7672ee00
sub edi, edx
mov ecx, esi
imul ecx, ecx, 0x1531b042
mov edx, ebp
imul edx, edx, 0x3903276d
sub edi, ecx
mov ecx, dword [esp + 0x14]
sub edi, edx
sub edi, eax
cmp dword [esp + 0x24], ecx
mov dword [0x45dbe0], edi
jne 0x40f25b
mov eax, dword [0x45dbe4]
push 2
cdq
push 0xbeb5aaf
push edx
push eax
call fcn.004305f0
mov ebp, eax
mov eax, dword [0x45dbd0]
push 0xfffffffffffffffe
cdq
push 0x45858433
push edx
push eax
call fcn.004305f0
sub eax, ebp
mov ebp, eax
mov eax, dword [0x45dbcc]
push 2
cdq
push 0x1b912b5c
push edx
push eax
call fcn.004305f0
add ebp, eax
mov eax, 0x9a168f41
mul dword [0x45dbc4]
mov eax, dword [0x45dbd8]
imul eax, eax, 0x1b912b5c
shr edx, 0x1f
add ebp, edx
mov edx, dword [esp + 0x20]
sub ebp, eax
mov eax, dword [0x45dbd4]
imul eax, eax, 0x7114fe22
add ebp, eax
mov dword [0x45dbe4], ebp
mov dword [esp + 0x10], edx
jmp 0x40f385
mov eax, dword [0x45dbdc]
push 0xfffffffffffffffe
cdq
push 0xc77580ef
push edx
push eax
call fcn.004305f0
mov edi, eax
mov eax, dword [0x45dbd0]
add eax, ebp
imul eax, eax, 0x264da184
sub edi, eax
push 2
mov eax, esi
cdq
push 0x1b912b5c
push edx
push eax
call fcn.004305f0
add edi, eax
push 1
mov eax, ebp
cdq
push 0xc6fcd893
push edx
push eax
call fcn.004305f0
imul ebp, ebp, 0x1b912b5c
mov edx, dword [esp + 0x38]
sub edi, eax
mov eax, dword [0x45dbd4]
imul eax, eax, 0x7672ee00
lea ecx, [esp + 0x18]
add edi, ebp
push ecx
sub edi, eax
push edx
mov dword [0x45dbe8], edi
call sub.KERNEL32.dll_Thread32Next
test eax, eax
je 0x40f373
mov eax, dword [0x45dbdc]
push 1
cdq
push 0xc6fcd893
push edx
push eax
call fcn.004305f0
mov edi, dword [0x45dbe0]
mov ebp, dword [0x45dbd0]
mov ecx, eax
mov eax, 0x1f64bb9f
mul edi
shr edx, 0x1c
sub ecx, edx
mov eax, 0x2d0ae8c5
mul ebp
mov eax, ebp
sub eax, edx
shr eax, 1
add eax, edx
mov edx, edi
imul edx, edx, 0x3053d3f1
shr eax, 0x1f
add ecx, eax
add ecx, edx
mov eax, 0x45291d0f
imul dword [0x45dbe4]
mov eax, dword [0x45dbd8]
imul eax, eax, 0x7672ee00
sar edx, 0x1d
mov esi, edx
shr esi, 0x1f
add ecx, edx
add esi, ecx
mov ecx, dword [esp + 0x14]
add esi, eax
cmp dword [esp + 0x24], ecx
mov dword [0x45dbc8], esi
je 0x40f40f
mov eax, dword [esp + 0x38]
lea edx, [esp + 0x18]
push edx
push eax
call sub.KERNEL32.dll_Thread32Next
test eax, eax
jne 0x40f2d8
mov edi, dword [0x45dbe0]
mov esi, dword [0x45dbc8]
mov ebx, dword [0x45dbe8]
push 1
mov eax, edi
cdq
push 0x388a7f11
push edx
push eax
call fcn.004305f0
mov edi, eax
push 2
mov eax, esi
cdq
push 0x1b912b5c
push edx
push eax
call fcn.004305f0
sub edi, eax
mov eax, dword [0x45dbc4]
push 1
cdq
push 0xeace4fbe
push edx
push eax
call fcn.004305f0
imul esi, esi, 0x1b912b5c
add edi, eax
mov eax, 0x2d0ae8c5
mul ebx
mov ecx, dword [esp + 0x38]
mov eax, ebx
imul ebx, ebx, 0x7672ee00
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1f
add edi, eax
mov eax, dword [0x45dbcc]
imul eax, eax, 0x388a7f11
sub edi, eax
add edi, esi
sub edi, ebx
push ecx
mov dword [0x45dbd8], edi
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 ebx, dword [0x45dbe8]
push 2
mov eax, ebx
cdq
push 0xbeb5aaf
push edx
push eax
call fcn.004305f0
mov ecx, dword [0x45dbc4]
imul ecx, ecx, 0xf414a551
sub ecx, eax
mov eax, 0x9a168f41
mul ebp
shr edx, 0x1f
sub ecx, edx
mov edx, ebx
imul edx, edx, 0x1531b042
sub ecx, edx
mov eax, 0x45291d0f
imul dword [0x45dbd8]
mov eax, dword [0x45dbe4]
imul eax, eax, 0x7d86eec7
sar edx, 0x1d
mov ebp, edx
add ecx, edx
shr ebp, 0x1f
add ebp, ecx
mov ecx, dword [esp + 0x20]
sub ebp, eax
lea eax, [edi + ebp - 0x7672ee00]
mov dword [0x45dbd0], eax
mov dword [esp + 0x10], ecx
jmp 0x40f385