Function at 0x10034a50
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x24
push ebx
push esi
push edi
mov esi, edx
mov edi, ecx
mov dword [esp + 0x1c], edi
test esi, esi
je 0x10034cab
push 0
push 0x48
call fcn.100049f0
mov ebx, eax
add esp, 8
mov dword [esp + 0x2c], ebx
test ebx, ebx
je 0x10034cab
push dword [ebp + 8]
mov edx, dword [esi]
mov ecx, edi
call fcn.100344d0
add esp, 4
mov dword [ebx], eax
mov edx, dword [esi + 0x20]
mov ecx, edi
push dword [ebp + 8]
call fcn.100346a0
add esp, 4
mov dword [ebx + 0x20], eax
mov edx, dword [esi + 0x24]
mov ecx, edi
push dword [ebp + 8]
call fcn.100344b0
add esp, 4
mov dword [ebx + 0x24], eax
mov edx, dword [esi + 0x28]
mov ecx, edi
push dword [ebp + 8]
call fcn.100344d0
add esp, 4
mov dword [ebx + 0x28], eax
mov edx, dword [esi + 0x2c]
mov ecx, edi
push dword [ebp + 8]
call fcn.100344b0
add esp, 4
mov dword [ebx + 0x2c], eax
mov edx, dword [esi + 0x30]
mov ecx, edi
push dword [ebp + 8]
call fcn.100344d0
add esp, 4
mov dword [ebx + 0x30], eax
mov al, byte [esi + 4]
mov ecx, edi
mov byte [ebx + 4], al
mov edx, dword [esi + 0x34]
push dword [ebp + 8]
call fcn.10034a50
add esp, 4
mov dword [ebx + 0x34], eax
test eax, eax
je 0x10034b16
mov dword [eax + 0x38], ebx
push dword [ebp + 8]
mov dword [ebx + 0x38], 0
mov ecx, edi
mov edx, dword [esi + 0x3c]
call fcn.100344b0
add esp, 4
mov dword [ebx + 0x3c], eax
mov edx, dword [esi + 0x40]
mov ecx, edi
push dword [ebp + 8]
call fcn.100344b0
mov dword [ebx + 0x40], eax
mov ecx, 0xfff7
mov dword [ebx + 8], 0
add esp, 4
mov dword [ebx + 0xc], 0
mov ax, word [esi + 6]
and ax, cx
mov dword [ebx + 0x10], 0xffffffff
mov word [ebx + 6], ax
xor ecx, ecx
mov dword [ebx + 0x14], 0xffffffff
mov eax, dword [esi + 0x18]
mov dword [ebx + 0x18], eax
mov eax, dword [esi + 0x1c]
mov dword [ebx + 0x1c], eax
mov esi, dword [esi + 0x44]
mov dword [esp + 0x18], esi
test esi, esi
je 0x10034c9f
mov eax, dword [esi]
shl eax, 4
lea ecx, [eax + 8]
cdq
add eax, 8
mov dword [esp + 0x14], ecx
mov ecx, edi
adc edx, 0
push edx
push eax
call fcn.100049f0
mov ecx, eax
add esp, 8
mov dword [esp + 0x20], ecx
test ecx, ecx
je 0x10034c9f
push dword [esp + 0x14]
push 0
push ecx
call fcn.100a9260
mov ecx, dword [esp + 0x2c]
add esp, 0xc
test ecx, ecx
je 0x10034c9f
mov eax, dword [esi]
mov dword [ecx], eax
cmp dword [esi], 0
mov dword [esp + 0x10], 0
jle 0x10034c9f
mov eax, dword [esp + 0x18]
lea ebx, [esi + 8]
sub eax, ecx
mov dword [esp + 0x14], ebx
lea esi, [ecx + 0x10]
mov dword [esp + 0x28], eax
nop dword [eax]
mov edx, dword [eax + esi]
mov ecx, edi
push 0
call fcn.10034a50
add esp, 4
mov dword [esi], eax
mov edx, dword [ebx + 4]
mov ecx, edi
push 0
call fcn.100344d0
mov dword [esi - 4], eax
add esp, 4
mov edi, dword [ebx]
test edi, edi
jne 0x10034c2d
xor ebx, ebx
jmp 0x10034c69
cmp byte [edi], 0
mov eax, edi
je 0x10034c3a
inc eax
cmp byte [eax], 0
jne 0x10034c34
mov ecx, dword [esp + 0x1c]
sub eax, edi
and eax, 0x3fffffff
inc eax
push 0
push eax
mov dword [esp + 0x2c], eax
call fcn.100049f0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x10034c69
push dword [esp + 0x24]
push edi
push ebx
call fcn.100a9420
add esp, 0xc
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
inc eax
mov edi, dword [esp + 0x1c]
mov dword [esi - 8], ebx
add esi, 0x10
mov ebx, dword [esp + 0x14]
add ebx, 0x10
mov dword [esp + 0x10], eax
cmp eax, dword [ecx]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x14], ebx
jl 0x10034c00
mov ebx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x20]
mov dword [ebx + 0x44], ecx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret