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

Disassembly:
push 0xffffffffffffffff
push 0x10072564
mov eax, dword fs:[0]
push eax
sub esp, 0x38
mov eax, dword [0x1008c54c]
xor eax, esp
mov dword [esp + 0x34], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x1008c54c]
xor eax, esp
push eax
lea eax, [esp + 0x4c]
mov dword fs:[0], eax
test byte [0x10090898], 1
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], ecx
mov cl, 0x81
mov al, 0xa
mov byte [esp + 0x21], cl
mov byte [esp + 0x2a], al
mov byte [esp + 0x2c], cl
mov cl, 0x1c
mov byte [esp + 0x38], al
mov al, 0x3b
mov bl, 0xb
mov byte [esp + 0x20], 0x49
mov byte [esp + 0x22], 2
mov byte [esp + 0x23], 0x8b
mov byte [esp + 0x24], 0x65
mov byte [esp + 0x25], 0x4c
mov byte [esp + 0x26], 0x72
mov byte [esp + 0x27], 0x1f
mov byte [esp + 0x28], bl
mov byte [esp + 0x29], 6
mov byte [esp + 0x2b], 0xac
mov byte [esp + 0x2d], 0x7d
mov byte [esp + 0x2e], 0x84
mov byte [esp + 0x2f], 0xf7
mov byte [esp + 0x30], 0x3f
mov byte [esp + 0x34], cl
mov byte [esp + 0x35], 0xd3
mov byte [esp + 0x36], 0x4e
mov byte [esp + 0x37], 0xcf
mov byte [esp + 0x39], al
mov byte [esp + 0x3a], cl
mov byte [esp + 0x3b], 0x73
mov byte [esp + 0x3c], 0x64
mov byte [esp + 0x3d], 0x67
mov byte [esp + 0x3e], 0x6e
mov byte [esp + 0x3f], 0xf8
mov byte [esp + 0x40], 0xee
mov byte [esp + 0x41], al
mov byte [esp + 0x42], 0xed
mov byte [esp + 0x43], 0x9b
mov byte [esp + 0x44], 0x5a
jne 0x1003f62a
or dword [0x10090898], 1
lea edx, [esp + 0x34]
push edx
lea eax, [esp + 0x24]
push eax
mov edi, 0x10090894
mov dword [esp + 0x5c], 0
call fcn.100436f0
push 0x100780c0
call fcn.1005f1f6
add esp, 4
mov dword [esp + 0x54], 0xffffffff
mov eax, dword [0x10090894]
xor esi, esi
cmp byte [eax], 0
mov edi, eax
je 0x1003f63f
inc esi
cmp byte [esi + eax], 0
jne 0x1003f638
lea ecx, [esi + 2]
push ecx
call fcn.1004407f
add esp, 4
mov ebp, eax
mov dword [esp + 0x1c], ebp
test esi, esi
jle 0x1003f66b
mov ecx, edi
sub ecx, ebp
mov edi, esi
jmp 0x1003f660
mov dl, byte [ecx + eax]
mov byte [eax], dl
inc eax
sub edi, 1
jne 0x1003f660
mov byte [esi + ebp + 1], 0
mov byte [esi + ebp], 0x57
mov eax, 1
mov dword [esp + 0x54], eax
mov byte [esp + 0x34], 0xc9
mov byte [esp + 0x35], 0x6f
mov byte [esp + 0x36], 0xbe
mov byte [esp + 0x37], 0x66
mov byte [esp + 0x38], 0xb2
mov byte [esp + 0x39], 0x7b
mov byte [esp + 0x3a], 0x69
mov byte [esp + 0x3b], 0x9e
mov byte [esp + 0x3c], 0x51
mov byte [esp + 0x3d], 0x30
mov byte [esp + 0x20], 0xbc
mov byte [esp + 0x21], 0x1d
mov byte [esp + 0x22], 0xd2
mov byte [esp + 0x23], bl
mov byte [esp + 0x24], 0xdd
mov byte [esp + 0x25], 0x15
mov byte [esp + 0x26], 0x47
mov byte [esp + 0x27], 0xfa
mov byte [esp + 0x28], 0x3d
mov byte [esp + 0x29], 0x5c
test byte [0x100908a0], al
jne 0x1003f717
or dword [0x100908a0], eax
lea edi, [esp + 0x20]
lea ebx, [esp + 0x34]
mov esi, 0x1009089c
mov byte [esp + 0x54], 2
call fcn.10043660
push 0x100780b0
call fcn.1005f1f6
add esp, 4
mov byte [esp + 0x54], 1
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [0x1009089c]
push 0
push 0
push eax
push ecx
push 0
push ebp
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
call eax
push ebp
mov esi, eax
call fcn.1004408a
add esp, 4
mov eax, esi
mov ecx, dword [esp + 0x4c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x34]
xor ecx, esp
call fcn.1005f0c0
add esp, 0x44
ret