Function at 0x4587b0
Capabilities:
Link many functions at runtime

Disassembly:
mov eax, dword [0x63fb6c]
sub esp, 0x39c
test eax, eax
push esi
push edi
jne 0x4588e9
push str.KERNEL32.DLL
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov esi, eax
test esi, esi
je 0x458a4d
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.CreateToolhelp32Snapshot
push esi
call edi
push str.Module32First
push esi
mov dword [0x63fb6c], eax
call edi
push str.Module32Next
push esi
mov dword [0x63fb70], eax
call edi
push str.Process32First
push esi
mov dword [0x63fb74], eax
call edi
push str.Process32Next
push esi
mov dword [0x63fb78], eax
call edi
push str.Thread32First
push esi
mov dword [0x63fb7c], eax
call edi
push str.Thread32Next
push esi
mov dword [0x63fb80], eax
call edi
push str.Heap32ListFirst
push esi
mov dword [0x63fb84], eax
call edi
push str.Heap32ListNext
push esi
mov dword [0x63fb88], eax
call edi
push str.Heap32First
push esi
mov dword [0x63fb8c], eax
call edi
push str.Heap32Next
push esi
mov dword [0x63fb90], eax
call edi
mov ecx, dword [0x63fb70]
mov dword [0x63fb94], eax
test ecx, ecx
je 0x4588d6
mov ecx, dword [0x63fb74]
test ecx, ecx
je 0x4588d6
mov ecx, dword [0x63fb78]
test ecx, ecx
je 0x4588d6
mov ecx, dword [0x63fb7c]
test ecx, ecx
je 0x4588d6
mov ecx, dword [0x63fb80]
test ecx, ecx
je 0x4588d6
mov ecx, dword [0x63fb84]
test ecx, ecx
je 0x4588d6
mov ecx, dword [0x63fb88]
test ecx, ecx
je 0x4588d6
mov ecx, dword [0x63fb8c]
test ecx, ecx
je 0x4588d6
mov ecx, dword [0x63fb90]
test ecx, ecx
je 0x4588d6
test eax, eax
je 0x4588d6
mov eax, dword [0x63fb6c]
test eax, eax
jne 0x4588e9
pop edi
mov dword [0x63fb6c], 0
pop esi
add esp, 0x39c
ret
push 0
push 0xf
call eax
mov esi, eax
test esi, esi
je 0x458a4d
mov eax, dword [0x64e1a0]
lea edx, [esp + 8]
push edx
push esi
mov cl, byte [eax]
mov eax, dword [0x64e1a4]
and ecx, 0xf
mov dword [esp + 0x10], 0x10
add eax, ecx
mov dword [0x64e1a4], eax
call dword [0x63fb88]
test eax, eax
je 0x458985
mov edi, 0x24
lea eax, [esp + 8]
push 0x10
push eax
call fcn.00452440
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
add esp, 8
lea eax, [esp + 0x34]
mov dword [esp + 0x34], edi
push ecx
push edx
push eax
call dword [0x63fb90]
test eax, eax
je 0x458975
lea ecx, [esp + 0x34]
push edi
push ecx
call fcn.00452440
add esp, 8
lea edx, [esp + 0x34]
push edx
call dword [0x63fb94]
test eax, eax
jne 0x458958
lea eax, [esp + 8]
push eax
push esi
call dword [0x63fb8c]
test eax, eax
jne 0x45892c
lea ecx, [esp + 0x58]
mov dword [esp + 0x58], 0x128
push ecx
push esi
call dword [0x63fb78]
test eax, eax
je 0x4589bf
lea edx, [esp + 0x58]
push 0x128
push edx
call fcn.00452440
add esp, 8
lea eax, [esp + 0x58]
push eax
push esi
call dword [0x63fb7c]
test eax, eax
jne 0x45899d
lea ecx, [esp + 0x18]
mov dword [esp + 0x18], 0x1c
push ecx
push esi
call dword [0x63fb80]
test eax, eax
je 0x4589f6
lea edx, [esp + 0x18]
push 0x1c
push edx
call fcn.00452440
add esp, 8
lea eax, [esp + 0x18]
push eax
push esi
call dword [0x63fb84]
test eax, eax
jne 0x4589d7
lea ecx, [esp + 0x180]
mov dword [esp + 0x180], 0x224
push ecx
push esi
call dword [0x63fb70]
test eax, eax
je 0x458a3c
lea edx, [esp + 0x180]
push 0x224
push edx
call fcn.00452440
add esp, 8
lea eax, [esp + 0x180]
push eax
push esi
call dword [0x63fb74]
test eax, eax
jne 0x458a14
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [0x64e1ac], 0
pop edi
pop esi
add esp, 0x39c
ret