Function at 0x66d6e0
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1c
push ebx
mov ebx, dword [ebp + 0xc]
movzx eax, word [ebx + 6]
prefetcht2 byte [ebx]
prefetcht2 byte [ebx + 0x80]
prefetcht2 byte [ebx + 0x100]
prefetcht2 byte [ebx + 0x180]
prefetcht2 byte [ebx + 0x200]
and eax, 0x3ff
imul eax, eax, 0x17
lea ecx, [eax + ecx + 0x1c]
mov al, byte [ecx + 2]
cmp al, 0xff
push esi
push edi
mov dword [esp + 0x10], ecx
je 0x66d742
mov edi, dword [ebp + 8]
movzx edx, al
shl edx, 4
mov esi, dword [edx + ebx + 0xc]
add edi, 4
call fcn.004022b0
mov ecx, dword [esp + 0x10]
mov al, byte [ecx + 1]
cmp al, 0xff
xorps xmm0, xmm0
je 0x66d785
mov edi, dword [ebp + 8]
movzx eax, al
shl eax, 4
mov ecx, dword [eax + ebx + 0xc]
movss xmm1, dword [ecx]
lea esi, [esp + 0x18]
movss dword [esp + 0x18], xmm1
movss dword [esp + 0x1c], xmm0
movss dword [esp + 0x20], xmm0
movss dword [esp + 0x24], xmm0
call fcn.004022b0
xorps xmm0, xmm0
mov ecx, dword [esp + 0x10]
mov al, byte [ecx + 3]
cmp al, 0xff
je 0x66d7c8
mov edi, dword [ebp + 8]
movzx edx, al
shl edx, 4
mov eax, dword [edx + ebx + 0xc]
movss xmm1, dword [eax]
add edi, 8
lea esi, [esp + 0x18]
movss dword [esp + 0x18], xmm1
movss dword [esp + 0x1c], xmm0
movss dword [esp + 0x20], xmm0
movss dword [esp + 0x24], xmm0
call fcn.004022b0
xorps xmm0, xmm0
mov ecx, dword [esp + 0x10]
mov al, byte [ecx + 4]
cmp al, 0xff
je 0x66d80b
mov edi, dword [ebp + 8]
movzx ecx, al
shl ecx, 4
mov edx, dword [ecx + ebx + 0xc]
movss xmm1, dword [edx]
add edi, 0xc
lea esi, [esp + 0x18]
movss dword [esp + 0x18], xmm1
movss dword [esp + 0x1c], xmm0
movss dword [esp + 0x20], xmm0
movss dword [esp + 0x24], xmm0
call fcn.004022b0
xorps xmm0, xmm0
mov ecx, dword [esp + 0x10]
mov al, byte [ecx + 7]
cmp al, 0xff
je 0x66d84e
mov edi, dword [ebp + 8]
movzx eax, al
shl eax, 4
mov ecx, dword [eax + ebx + 0xc]
movss xmm1, dword [ecx]
add edi, 0x18
lea esi, [esp + 0x18]
movss dword [esp + 0x18], xmm1
movss dword [esp + 0x1c], xmm0
movss dword [esp + 0x20], xmm0
movss dword [esp + 0x24], xmm0
call fcn.004022b0
xorps xmm0, xmm0
mov ecx, dword [esp + 0x10]
mov al, byte [ecx + 8]
cmp al, 0xff
je 0x66d871
mov edi, dword [ebp + 8]
movzx edx, al
shl edx, 4
mov esi, dword [edx + ebx + 0xc]
add edi, 0x1c
call fcn.004022b0
xorps xmm0, xmm0
mov ecx, dword [esp + 0x10]
mov al, byte [ecx + 9]
cmp al, 0xff
je 0x66d8b4
mov edi, dword [ebp + 8]
movzx eax, al
shl eax, 4
mov ecx, dword [eax + ebx + 0xc]
movss xmm1, dword [ecx]
add edi, 0x20
lea esi, [esp + 0x18]
movss dword [esp + 0x18], xmm1
movss dword [esp + 0x1c], xmm0
movss dword [esp + 0x20], xmm0
movss dword [esp + 0x24], xmm0
call fcn.004022b0
xorps xmm0, xmm0
mov ecx, dword [esp + 0x10]
mov al, byte [ecx + 0xa]
cmp al, 0xff
je 0x66d8f7
mov edi, dword [ebp + 8]
movzx edx, al
shl edx, 4
mov eax, dword [edx + ebx + 0xc]
movss xmm1, dword [eax]
add edi, 0x24
lea esi, [esp + 0x18]
movss dword [esp + 0x18], xmm1
movss dword [esp + 0x1c], xmm0
movss dword [esp + 0x20], xmm0
movss dword [esp + 0x24], xmm0
call fcn.004022b0
xorps xmm0, xmm0
mov ecx, dword [esp + 0x10]
mov cl, byte [ecx + 5]
cmp cl, 0xff
je 0x66d93c
mov edi, dword [ebp + 8]
movzx ecx, cl
shl ecx, 4
mov edx, dword [ecx + ebx + 0xc]
movss xmm1, dword [edx]
movss dword [esp + 0x18], xmm1
movss xmm1, dword [0x721b0c]
add edi, 0x10
lea esi, [esp + 0x18]
movss dword [esp + 0x1c], xmm1
movss dword [esp + 0x20], xmm0
movss dword [esp + 0x24], xmm0
call fcn.004022b0
mov edi, dword [ebp + 8]
add edi, 0x14
mov esi, 0x9d3620
call fcn.004022b0
xor edi, edi
mov eax, dword [esp + 0x10]
mov al, byte [eax + edi + 0xb]
cmp al, 0xff
je 0x66d9b4
movzx ecx, al
shl ecx, 4
mov eax, dword [ecx + ebx + 0xc]
test eax, eax
mov dword [esp + 0x14], eax
je 0x66d971
mov esi, dword [eax + 4]
jmp 0x66d973
xor esi, esi
cmp dword [edi*4 + 0x805cbc], esi
je 0x66d9ad
mov eax, dword [0x7e43a0]
push esi
mov dword [edi*4 + 0x805cbc], esi
mov edx, dword [eax]
push edi
push eax
mov eax, dword [edx + 0x104]
call eax
test esi, esi
mov eax, dword [esp + 0x14]
je 0x66d9ad
add eax, 0x14
push edi
call fcn.0058ecf0
mov eax, dword [esp + 0x18]
add esp, 4
mov dword [edi*4 + 0x807d00], eax
add edi, 1
cmp edi, 3
jb 0x66d94e
mov eax, dword [0x93d8dc]
test eax, eax
mov edi, eax
je 0x66d9cc
mov esi, dword [eax + 4]
jmp 0x66d9ce
xor esi, esi
cmp dword [0x805cc8], esi
je 0x66da00
mov eax, dword [0x7e43a0]
push esi
mov dword [0x805cc8], esi
mov ecx, dword [eax]
mov edx, dword [ecx + 0x104]
push 3
push eax
call edx
test esi, esi
je 0x66da00
lea eax, [edi + 0x14]
push 3
call fcn.0058ecf0
add esp, 4
mov dword [0x807d0c], edi
mov edi, 4
jmp 0x66da10
mov eax, dword [esp + 0x10]
mov al, byte [eax + edi + 0xb]
cmp al, 0xff
je 0x66da76
movzx ecx, al
shl ecx, 4
mov eax, dword [ecx + ebx + 0xc]
test eax, eax
mov dword [esp + 0x14], eax
je 0x66da33
mov esi, dword [eax + 4]
jmp 0x66da35
xor esi, esi
cmp dword [edi*4 + 0x805cbc], esi
je 0x66da6f
mov eax, dword [0x7e43a0]
push esi
mov dword [edi*4 + 0x805cbc], esi
mov edx, dword [eax]
push edi
push eax
mov eax, dword [edx + 0x104]
call eax
test esi, esi
mov eax, dword [esp + 0x14]
je 0x66da6f
add eax, 0x14
push edi
call fcn.0058ecf0
mov eax, dword [esp + 0x18]
add esp, 4
mov dword [edi*4 + 0x807d00], eax
add edi, 1
cmp edi, 0xc
jb 0x66da10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8