Function at 0x100c2b40
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x14
mov eax, dword [esp + 0x18]
xorps xmm0, xmm0
push ebx
mov ebx, dword [esp + 0x24]
push ebp
mov eax, dword [eax + 0x14]
mov ebp, dword [esp + 0x2c]
mov dword [esp + 0x18], eax
xor eax, eax
mov dword [esp + 8], eax
mov dword [esp + 0xc], eax
movups xmmword [ebp + 0x10], xmm0
push esi
movq qword [ebp + 0x20], xmm0
mov byte [ebp + 0xa], al
mov ebx, dword [ebx]
mov eax, ebx
shr eax, 0x10
and eax, 3
push edi
sub eax, 1
je 0x100c2b9b
sub eax, 1
je 0x100c2b91
mov dword [esp + 0x18], 0
jmp 0x100c2ba3
mov dword [esp + 0x18], 2
jmp 0x100c2ba3
mov dword [esp + 0x18], 1
mov edi, dword [esp + 0x2c]
mov ecx, ebx
mov eax, dword [edi]
nop dword [eax + eax]
movzx esi, cx
shl esi, 4
add esi, eax
mov ecx, dword [esi]
mov edx, ecx
shr edx, 0x1c
cmp edx, 8
je 0x100c2bb0
mov eax, ecx
and eax, 0xf8000000
cmp eax, 0x38000000
je 0x100c2f34
and ecx, 0xf4000000
cmp ecx, 0x34000000
je 0x100c2bff
cmp edx, 1
je 0x100c2bff
cmp ecx, 0x4000000
jne 0x100c2c61
cmp dword [esi + 4], 4
setne al
inc al
mov byte [ebp + 0xa], al
jmp 0x100c2c61
mov edi, dword [esi + 4]
mov eax, dword [esp + 0x2c]
lea edx, [edi + 8]
mov ecx, dword [eax + 0xc]
call fcn.100886e0
mov ecx, dword [esp + 0x28]
mov ebp, dword [esp + 0x28]
mov word [eax + 6], bx
lea ebx, [eax + 8]
mov byte [eax + 5], 0xa
mov edx, dword [ecx + 0x14]
lea ecx, [edx + 8]
mov dword [ebp + 0x14], ecx
mov ebp, dword [esp + 0x34]
mov dword [edx], eax
mov dword [edx + 4], 0xfffffff5
mov eax, dword [esi]
and eax, 0xf0000000
cmp eax, 0x10000000
cmp edi, 8
mov edi, dword [esp + 0x2c]
seta al
mov byte [ebp + 9], al
jbe 0x100c2c61
mov eax, 1
mov dword [ebp + 0x28], ebx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x30]
movzx ebx, word [eax + 8]
test ebx, ebx
je 0x100c2c90
mov edx, dword [edi]
nop
mov ecx, ebx
add ecx, ecx
mov eax, dword [edx + ecx*8]
and eax, 0xf0000000
cmp eax, 0x80000000
jne 0x100c2c8c
movzx ebx, word [edx + ecx*8 + 8]
test ebx, ebx
jne 0x100c2c70
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x1c], 1
mov ebp, dword [ecx + 0x10]
add ebp, 8
cmp ebp, dword [esp + 0x20]
jae 0x100c2eff
nop dword [eax]
test ebx, ebx
je 0x100c2cc7
shl ebx, 4
add ebx, dword [edi]
mov eax, ebx
movzx ebx, word [eax + 8]
movzx esi, word [eax]
jmp 0x100c2d8f
test dword [eax], 0x800000
je 0x100c2f42
mov eax, dword [ebp + 4]
cmp eax, 0xfffffff2
ja 0x100c2ce5
mov esi, 0xe
jmp 0x100c2d8f
cmp eax, 0xfffffff5
jne 0x100c2d6f
mov eax, dword [ebp]
movzx esi, word [eax + 6]
mov edx, esi
shl edx, 4
add edx, dword [edi]
mov ecx, dword [edx]
mov eax, ecx
and eax, 0xfc000000
cmp eax, 0x30000000
jne 0x100c2d29
movzx eax, cx
or eax, 0x20000
push 4
add eax, 0x20000000
push eax
push edi
call fcn.1009d0e0
add esp, 0xc
mov esi, eax
jmp 0x100c2d8f
mov eax, ecx
shr eax, 0x1c
cmp eax, 1
je 0x100c2d53
cmp eax, 6
je 0x100c2d53
and ecx, 0xf4000000
cmp ecx, 0x4000000
jne 0x100c2d8f
cmp dword [edx + 4], 4
jne 0x100c2d8f
mov esi, 0xe
jmp 0x100c2d8f
or esi, 0x20000
push 4
add esi, 0x20000000
push esi
push edi
call fcn.1009d0e0
add esp, 0xc
mov esi, eax
jmp 0x100c2d8f
cmp eax, 0xfffffffb
jne 0x100c2d7b
mov esi, 0x13
jmp 0x100c2d8f
cmp eax, 0xfffffffe
je 0x100c2d8a
mov esi, 0x11
cmp eax, 0xfffffffd
jne 0x100c2d8f
mov esi, 3
mov edx, dword [edi]
shl esi, 4
add esi, edx
mov ecx, dword [esi]
mov eax, ecx
and eax, 0xf0000000
cmp eax, 0x80000000
jne 0x100c2dbe
movzx esi, cx
shl esi, 4
add esi, edx
mov ecx, dword [esi]
mov eax, ecx
and eax, 0xf0000000
cmp eax, 0x80000000
je 0x100c2da6
mov edx, dword [esi + 4]
mov edi, ecx
shr edi, 0x1c
test edi, edi
jne 0x100c2e5a
cmp edx, 8
ja 0x100c2f34
mov eax, dword [esp + 0x10]
add edx, 3
shr edx, 2
mov dword [esp + 0x10], eax
test ecx, 0x4000000
je 0x100c2e7f
mov edi, dword [esp + 0x14]
lea eax, [edx + edi]
cmp eax, 0x20
ja 0x100c2f34
mov ecx, dword [esp + 0x34]
add edi, 0xa
mov dword [esp + 0x14], eax
lea edi, [ecx + edi*4]
mov eax, dword [esp + 0x1c]
shl eax, 8
push eax
mov eax, dword [esp + 0x30]
push ebp
push edi
push esi
push eax
call fcn.100bd030
mov ecx, dword [esi]
add esp, 0x14
test ecx, 0xf4000000
jne 0x100c2ee2
mov eax, dword [esi + 4]
cmp eax, 4
jae 0x100c2ee2
test ecx, 0x800000
je 0x100c2ed3
cmp eax, 1
jne 0x100c2ece
movzx eax, byte [edi]
jmp 0x100c2ee0
mov eax, ecx
and eax, 0xf8000000
cmp eax, 0x38000000
je 0x100c2f34
cmp edi, 1
jne 0x100c2e8c
mov eax, dword [esp + 0x18]
add edx, 3
mov dword [esp + 0x10], eax
shr edx, 2
mov ecx, eax
cmp edx, 1
ja 0x100c2df1
jmp 0x100c2eb0
and ecx, 0xf4000000
cmp ecx, 0x34000000
jne 0x100c2ea5
add edx, 3
shr edx, 2
jmp 0x100c2df1
mov eax, dword [esp + 0x10]
mov edx, 1
mov ecx, eax
inc eax
cmp eax, dword [esp + 0x18]
ja 0x100c2df1
mov edi, dword [esp + 0x34]
add edi, 0x20
add dword [esp + 0x10], edx
lea edi, [edi + ecx*4]
jmp 0x100c2e0f
movzx eax, word [edi]
jmp 0x100c2ee0
cmp eax, 1
jne 0x100c2edd
movsx eax, byte [edi]
jmp 0x100c2ee0
movsx eax, word [edi]
mov dword [edi], eax
inc dword [esp + 0x1c]
add ebp, 8
mov edi, dword [esp + 0x2c]
mov eax, dword [esp + 0x30]
cmp ebp, dword [esp + 0x20]
jb 0x100c2cb0
mov ecx, dword [esp + 0x28]
test ebx, ebx
jne 0x100c2f46
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x14]
mov byte [ecx + 8], al
mov dword [ecx + 4], 4
cmp eax, 1
jbe 0x100c2f2a
lea eax, [eax*4 + 0xb]
and eax, 0xfffffff0
add eax, 4
mov dword [ecx + 4], eax
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x14
ret
push 0xf22
push dword [esp + 0x2c]
call fcn.100870c0
mov ecx, dword [esp + 0x28]
push 0xe03
push ecx
call fcn.100870c0
int3