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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1001dab8
mov eax, dword fs:[0]
push eax
sub esp, 0x3a0
mov eax, dword [0x10029bc0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ecx, dword [0x1002bedc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov ecx, dword [0x1002bee8]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
call edx
mov edi, eax
mov dword [ebp - 0x35c], edi
test edi, edi
je 0x10007856
mov ecx, edi
call fcn.10001c80
mov esi, dword [0x1002d970]
mov ebx, 1
mov ecx, dword [0x1002bedc]
mov dword [ebp - 0x36c], eax
mov eax, dword fs:[0x2c]
mov dword [ebp - 0x354], ebx
mov esi, dword [eax + esi*4]
mov eax, dword [ecx]
mov dword [ebp - 0x32c], esi
mov eax, dword [eax + 0x54]
call eax
cmp al, bl
jb 0x10007856
nop dword [eax + eax]
mov ecx, dword [0x1002bee8]
push ebx
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov ebx, eax
mov dword [ebp - 0x358], ebx
test ebx, ebx
je 0x10007831
cmp ebx, edi
je 0x10007831
mov ecx, dword [0x10029dd4]
cmp ecx, dword [esi + 4]
jg 0x10007872
mov eax, dword [0x10029dd0]
cmp byte [eax + ebx], 0
jne 0x10007831
mov dword [ebp - 0x33c], ebx
mov ecx, dword [ebp - 0x33c]
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 - 0x325], al
cmp byte [ebp - 0x325], 0
jne 0x1000782b
mov ecx, ebx
call fcn.10001c80
movss xmm0, dword [0x1002aa7c]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
mov esi, eax
lahf
test ah, 0x44
jnp 0x10006f8f
cmp esi, dword [ebp - 0x36c]
je 0x1000782b
mov eax, dword [ebx]
mov ecx, ebx
mov byte [ebp - 0x326], 0
mov eax, dword [eax + 0x24]
call eax
xorps xmm1, xmm1
movq xmm0, qword [eax]
movq qword [ebp - 0x368], xmm0
movss xmm0, dword [0x1002ab78]
mov eax, dword [eax + 8]
ucomiss xmm0, xmm1
mov dword [ebp - 0x360], eax
lahf
test ah, 0x44
jnp 0x10007102
movss xmm0, dword [ebp - 0x368]
mov ecx, dword fs:[0x2c]
addss xmm0, xmm1
mov eax, dword [0x1002d970]
mov eax, dword [ecx + eax*4]
movss dword [ebp - 0x394], xmm0
movss xmm0, dword [ebp - 0x364]
addss xmm0, xmm1
mov dword [ebp - 0x324], eax
mov ecx, eax
mov eax, dword [0x10029dec]
movss dword [ebp - 0x390], xmm0
movss xmm0, dword [ebp - 0x360]
addss xmm0, dword [0x10024450]
movss dword [ebp - 0x38c], xmm0
cmp eax, dword [ecx + 4]
jg 0x1000792e
jmp 0x1000703c
mov ecx, dword [ebp - 0x324]
mov eax, dword [0x10029de8]
movq xmm0, qword [eax + edi]
mov eax, dword [eax + edi + 8]
mov dword [ebp - 0x380], eax
mov eax, dword [0x10029de4]
movq qword [ebp - 0x388], xmm0
cmp eax, dword [ecx + 4]
jg 0x100079e8
mov eax, dword [0x10029de0]
push 0x10029020
push 0x4600400b
sub esp, 0xc
movq xmm0, qword [eax + edi]
mov ecx, esp
mov eax, dword [eax + edi + 8]
sub esp, 0xc
movq qword [ebp - 0x37c], xmm0
movss xmm2, dword [ebp - 0x37c]
movss xmm1, dword [ebp - 0x378]
addss xmm2, dword [ebp - 0x388]
addss xmm1, dword [ebp - 0x384]
mov dword [ebp - 0x374], eax
movss xmm0, dword [ebp - 0x374]
addss xmm0, dword [ebp - 0x380]
mov eax, dword [ebp - 0x38c]
unpcklps xmm2, xmm1
movss dword [ebp - 0x3a4], xmm0
movq xmm0, qword [ebp - 0x394]
movq qword [ecx], xmm0
mov dword [ecx + 8], eax
mov ecx, esp
mov eax, dword [ebp - 0x3a4]
movq qword [ecx], xmm2
mov dword [ecx + 8], eax
mov ecx, 0x10029020
call fcn.10002540
jmp 0x10007108
mov al, byte [ebp - 0x326]
cmp esi, 2
jne 0x1000716c
test al, al
jne 0x10007133
cvttss2si eax, dword [0x1002ab50]
cvttss2si ecx, dword [0x1002ab4c]
cvttss2si edx, dword [0x1002ab48]
cvttss2si esi, dword [0x1002ab44]
jmp 0x10007153
cvttss2si eax, dword [0x1002ab40]
cvttss2si ecx, dword [0x1002ab3c]
cvttss2si edx, dword [0x1002ab38]
cvttss2si esi, dword [0x1002ab34]
mov dword [0x10029e90], esi
mov dword [0x10029e94], edx
mov dword [0x10029e98], ecx
mov dword [0x10029018], eax
jmp 0x100071ce
cmp esi, 3
jne 0x100071ce
test al, al
jne 0x10007197
cvttss2si esi, dword [0x1002ab70]
cvttss2si edx, dword [0x1002ab6c]
cvttss2si ecx, dword [0x1002ab68]
cvttss2si eax, dword [0x1002ab64]
jmp 0x100071b7
cvttss2si esi, dword [0x1002ab60]
cvttss2si edx, dword [0x1002ab5c]
cvttss2si ecx, dword [0x1002ab58]
cvttss2si eax, dword [0x1002ab54]
mov dword [0x10029018], esi
mov dword [0x10029e98], edx
mov dword [0x10029e94], ecx
mov dword [0x10029e90], eax
mov ecx, dword [0x1002bedc]
lea edx, [ebp - 0x1d4]
push edx
push dword [ebp - 0x354]
mov eax, dword [ecx]
mov eax, dword [eax + 0x20]
call eax
test al, al
je 0x1000782b
push 0x10029fc8
lea eax, [ebp - 0x368]
mov ecx, 0x1002bed8
push eax
call fcn.1000bb70
test al, al
je 0x1000782b
push 0x10029fd4
push ebx
call fcn.10006690
movss xmm0, dword [ebp - 0x368]
lea eax, [ebp - 0x348]
add esp, 8
movss dword [ebp - 0x3a0], xmm0
movss xmm0, dword [ebp - 0x364]
mov ecx, 0x1002bed8
movss dword [ebp - 0x39c], xmm0
movss xmm0, dword [0x10029fd4]
push eax
lea eax, [ebp - 0x3a0]
movss dword [ebp - 0x398], xmm0
push eax
call fcn.1000bb70
movss xmm0, dword [0x10029fcc]
xorps xmm1, xmm1
movss xmm3, dword [ebp - 0x344]
subss xmm0, xmm3
movaps xmm2, xmm0
movss dword [ebp - 0x338], xmm0
divss xmm2, dword [0x10024440]
movss xmm0, dword [0x1002aad0]
ucomiss xmm0, xmm1
movss dword [ebp - 0x324], xmm2
lahf
test ah, 0x44
jnp 0x100076c2
movss xmm0, dword [ebp - 0x348]
mov eax, 0x55555556
subss xmm0, xmm2
push dword [0x10029018]
push dword [0x10029e98]
cvttss2si ebx, xmm0
movaps xmm0, xmm2
addss xmm0, xmm2
mov dword [ebp - 0x350], ebx
push dword [0x10029e94]
push dword [0x10029e90]
cvttss2si ecx, xmm0
push 1
movaps xmm2, xmm0
imul ecx
cvttss2si eax, xmm3
mov esi, edx
shr esi, 0x1f
movd xmm0, ecx
add esi, edx
mov ecx, 0x1002d930
movss dword [ebp - 0x324], xmm2
cvtdq2pd xmm0, xmm0
push esi
push eax
push ebx
mov dword [ebp - 0x334], esi
divsd xmm0, qword [0x10024430]
cvttsd2si edi, xmm0
mov dword [ebp - 0x330], edi
call fcn.10006350
push dword [0x10029018]
cvttss2si eax, dword [ebp - 0x344]
mov ecx, 0x1002d930
push dword [0x10029e98]
push dword [0x10029e94]
push dword [0x10029e90]
push edi
push 1
push eax
push ebx
call fcn.10006350
push dword [0x10029018]
movss xmm0, dword [ebp - 0x344]
mov ecx, 0x1002d930
subss xmm0, dword [0x100243cc]
push 0
push 0
push 0
push 1
cvttss2si eax, xmm0
push esi
push eax
push ebx
call fcn.10006350
push dword [0x10029018]
cvttss2si eax, dword [ebp - 0x344]
push 0
push 0
push 0
push edi
push 1
lea ecx, [ebx - 1]
push eax
push ecx
mov ecx, 0x1002d930
call fcn.10006350
movss xmm1, dword [ebp - 0x324]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
movd xmm2, ebx
subss xmm1, xmm0
movd xmm0, edi
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm0, xmm0
addss xmm1, xmm2
movss dword [ebp - 0x34c], xmm2
cvttss2si esi, xmm1
movss xmm1, dword [ebp - 0x338]
subss xmm1, xmm0
addss xmm1, dword [ebp - 0x344]
push dword [0x10029018]
cvttss2si eax, dword [ebp - 0x344]
mov ebx, dword [ebp - 0x334]
mov ecx, 0x1002d930
push dword [0x10029e98]
cvttss2si edi, xmm1
push dword [0x10029e94]
mov dword [ebp - 0x33c], edi
push dword [0x10029e90]
push 1
push ebx
push eax
push esi
call fcn.10006350
push dword [0x10029018]
movss xmm0, dword [ebp - 0x34c]
push dword [0x10029e98]
addss xmm0, dword [ebp - 0x324]
push dword [0x10029e94]
cvttss2si eax, dword [ebp - 0x344]
push dword [0x10029e90]
cvttss2si ecx, xmm0
push dword [ebp - 0x330]
mov dword [ebp - 0x370], ecx
push 1
push eax
push ecx
mov ecx, 0x1002d930
movss dword [ebp - 0x34c], xmm0
call fcn.10006350
push dword [0x10029018]
movss xmm0, dword [ebp - 0x344]
lea eax, [ebx + 1]
subss xmm0, dword [0x100243cc]
push 0
push 0
push 0
push 1
push eax
cvttss2si eax, xmm0
mov ecx, 0x1002d930
push eax
push esi
call fcn.10006350
push dword [0x10029018]
movss xmm0, dword [ebp - 0x34c]
mov ecx, 0x1002d930
addss xmm0, dword [0x100243cc]
cvttss2si eax, dword [ebp - 0x344]
push 0
push 0
push 0
push dword [ebp - 0x330]
cvttss2si ebx, xmm0
push 1
push eax
push ebx
call fcn.10006350
push dword [0x10029018]
movss xmm0, dword [ebp - 0x344]
push dword [0x10029e98]
addss xmm0, dword [ebp - 0x338]
push dword [0x10029e94]
mov ecx, dword [ebp - 0x350]
push dword [0x10029e90]
cvttss2si eax, xmm0
push 1
push dword [ebp - 0x334]
push eax
push ecx
mov ecx, 0x1002d930
call fcn.10006350
push dword [0x10029018]
push dword [0x10029e98]
push dword [0x10029e94]
push dword [0x10029e90]
push dword [ebp - 0x330]
push 1
push edi
mov edi, dword [ebp - 0x350]
push edi
mov ecx, 0x1002d930
call fcn.10006350
movss xmm0, dword [ebp - 0x344]
mov ecx, 0x1002d930
addss xmm0, dword [ebp - 0x338]
push dword [0x10029018]
push 0
push 0
addss xmm0, dword [0x100243cc]
push 0
push 1
push dword [ebp - 0x334]
cvttss2si eax, xmm0
push eax
push edi
call fcn.10006350
push dword [0x10029018]
mov edi, dword [ebp - 0x330]
mov ecx, 0x1002d930
mov eax, dword [ebp - 0x350]
inc edi
push 0
push 0
push 0
push edi
push 1
push dword [ebp - 0x33c]
dec eax
push eax
call fcn.10006350
push dword [0x10029018]
movss xmm0, dword [ebp - 0x344]
inc esi
push dword [0x10029e98]
addss xmm0, dword [ebp - 0x338]
push dword [0x10029e94]
mov ecx, 0x1002d930
push dword [0x10029e90]
cvttss2si eax, xmm0
push 1
push dword [ebp - 0x334]
push eax
push esi
call fcn.10006350
push dword [0x10029018]
mov ecx, 0x1002d930
push dword [0x10029e98]
push dword [0x10029e94]
push dword [0x10029e90]
push dword [ebp - 0x330]
push 1
push dword [ebp - 0x33c]
push dword [ebp - 0x370]
call fcn.10006350
movss xmm0, dword [ebp - 0x344]
mov ecx, 0x1002d930
addss xmm0, dword [ebp - 0x338]
push dword [0x10029018]
push 0
push 0
addss xmm0, dword [0x100243cc]
push 0
push 1
push dword [ebp - 0x334]
cvttss2si eax, xmm0
push eax
push esi
call fcn.10006350
push dword [0x10029018]
mov ecx, 0x1002d930
push 0
push 0
push 0
push edi
push 1
push dword [ebp - 0x33c]
push ebx
call fcn.10006350
movss xmm3, dword [ebp - 0x344]
xorps xmm1, xmm1
mov ebx, dword [ebp - 0x358]
movss xmm0, dword [0x1002a9f0]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x10007733
subss xmm3, dword [0x1002444c]
cvttss2si eax, dword [0x10029fc8]
mov ecx, 0x53
lea esi, [ebp - 0x1d4]
lea edi, [ebp - 0x320]
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x320]
push ecx
push dword [0x10029018]
cvttss2si edx, xmm3
push dword [0x10029e98]
push dword [0x10029e94]
push dword [0x10029e90]
push edx
push eax
push 1
push dword [0x1002d930]
push 0x1002d930
call fcn.10005fb0
add esp, 0x28
xorps xmm1, xmm1
movss xmm0, dword [0x1002a9f4]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x10007825
movss xmm0, dword [0x10029fcc]
addss xmm0, dword [0x10024444]
movss xmm2, dword [ebp - 0x324]
movss xmm1, dword [0x10029fc8]
mov ecx, dword [ebp - 0x32c]
cvtps2pd xmm1, xmm1
cvttss2si edi, xmm0
cvtps2pd xmm0, xmm2
cvttss2si esi, xmm2
mulsd xmm0, qword [0x10024428]
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [ebp - 0x358], eax
mov eax, dword [0x10029dcc]
cmp eax, dword [ecx + 4]
jg 0x10007aa0
mov eax, dword [0x10029dc8]
mov ecx, 0x64
movd xmm2, esi
cvtdq2pd xmm2, xmm2
mov eax, dword [eax + ebx]
cmp eax, 0x64
cmovg eax, ecx
mov ecx, 2
movaps xmm1, xmm2
mulsd xmm2, qword [0x10024458]
mulsd xmm1, qword [0x10024428]
movd xmm0, eax
mulsd xmm2, qword [0x10024418]
mulsd xmm1, qword [0x10024418]
cvtdq2pd xmm0, xmm0
mulsd xmm2, qword [0x10024438]
mulsd xmm1, xmm0
mulsd xmm2, qword [0x10024420]
mulsd xmm1, qword [0x10024420]
cvttsd2si eax, xmm1
push eax
cvttsd2si eax, xmm2
sub ecx, eax
push ecx
push edi
push dword [ebp - 0x358]
call fcn.10006c20
add esp, 0x10
mov edi, dword [ebp - 0x35c]
mov esi, dword [ebp - 0x32c]
mov ecx, dword [0x1002bedc]
mov ebx, dword [ebp - 0x354]
inc ebx
mov dword [ebp - 0x354], ebx
mov eax, dword [ecx]
mov eax, dword [eax + 0x54]
call eax
movzx eax, al
cmp ebx, eax
jle 0x10006ef0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1001c2d0
mov esp, ebp
pop ebp
ret
push 0x10029dd4
call fcn.1001c26c
add esp, 4
cmp dword [0x10029dd4], 0xffffffff
jne 0x10006f28
mov dword [ebp - 4], 0
mov ecx, 0x8e
xor edx, edx
jmp 0x100078a0
mov al, byte [edx + 0x100242a0]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x28], al
and ecx, 0x800000ff
jns 0x100078bf
dec ecx
or ecx, 0xffffff00
inc ecx
jmp 0x100078bf
inc edx
cmp edx, 0xb
jl 0x100078a0
mov byte [ebp - 0x1d], 0
mov eax, 0x10024290
lea ecx, [ebp - 0x44]
sub eax, 0x30274ad5
push eax
call fcn.10001340
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 2
push ecx
push eax
mov ecx, 0x1002d808
call fcn.1001bb00
xorps xmm0, xmm0
mov dword [0x10029dd0], eax
push 0x10029dd4
movq qword [ebp - 0x44], xmm0
mov dword [ebp - 0x3c], 0
mov word [ebp - 0x38], 0
movq qword [ebp - 0x28], xmm0
mov dword [ebp - 0x20], 0
mov dword [ebp - 4], 0xffffffff
call fcn.1001c21b
add esp, 4
jmp 0x10006f28
push 0x10029dec
call fcn.1001c26c
add esp, 4
cmp dword [0x10029dec], 0xffffffff
jne 0x10007036
mov dword [ebp - 4], 3
mov ecx, pe_nt_image_headers32
xor edx, edx
jmp 0x10007960
mov al, byte [edx + 0x100242c4]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x88], al
and ecx, 0x800000ff
jns 0x10007982
dec ecx
or ecx, 0xffffff00
inc ecx
jmp 0x10007982
inc edx
cmp edx, 0x12
jl 0x10007960
mov byte [ebp - 0x76], 0
mov eax, 0x10024290
lea ecx, [ebp - 0x54]
sub eax, 0x30274ad5
push eax
call fcn.10001340
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 5
push ecx
push eax
mov ecx, 0x1002d808
call fcn.1001bb00
xorps xmm0, xmm0
mov dword [0x10029de8], eax
push 0x10029dec
movq qword [ebp - 0x54], xmm0
mov dword [ebp - 0x4c], 0
mov word [ebp - 0x48], 0
mov dword [ebp - 4], 0xffffffff
call fcn.1001c21b
add esp, 4
jmp 0x10007036
push 0x10029de4
call fcn.1001c26c
add esp, 4
cmp dword [0x10029de4], 0xffffffff
jne 0x10007069
mov dword [ebp - 4], 6
mov ecx, 0x1d
xor edx, edx
jmp 0x10007a12
mov al, byte [edx + str.pAiEBmQMBOI]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x34], al
and ecx, 0x800000ff
jns 0x10007a31
dec ecx
or ecx, 0xffffff00
inc ecx
jmp 0x10007a31
inc edx
cmp edx, 0xb
jl 0x10007a12
mov byte [ebp - 0x29], 0
mov eax, 0x10024290
lea ecx, [ebp - 0x64]
sub eax, 0x30274ad5
push eax
call fcn.10001340
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 8
push ecx
push eax
mov ecx, 0x1002d808
call fcn.1001bb00
xorps xmm0, xmm0
mov dword [0x10029de0], eax
push 0x10029de4
movq qword [ebp - 0x64], xmm0
mov dword [ebp - 0x5c], 0
mov word [ebp - 0x58], 0
movq qword [ebp - 0x34], xmm0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 4], 0xffffffff
call fcn.1001c21b
add esp, 4
jmp 0x10007069
push 0x10029dcc
call fcn.1001c26c
add esp, 4
cmp dword [0x10029dcc], 0xffffffff
jne 0x100077a3
mov dword [ebp - 4], 9
mov dword [ebp - 0x1c], 0x48695f6d
mov dword [ebp - 0x18], 0x746c6165
mov word [ebp - 0x14], 0x68
mov eax, 0x10024290
lea ecx, [ebp - 0x74]
sub eax, 0x30274ad5
push eax
call fcn.10001340
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0xb
push ecx
push eax
mov ecx, 0x1002d808
call fcn.1001bb00
xorps xmm0, xmm0
mov dword [0x10029dc8], eax
push 0x10029dcc
movq qword [ebp - 0x74], xmm0
mov dword [ebp - 0x6c], 0
mov word [ebp - 0x68], 0
movq qword [ebp - 0x1c], xmm0
mov word [ebp - 0x14], 0
mov dword [ebp - 4], 0xffffffff
call fcn.1001c21b
add esp, 4
jmp 0x100077a3