Function at 0x10006e60
Capabilities:
Access peb ldr_data
Contain obfuscated stackstrings
Get number of processors

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1001f03d
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x378
mov eax, dword [0x1002abc0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ecx, dword [0x1002d60c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov ecx, dword [0x1002d618]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
call edx
mov esi, eax
mov dword [ebp - 0x2f8], esi
test esi, esi
je 0x100077f6
mov ecx, esi
call fcn.10001c80
mov edx, dword [0x1002f0bc]
mov edi, 1
mov ecx, dword fs:[0x2c]
mov dword [ebp - 0x338], eax
mov dword [ebp - 0x320], edi
mov eax, dword [ecx + edx*4]
mov ecx, dword [0x1002d60c]
mov dword [ebp - 0x328], eax
mov eax, dword [ecx]
mov eax, dword [eax + 0x54]
call eax
cmp al, 1
jb 0x100077f6
nop
mov ecx, dword [0x1002d618]
push edi
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov edi, eax
mov dword [ebp - 0x33c], edi
test edi, edi
je 0x100077d1
cmp edi, esi
je 0x100077d1
mov eax, dword [ebp - 0x328]
mov ecx, dword [0x1002add4]
cmp ecx, dword [eax + 4]
jg 0x10007814
mov eax, dword [0x1002add0]
mov al, byte [eax + edi]
test al, al
jne 0x100077d1
mov dword [ebp - 0x2fc], edi
mov ecx, dword [ebp - 0x2fc]
mov eax, dword ds:[ecx + 8]
mov edx, dword ds:[eax + 0x20]
lea esi, ds:[ecx + 8]
mov ecx, esi
call edx
mov byte [ebp - 0x2ed], al
cmp byte [ebp - 0x2ed], 0
jne 0x100077cb
mov ecx, edi
call fcn.10001c80
movss xmm0, dword [0x1002c1ac]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
mov esi, eax
lahf
test ah, 0x44
jnp 0x10006fb6
cmp esi, dword [ebp - 0x338]
je 0x100077cb
mov eax, dword [edi]
mov ecx, edi
mov byte [ebp - 0x2ee], 0
mov eax, dword [eax + 0x24]
call eax
xorps xmm1, xmm1
movq xmm0, qword [eax]
movq qword [ebp - 0x334], xmm0
movss xmm0, dword [0x1002c2a8]
mov eax, dword [eax + 8]
ucomiss xmm0, xmm1
mov dword [ebp - 0x32c], eax
lahf
test ah, 0x44
jnp 0x10007093
movss xmm0, dword [ebp - 0x334]
lea eax, [ebp - 0x37c]
mov ecx, dword [ebp - 0x2f8]
addss xmm0, xmm1
push eax
movaps xmmword [ebp - 0x370], xmm0
movss xmm0, dword [ebp - 0x330]
addss xmm0, xmm1
movss dword [ebp - 0x2fc], xmm0
movss xmm0, dword [ebp - 0x32c]
addss xmm0, dword [0x10025450]
movss dword [ebp - 0x34c], xmm0
call fcn.100018f0
movss xmm0, dword [ebp - 0x2fc]
mov edx, eax
movaps xmm1, xmmword [ebp - 0x370]
mov eax, dword [ebp - 0x34c]
push 0x1002a020
push 0x4600400b
sub esp, 0xc
unpcklps xmm1, xmm0
movq xmm0, qword [edx]
mov ecx, esp
sub esp, 0xc
movq qword [ecx], xmm1
mov dword [ecx + 8], eax
mov ecx, esp
mov eax, dword [edx + 8]
movq qword [ecx], xmm0
mov dword [ecx + 8], eax
mov ecx, 0x1002a020
call fcn.10002540
jmp 0x10007099
mov al, byte [ebp - 0x2ee]
cmp esi, 2
jne 0x100070fd
test al, al
jne 0x100070c4
cvttss2si eax, dword [0x1002c280]
cvttss2si ecx, dword [0x1002c27c]
cvttss2si edx, dword [0x1002c278]
cvttss2si esi, dword [0x1002c274]
jmp 0x100070e4
cvttss2si eax, dword [0x1002c270]
cvttss2si ecx, dword [0x1002c26c]
cvttss2si edx, dword [0x1002c268]
cvttss2si esi, dword [0x1002c264]
mov dword [0x1002ae90], esi
mov dword [0x1002ae94], edx
mov dword [0x1002ae98], ecx
mov dword [0x1002a018], eax
jmp 0x1000715f
cmp esi, 3
jne 0x1000715f
test al, al
jne 0x10007128
cvttss2si esi, dword [0x1002c2a0]
cvttss2si edx, dword [0x1002c29c]
cvttss2si ecx, dword [0x1002c298]
cvttss2si eax, dword [0x1002c294]
jmp 0x10007148
cvttss2si esi, dword [0x1002c290]
cvttss2si edx, dword [0x1002c28c]
cvttss2si ecx, dword [0x1002c288]
cvttss2si eax, dword [0x1002c284]
mov dword [0x1002a018], esi
mov dword [0x1002ae98], edx
mov dword [0x1002ae94], ecx
mov dword [0x1002ae90], eax
mov ecx, dword [0x1002d60c]
lea edx, [ebp - 0x1a0]
push edx
push dword [ebp - 0x320]
mov eax, dword [ecx]
mov eax, dword [eax + 0x20]
call eax
test al, al
je 0x100077cb
push 0x1002afc8
lea eax, [ebp - 0x334]
mov ecx, 0x1002d608
push eax
call fcn.1000c500
test al, al
je 0x100077cb
push 0x1002afd4
push edi
call fcn.100066a0
movss xmm0, dword [ebp - 0x334]
lea eax, [ebp - 0x318]
add esp, 8
movss dword [ebp - 0x348], xmm0
movss xmm0, dword [ebp - 0x330]
mov ecx, 0x1002d608
movss dword [ebp - 0x344], xmm0
movss xmm0, dword [0x1002afd4]
push eax
lea eax, [ebp - 0x348]
movss dword [ebp - 0x340], xmm0
push eax
call fcn.1000c500
movss xmm0, dword [0x1002afcc]
xorps xmm1, xmm1
movss xmm3, dword [ebp - 0x314]
subss xmm0, xmm3
movaps xmm2, xmm0
movss dword [ebp - 0x304], xmm0
divss xmm2, dword [0x10025440]
movss xmm0, dword [0x1002c200]
ucomiss xmm0, xmm1
movss dword [ebp - 0x30c], xmm2
lahf
test ah, 0x44
jnp 0x10007662
movss xmm0, dword [ebp - 0x318]
mov eax, 0x55555556
subss xmm0, xmm2
push dword [0x1002a018]
push dword [0x1002ae98]
cvttss2si esi, xmm0
movaps xmm0, xmm2
addss xmm0, xmm2
mov dword [ebp - 0x31c], esi
push dword [0x1002ae94]
push dword [0x1002ae90]
cvttss2si ecx, xmm0
push 1
movaps xmm2, xmm0
imul ecx
movss dword [ebp - 0x30c], xmm2
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
mov ecx, 0x1002f060
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
mov dword [ebp - 0x2f4], eax
divsd xmm0, qword [0x10025430]
cvttss2si eax, xmm3
cvttsd2si edi, xmm0
push eax
push esi
mov dword [ebp - 0x300], edi
call fcn.10006360
push dword [0x1002a018]
cvttss2si eax, dword [ebp - 0x314]
mov ecx, 0x1002f060
push dword [0x1002ae98]
push dword [0x1002ae94]
push dword [0x1002ae90]
push edi
push 1
push eax
push esi
call fcn.10006360
push dword [0x1002a018]
movss xmm0, dword [ebp - 0x314]
mov ecx, 0x1002f060
subss xmm0, dword [0x100253cc]
mov eax, dword [ebp - 0x2f4]
push 0
push 0
push 0
push 1
push eax
cvttss2si eax, xmm0
push eax
push esi
call fcn.10006360
push dword [0x1002a018]
cvttss2si eax, dword [ebp - 0x314]
push 0
push 0
push 0
push edi
push 1
lea ecx, [esi - 1]
push eax
push ecx
mov ecx, 0x1002f060
call fcn.10006360
mov eax, dword [ebp - 0x2f4]
movss xmm1, dword [ebp - 0x30c]
movd xmm2, esi
cvtdq2ps xmm2, xmm2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x308], xmm2
subss xmm1, xmm0
movd xmm0, edi
cvtdq2ps xmm0, xmm0
addss xmm1, xmm2
cvttss2si esi, xmm1
movss xmm1, dword [ebp - 0x304]
push dword [0x1002a018]
subss xmm1, xmm0
mov ecx, 0x1002f060
push dword [0x1002ae98]
push dword [0x1002ae94]
push dword [0x1002ae90]
addss xmm1, dword [ebp - 0x314]
push 1
push eax
cvttss2si eax, dword [ebp - 0x314]
cvttss2si edi, xmm1
push eax
push esi
mov dword [ebp - 0x2fc], edi
call fcn.10006360
push dword [0x1002a018]
movss xmm0, dword [ebp - 0x308]
push dword [0x1002ae98]
addss xmm0, dword [ebp - 0x30c]
push dword [0x1002ae94]
cvttss2si eax, dword [ebp - 0x314]
push dword [0x1002ae90]
cvttss2si ecx, xmm0
push dword [ebp - 0x300]
mov dword [ebp - 0x324], ecx
push 1
push eax
push ecx
mov ecx, 0x1002f060
movss dword [ebp - 0x308], xmm0
call fcn.10006360
push dword [0x1002a018]
movss xmm0, dword [ebp - 0x314]
mov ecx, 0x1002f060
subss xmm0, dword [0x100253cc]
mov eax, dword [ebp - 0x2f4]
push 0
push 0
push 0
push 1
inc eax
push eax
cvttss2si eax, xmm0
push eax
push esi
call fcn.10006360
push dword [0x1002a018]
movss xmm0, dword [ebp - 0x308]
addss xmm0, dword [0x100253cc]
cvttss2si eax, dword [ebp - 0x314]
push 0
push 0
push 0
push dword [ebp - 0x300]
cvttss2si ecx, xmm0
push 1
push eax
mov dword [ebp - 0x308], ecx
push ecx
mov ecx, 0x1002f060
call fcn.10006360
push dword [0x1002a018]
movss xmm0, dword [ebp - 0x314]
push dword [0x1002ae98]
addss xmm0, dword [ebp - 0x304]
push dword [0x1002ae94]
mov ecx, dword [ebp - 0x31c]
push dword [0x1002ae90]
cvttss2si eax, xmm0
push 1
push dword [ebp - 0x2f4]
push eax
push ecx
mov ecx, 0x1002f060
call fcn.10006360
push dword [0x1002a018]
push dword [0x1002ae98]
push dword [0x1002ae94]
push dword [0x1002ae90]
push dword [ebp - 0x300]
push 1
push edi
mov edi, dword [ebp - 0x31c]
mov ecx, 0x1002f060
push edi
call fcn.10006360
movss xmm0, dword [ebp - 0x314]
mov ecx, 0x1002f060
addss xmm0, dword [ebp - 0x304]
push dword [0x1002a018]
push 0
push 0
addss xmm0, dword [0x100253cc]
push 0
push 1
push dword [ebp - 0x2f4]
cvttss2si eax, xmm0
push eax
push edi
call fcn.10006360
push dword [0x1002a018]
mov edi, dword [ebp - 0x300]
mov ecx, 0x1002f060
mov eax, dword [ebp - 0x31c]
inc edi
push 0
push 0
push 0
push edi
push 1
push dword [ebp - 0x2fc]
dec eax
push eax
call fcn.10006360
push dword [0x1002a018]
movss xmm0, dword [ebp - 0x314]
inc esi
push dword [0x1002ae98]
addss xmm0, dword [ebp - 0x304]
push dword [0x1002ae94]
mov ecx, 0x1002f060
push dword [0x1002ae90]
cvttss2si eax, xmm0
push 1
push dword [ebp - 0x2f4]
push eax
push esi
call fcn.10006360
push dword [0x1002a018]
mov ecx, 0x1002f060
push dword [0x1002ae98]
push dword [0x1002ae94]
push dword [0x1002ae90]
push dword [ebp - 0x300]
push 1
push dword [ebp - 0x2fc]
push dword [ebp - 0x324]
call fcn.10006360
movss xmm0, dword [ebp - 0x314]
mov ecx, 0x1002f060
addss xmm0, dword [ebp - 0x304]
push dword [0x1002a018]
push 0
push 0
addss xmm0, dword [0x100253cc]
push 0
push 1
push dword [ebp - 0x2f4]
cvttss2si eax, xmm0
push eax
push esi
call fcn.10006360
push dword [0x1002a018]
mov ecx, 0x1002f060
push 0
push 0
push 0
push edi
push 1
push dword [ebp - 0x2fc]
push dword [ebp - 0x308]
call fcn.10006360
movss xmm3, dword [ebp - 0x314]
xorps xmm1, xmm1
movss xmm0, dword [0x1002c120]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x100076d3
subss xmm3, dword [0x1002544c]
cvttss2si eax, dword [0x1002afc8]
mov ecx, 0x53
lea esi, [ebp - 0x1a0]
lea edi, [ebp - 0x2ec]
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x2ec]
push ecx
push dword [0x1002a018]
cvttss2si edx, xmm3
push dword [0x1002ae98]
push dword [0x1002ae94]
push dword [0x1002ae90]
push edx
push eax
push 1
push dword [0x1002f060]
push 0x1002f060
call fcn.10005fc0
add esp, 0x28
xorps xmm1, xmm1
movss xmm0, dword [0x1002c124]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x100077cb
movss xmm0, dword [0x1002afcc]
addss xmm0, dword [0x10025444]
movss xmm2, dword [ebp - 0x30c]
movss xmm1, dword [0x1002afc8]
mov ecx, dword [ebp - 0x328]
cvtps2pd xmm1, xmm1
cvttss2si edi, xmm0
cvtps2pd xmm0, xmm2
cvttss2si esi, xmm2
mulsd xmm0, qword [0x10025428]
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [ebp - 0x324], eax
mov eax, dword [0x1002adcc]
cmp eax, dword [ecx + 4]
jg 0x100078ce
mov eax, dword [0x1002adc8]
mov ecx, dword [ebp - 0x33c]
movd xmm2, esi
cvtdq2pd xmm2, xmm2
mov eax, dword [eax + ecx]
cmp eax, 0x64
mov ecx, 0x64
cmovg eax, ecx
mov ecx, 2
movaps xmm1, xmm2
mulsd xmm2, qword [0x10025458]
mulsd xmm1, qword [0x10025428]
movd xmm0, eax
mulsd xmm2, qword [0x10025418]
mulsd xmm1, qword [0x10025418]
cvtdq2pd xmm0, xmm0
mulsd xmm2, qword [0x10025438]
mulsd xmm1, xmm0
mulsd xmm2, qword [0x10025420]
mulsd xmm1, qword [0x10025420]
cvttsd2si eax, xmm1
push eax
cvttsd2si eax, xmm2
sub ecx, eax
push ecx
push edi
push dword [ebp - 0x324]
call fcn.10006c30
add esp, 0x10
mov esi, dword [ebp - 0x2f8]
mov ecx, dword [0x1002d60c]
mov edi, dword [ebp - 0x320]
inc edi
mov dword [ebp - 0x320], edi
mov eax, dword [ecx]
mov eax, dword [eax + 0x54]
call eax
movzx eax, al
cmp edi, eax
jle 0x10006f10
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.1001d9f0
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push 0x1002add4
call fcn.1001d98c
add esp, 4
cmp dword [0x1002add4], 0xffffffff
jne 0x10006f4e
mov dword [ebp - 4], 0
mov ecx, 0x8e
xor edx, edx
jmp 0x10007840
mov al, byte [edx + 0x100252a0]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x2c], al
and ecx, 0x800000ff
jns 0x1000785f
dec ecx
or ecx, 0xffffff00
inc ecx
jmp 0x1000785f
inc edx
cmp edx, 0xb
jl 0x10007840
mov byte [ebp - 0x21], 0
mov eax, 0x10025290
lea ecx, [ebp - 0x3c]
sub eax, 0x30274ad5
push eax
call fcn.10001340
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 2
push ecx
push eax
mov ecx, 0x1002ef38
call fcn.1001c560
xorps xmm0, xmm0
mov dword [0x1002add0], eax
push 0x1002add4
movq qword [ebp - 0x3c], xmm0
mov dword [ebp - 0x34], 0
mov word [ebp - 0x30], 0
movq qword [ebp - 0x2c], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 4], 0xffffffff
call fcn.1001d93b
add esp, 4
jmp 0x10006f4e
push 0x1002adcc
call fcn.1001d98c
add esp, 4
cmp dword [0x1002adcc], 0xffffffff
jne 0x10007743
mov dword [ebp - 4], 3
mov dword [ebp - 0x20], 0x48695f6d
mov dword [ebp - 0x1c], 0x746c6165
mov word [ebp - 0x18], 0x68
mov eax, 0x10025290
lea ecx, [ebp - 0x4c]
sub eax, 0x30274ad5
push eax
call fcn.10001340
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 5
push ecx
push eax
mov ecx, 0x1002ef38
call fcn.1001c560
xorps xmm0, xmm0
mov dword [0x1002adc8], eax
push 0x1002adcc
movq qword [ebp - 0x4c], xmm0
mov dword [ebp - 0x44], 0
mov word [ebp - 0x40], 0
movq qword [ebp - 0x20], xmm0
mov word [ebp - 0x18], 0
mov dword [ebp - 4], 0xffffffff
call fcn.1001d93b
add esp, 4
jmp 0x10007743