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

Disassembly:
push 0xffffffffffffffff
push 0x1015b548
mov eax, dword fs:[0]
push eax
sub esp, 0x464
mov eax, dword [0x101ad3b4]
xor eax, esp
mov dword [esp + 0x460], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x101ad3b4]
xor eax, esp
push eax
lea eax, [esp + 0x478]
mov dword fs:[0], eax
mov ebx, dword [esp + 0x488]
mov esi, dword [esp + 0x490]
lea ecx, [esp + 0x1c]
mov dword [esp + 0x34], ebx
mov dword [esp + 0x30], 0
call fcn.100e7e56
mov dword [esp + 0x480], 1
mov ebp, dword [esp + 0x494]
lea eax, [esp + 0x1c]
push eax
push ebp
push esi
call fcn.10055530
add esp, 0xc
lea ecx, [esp + 0x3c]
call fcn.100e7e56
mov byte [esp + 0x480], 2
mov edi, dword [esp + 0x24]
xor esi, esi
test edi, edi
jle 0x10078ac7
mov bl, 0x25
push 0x3ff
lea ecx, [esp + 0x79]
push 0
push ecx
mov byte [esp + 0x80], 0
call fcn.100f6b80
add esp, 0xc
test ebp, ebp
mov byte [esp + 0x50], bl
mov byte [esp + 0x51], 0x64
mov byte [esp + 0x52], 0x2c
mov byte [esp + 0x53], bl
mov byte [esp + 0x54], 0x64
mov byte [esp + 0x55], 0x2c
mov byte [esp + 0x56], bl
mov byte [esp + 0x57], 0x64
mov byte [esp + 0x58], 0
mov byte [esp + 0x68], bl
mov byte [esp + 0x69], 0x5b
mov byte [esp + 0x6a], 0x5e
mov byte [esp + 0x6b], 0x24
mov byte [esp + 0x6c], 0x5d
mov byte [esp + 0x6d], 0x24
mov byte [esp + 0x6e], bl
mov byte [esp + 0x6f], 0x64
mov byte [esp + 0x70], 0x24
mov byte [esp + 0x71], bl
mov byte [esp + 0x72], 0x64
mov byte [esp + 0x73], 0
mov byte [esp + 0x5c], bl
mov byte [esp + 0x5d], 0x5b
mov byte [esp + 0x5e], 0x5e
mov byte [esp + 0x5f], 0x2c
mov byte [esp + 0x60], 0x5d
mov byte [esp + 0x61], 0x2c
mov byte [esp + 0x62], bl
mov byte [esp + 0x63], 0x64
mov byte [esp + 0x64], 0x2c
mov byte [esp + 0x65], bl
mov byte [esp + 0x66], 0x64
mov byte [esp + 0x67], 0
je 0x10078a2a
cmp ebp, 1
je 0x10078a2a
cmp ebp, 2
jne 0x10078a01
test esi, esi
jl 0x10078b2a
cmp esi, edi
jge 0x10078b2a
mov edx, dword [esp + 0x20]
mov eax, dword [edx + esi*4]
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x1c]
push edx
lea ecx, [esp + 0x7c]
lea edx, [esp + 0x70]
jmp 0x10078a53
cmp ebp, 3
jne 0x10078a62
test esi, esi
jl 0x10078b2a
cmp esi, edi
jge 0x10078b2a
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x1c]
push edx
lea ecx, [esp + 0x7c]
lea edx, [esp + 0x64]
jmp 0x10078a4c
test esi, esi
jl 0x10078b2a
cmp esi, edi
jge 0x10078b2a
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x1c]
push edx
lea ecx, [esp + 0x40]
lea edx, [esp + 0x58]
mov eax, dword [esp + 0x28]
mov eax, dword [eax + esi*4]
push ecx
push edx
push eax
call fcn.100f86bd
mov edi, dword [esp + 0x38]
add esp, 0x14
mov eax, dword [esp + 0x18]
cmp eax, dword [esp + 0x498]
jl 0x10078a8e
cmp eax, dword [esp + 0x4a0]
jge 0x10078a8e
mov eax, dword [esp + 0x14]
cmp eax, dword [esp + 0x49c]
jl 0x10078a8e
cmp eax, dword [esp + 0x4a4]
jl 0x10078ab8
test esi, esi
jl 0x10078b2a
cmp esi, edi
jge 0x10078b2a
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x44]
lea eax, [eax + esi*4]
push eax
push ecx
lea ecx, [esp + 0x44]
call fcn.100e82b5
mov edi, dword [esp + 0x24]
add esi, 1
cmp esi, edi
jl 0x10078910
mov ebx, dword [esp + 0x34]
push ebp
lea edx, [esp + 0x40]
push edx
push ebx
call fcn.10078540
add esp, 0xc
mov dword [esp + 0x30], 1
mov byte [esp + 0x480], 1
lea ecx, [esp + 0x3c]
call fcn.100e819e
mov byte [esp + 0x480], 0
lea ecx, [esp + 0x1c]
call fcn.100e819e
mov eax, ebx
mov ecx, dword [esp + 0x478]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x460]
xor ecx, esp
call fcn.100f611a
add esp, 0x470
ret
jmp fcn.100e4be9