Function at 0x1011a390
Capabilities:
Enumerate pe sections

Disassembly:
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov byte [eax + 3], cl
add eax, 4
ret
push ebx
push esi
mov esi, dword [esp + 0x18]
mov eax, dword [esi + 0x20]
push edi
lea edi, [eax + 4]
movzx eax, word [esi + 2]
dec eax
cmp eax, 0xf9
ja case.0x1011a3b4.3
movzx eax, byte [eax + 0x1011a8dc]
jmp dword [eax*4 + 0x1011a8ac]
cmp word [esi + 0xc], 4
je 0x1011a3c8
pop edi
pop esi
xor eax, eax
pop ebx
ret
mov eax, dword [esp + 0x14]
lea ecx, [eax + 4]
cmp ecx, dword [esp + 0x18]
ja 0x1011a3c2
movzx edx, byte [edi]
mov byte [eax], dl
movzx ecx, byte [edi + 1]
mov byte [eax + 1], cl
movzx edx, byte [edi + 2]
inc eax
inc eax
mov byte [eax], dl
movzx ecx, byte [edi + 3]
pop edi
inc eax
pop esi
mov byte [eax], cl
inc eax
pop ebx
ret
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
push edi
push edx
push eax
push ecx
call fcn.1011a270
add esp, 0x10
pop edi
pop esi
pop ebx
ret
mov esi, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
push edi
push esi
push edx
push ebx
call fcn.1011a270
add esp, 0x10
test eax, eax
je 0x1011a3c2
lea ecx, [edi + 0x100]
push ecx
push esi
push eax
push ebx
call fcn.1011a270
add esp, 0x10
test eax, eax
je 0x1011a3c2
lea edx, [eax + 0x14]
cmp edx, esi
ja 0x1011a3c2
mov ecx, dword [edi + 0x200]
call 0x1011a370
mov ecx, dword [edi + 0x204]
call 0x1011a370
mov ecx, dword [edi + 0x208]
call 0x1011a370
mov ecx, dword [edi + 0x20c]
call 0x1011a370
mov ecx, dword [edi + 0x210]
pop edi
pop esi
pop ebx
jmp 0x1011a370
movzx eax, word [esi + 0xc]
mov ebx, dword [esp + 0x14]
lea ecx, [eax + ebx]
cmp ecx, dword [esp + 0x18]
ja 0x1011a3c2
push eax
push edi
push ebx
call fcn.10118460
movzx eax, word [esi + 0xc]
add esp, 0xc
pop edi
pop esi
add eax, ebx
pop ebx
ret
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
lea edx, [eax + 3]
cmp edx, esi
ja 0x1011a3c2
movzx ecx, word [edi]
mov edx, ecx
shr edx, 8
add edi, 2
push edi
mov byte [eax], dl
mov byte [eax + 1], cl
add eax, 2
push esi
push eax
mov eax, dword [esp + 0x1c]
push eax
call fcn.1011a270
add esp, 0x10
pop edi
pop esi
pop ebx
ret
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
push edi
push esi
push ecx
push ebx
call fcn.1011a270
add esp, 0x10
test eax, eax
je 0x1011a3c2
add edi, 0x100
push edi
push esi
push eax
push ebx
call fcn.1011a270
add esp, 0x10
pop edi
pop esi
pop ebx
ret
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
lea edx, [eax + 5]
cmp edx, esi
ja 0x1011a3c2
movzx ecx, word [edi]
mov ebx, dword [esp + 0x10]
mov edx, ecx
mov byte [eax + 1], cl
lea ecx, [edi + 2]
push ecx
shr edx, 8
mov byte [eax], dl
push esi
add eax, 2
push eax
push ebx
call fcn.1011a270
add esp, 0x10
test eax, eax
je 0x1011a3c2
add edi, 0x102
push edi
push esi
push eax
push ebx
call fcn.1011a270
add esp, 0x10
pop edi
pop esi
pop ebx
ret
cmp word [esi + 0xc], 0x10
jne 0x1011a3c2
mov eax, dword [esp + 0x14]
lea esi, [eax + 0x10]
cmp esi, dword [esp + 0x18]
ja 0x1011a3c2
push 0x10
push edi
push eax
call fcn.10118460
add esp, 0xc
pop edi
mov eax, esi
pop esi
pop ebx
ret
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
lea edx, [eax + 7]
cmp edx, ecx
ja 0x1011a3c2
movzx edx, byte [edi + 1]
mov byte [eax], dl
movzx edx, byte [edi]
mov byte [eax + 1], dl
movzx edx, byte [edi + 3]
inc eax
mov byte [eax + 1], dl
movzx edx, byte [edi + 2]
inc eax
mov byte [eax + 1], dl
movzx edx, byte [edi + 4]
inc eax
inc eax
mov byte [eax], dl
movzx edx, byte [edi + 5]
inc eax
add edi, 6
push edi
mov byte [eax], dl
push ecx
inc eax
push eax
mov eax, dword [esp + 0x1c]
push eax
call fcn.1011a270
add esp, 0x10
pop edi
pop esi
pop ebx
ret
movzx ecx, word [esi + 0xc]
mov eax, dword [esi + 0x20]
push ebp
lea ebp, [ecx + eax + 4]
add eax, 4
xor edx, edx
cmp eax, ebp
jae 0x1011a670
movzx ecx, word [eax]
cmp cx, 1
jne 0x1011a623
mov ecx, 0x16
jmp 0x1011a667
cmp cx, 2
jne 0x1011a630
mov ecx, 8
jmp 0x1011a667
cmp cx, 4
jne 0x1011a662
mov cx, word [eax + 6]
cmp cx, word [eax + 0xc]
jne 0x1011a65b
mov cx, word [eax + 8]
cmp cx, word [eax + 0xe]
jne 0x1011a65b
mov cx, word [eax + 0xa]
cmp cx, word [eax + 0x10]
jne 0x1011a65b
mov ecx, 0xc
jmp 0x1011a667
mov ecx, 0x12
jmp 0x1011a667
mov ecx, 0x10000
add eax, 0x18
add edx, ecx
cmp eax, ebp
jb 0x1011a613
mov esi, dword [esp + 0x18]
add edx, esi
cmp edx, dword [esp + 0x1c]
jbe 0x1011a692
push str.ERROR:_putOptRData___out_of_space
push 0
call fcn.1011dd40
add esp, 8
xor eax, eax
pop ebp
pop edi
pop esi
pop ebx
ret
cmp edi, ebp
jae 0x1011a819
lea ebx, [ebx]
movzx eax, word [edi]
cmp ax, 1
jne 0x1011a6b0
mov ebx, 0x16
jmp 0x1011a6f4
cmp ax, 2
jne 0x1011a6bd
mov ebx, 8
jmp 0x1011a6f4
cmp ax, 4
jne 0x1011a6ef
mov dx, word [edi + 6]
cmp dx, word [edi + 0xc]
jne 0x1011a6e8
mov cx, word [edi + 8]
cmp cx, word [edi + 0xe]
jne 0x1011a6e8
mov dx, word [edi + 0xa]
cmp dx, word [edi + 0x10]
jne 0x1011a6e8
mov ebx, 0xc
jmp 0x1011a6f4
mov ebx, 0x12
jmp 0x1011a6f4
mov ebx, 0x10000
movzx eax, ax
mov byte [esi + 1], al
mov ecx, eax
shr ecx, 8
mov byte [esi], cl
lea edx, [ebx - 4]
movzx eax, dx
mov ecx, eax
add esi, 2
shr ecx, 8
mov byte [esi + 1], al
mov byte [esi], cl
movzx eax, word [edi]
add esi, 2
sub eax, 1
je 0x1011a7a9
sub eax, 1
je 0x1011a78d
sub eax, 2
jne 0x1011a80e
mov dl, byte [edi + 4]
mov byte [esi], dl
mov al, byte [edi + 5]
inc esi
push 6
lea ecx, [edi + 6]
mov byte [esi], al
push ecx
inc esi
push esi
call fcn.10118460
add esp, 0xc
add esi, 6
cmp ebx, 0x12
jl 0x1011a80e
push 6
lea edx, [edi + 0xc]
push edx
push esi
call fcn.10118460
add esp, 0xc
add esi, 6
cmp ebx, 0x12
jle 0x1011a80e
lea eax, [ebx - 0x12]
push eax
lea ecx, [edi + 0x12]
push ecx
push esi
call fcn.10118460
add esp, 0xc
lea esi, [esi + ebx - 0x12]
jmp 0x1011a80e
mov eax, dword [edi + 4]
mov edx, eax
shr edx, 0x18
mov byte [esi], dl
mov ecx, eax
shr ecx, 0x10
mov edx, eax
shr edx, 8
mov byte [esi + 1], cl
mov byte [esi + 2], dl
jmp 0x1011a808
movzx eax, word [edi + 4]
mov byte [esi + 1], al
mov ecx, eax
shr ecx, 8
mov byte [esi], cl
movzx eax, word [edi + 6]
mov edx, eax
add esi, 2
mov byte [esi + 1], al
shr edx, 8
mov byte [esi], dl
movzx eax, word [edi + 8]
mov ecx, eax
add esi, 2
shr ecx, 8
push 8
lea edx, [edi + 0xa]
mov byte [esi], cl
mov byte [esi + 1], al
push edx
add esi, 2
push esi
call fcn.10118460
mov eax, dword [edi + 0x14]
add esi, 8
mov ecx, eax
shr ecx, 0x18
mov byte [esi], cl
mov edx, eax
shr edx, 0x10
mov ecx, eax
add esp, 0xc
shr ecx, 8
mov byte [esi + 1], dl
mov byte [esi + 2], cl
mov byte [esi + 3], al
add esi, 4
add edi, 0x18
cmp edi, ebp
jb 0x1011a6a0
pop ebp
pop edi
mov eax, esi
pop esi
pop ebx
ret
mov ebx, 0x20
cmp byte [edi + ebx - 1], 0
jne 0x1011a831
dec ebx
test ebx, ebx
jg 0x1011a825
mov edx, dword [esi + 0x1c]
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
push edx
push esi
push eax
push ecx
call fcn.1011a270
add esp, 0x10
test eax, eax
je 0x1011a3c2
test ebx, ebx
je 0x1011a68e
lea edx, [ebx + eax + 2]
cmp edx, esi
ja 0x1011a3c2
mov byte [eax], 0
inc eax
mov byte [eax], bl
inc eax
xor esi, esi
test ebx, ebx
jle 0x1011a68e
lea esp, [esp]
mov cl, byte [esi + edi]
mov byte [eax], cl
inc esi
inc eax
cmp esi, ebx
jl 0x1011a880
pop edi
pop esi
pop ebx
ret
movzx eax, word [esi + 0xc]
mov ebx, dword [esp + 0x14]
lea edx, [eax + ebx]
cmp edx, dword [esp + 0x18]
jbe 0x1011a4a1
pop edi
pop esi
xor eax, eax
pop ebx
ret