Function at 0x44d1b0
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x2c
mov edx, dword [ebp + 8]
push ebx
mov ebx, dword [ebp + 0x10]
push esi
push edi
push dword [ebp + 0xc]
cmp word [ebx + 2], 0
mov dword [esp + 0x1c], ecx
je 0x44d5a8
mov dword [esp + 0x18], ecx
lea ecx, [esp + 0x2c]
call fcn.0044cb00
add esp, 4
cmp eax, 0xffffff88
ja 0x44d56b
movzx edi, word [ebx]
or esi, 0xffffffff
mov eax, dword [esp + 0x2c]
sub esi, edi
mov ebx, dword [esp + 0x28]
mov ecx, eax
and ecx, 0x1f
and esi, 0x1f
shl ebx, cl
add eax, edi
mov ecx, esi
shr ebx, 1
shr ebx, cl
lea ecx, [esp + 0x28]
mov dword [esp + 0x10], ebx
mov dword [esp + 0x2c], eax
call fcn.0044cc00
mov eax, dword [esp + 0x2c]
mov ecx, eax
mov edx, dword [esp + 0x28]
and ecx, 0x1f
shl edx, cl
add eax, edi
shr edx, 1
mov ecx, esi
shr edx, cl
lea ecx, [esp + 0x28]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x2c], eax
call fcn.0044cc00
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x2c]
mov dword [esp + 0xc], eax
nop dword [eax]
nop dword [eax + eax]
mov esi, dword [esp + 0x30]
cmp edi, 0x20
ja 0x44d415
mov ecx, dword [esp + 0x34]
lea eax, [ecx + 4]
cmp esi, eax
jb 0x44d292
mov eax, edi
shr eax, 3
sub esi, eax
and edi, 7
mov dword [esp + 0x30], esi
mov ebx, dword [esi]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x28], ebx
jmp 0x44d2db
cmp esi, ecx
je 0x44d415
mov edx, edi
mov dword [esp + 0x20], 0
shr edx, 3
mov eax, esi
sub eax, edx
cmp eax, ecx
jae 0x44d2bb
mov edx, esi
mov dword [esp + 0x20], 1
sub edx, ecx
imul eax, edx, 0xfffffff8
sub esi, edx
mov dword [esp + 0x30], esi
mov ebx, dword [esi]
add edi, eax
mov dword [esp + 0xc], ebx
cmp dword [esp + 0x20], 0
mov dword [esp + 0x28], ebx
jne 0x44d415
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
add eax, 0xfc
cmp ecx, eax
jae 0x44d40f
mov eax, dword [esp + 0x10]
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + eax*4 + 4]
mov eax, edx
shr eax, 0x18
lea esi, [eax + edi]
neg eax
and eax, 0x1f
and edi, 0x1f
mov ecx, edi
mov edi, dword [esp + 0x14]
shl ebx, cl
mov ecx, eax
shr ebx, cl
mov ecx, dword [esp + 0x1c]
movzx eax, dx
add ebx, eax
shr edx, 0x10
mov eax, dword [ebp + 0x10]
mov byte [edi], dl
mov dword [esp + 0x10], ebx
mov ebx, dword [eax + ecx*4 + 4]
mov edx, ebx
shr edx, 0x18
lea eax, [edx + esi]
and esi, 0x1f
mov dword [esp + 0x2c], eax
neg edx
mov eax, dword [esp + 0xc]
mov ecx, esi
shl eax, cl
and edx, 0x1f
mov ecx, edx
shr eax, cl
lea ecx, [esp + 0x28]
mov dword [esp + 0x1c], eax
movzx eax, bx
add dword [esp + 0x1c], eax
shr ebx, 0x10
mov byte [edi + 1], bl
call fcn.0044cc00
test eax, eax
jg 0x44d3f6
mov eax, dword [esp + 0x10]
mov ecx, dword [ebp + 0x10]
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], ebx
mov edx, dword [ecx + eax*4 + 4]
mov eax, edx
mov ecx, dword [esp + 0x2c]
shr eax, 0x18
lea esi, [eax + ecx]
neg eax
and eax, 0x1f
and ecx, 0x1f
shl dword [esp + 0x10], cl
mov ecx, eax
shr dword [esp + 0x10], cl
mov ecx, dword [esp + 0x1c]
movzx eax, dx
add dword [esp + 0x10], eax
mov eax, dword [ebp + 0x10]
shr edx, 0x10
mov byte [edi + 2], dl
mov edx, dword [eax + ecx*4 + 4]
mov eax, edx
shr eax, 0x18
lea edi, [eax + esi]
neg eax
and esi, 0x1f
and eax, 0x1f
mov ecx, esi
shl ebx, cl
mov ecx, eax
movzx eax, dx
shr ebx, cl
add ebx, eax
shr edx, 0x10
mov eax, dword [esp + 0x14]
mov dword [esp + 0x1c], ebx
mov byte [eax + 3], dl
add eax, 4
mov dword [esp + 0x14], eax
jmp 0x44d260
mov eax, dword [esp + 0x28]
add edi, 2
mov esi, dword [esp + 0x30]
mov dword [esp + 0x14], edi
mov edi, dword [esp + 0x2c]
mov dword [esp + 0xc], eax
jmp 0x44d419
mov eax, dword [esp + 0xc]
jmp 0x44d41d
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
add edx, 0xfd
cmp ecx, edx
ja 0x44d566
nop
mov ecx, dword [esp + 0x10]
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx + ecx*4 + 4]
mov ecx, edi
and ecx, 0x1f
mov edx, ebx
shl eax, cl
shr edx, 0x18
mov ecx, edx
add edi, edx
mov edx, dword [esp + 0x14]
neg ecx
and ecx, 0x1f
shr eax, cl
movzx ecx, bx
shr ebx, 0x10
add ecx, eax
mov byte [edx], bl
inc edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
cmp edi, 0x20
ja 0x44d58d
mov ecx, dword [esp + 0x34]
lea eax, [ecx + 4]
cmp esi, eax
jb 0x44d48f
mov eax, edi
shr eax, 3
sub esi, eax
and edi, 7
mov eax, dword [esi]
mov dword [esp + 0xc], eax
jmp 0x44d4bb
cmp esi, ecx
je 0x44d4b7
mov ebx, edi
mov eax, esi
shr ebx, 3
sub eax, ebx
cmp eax, ecx
jae 0x44d4a4
mov ebx, esi
sub ebx, ecx
sub esi, ebx
lea eax, [ebx*8]
sub edi, eax
mov eax, dword [esi]
mov dword [esp + 0xc], eax
jmp 0x44d4bb
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x18]
add ecx, 0xfd
cmp edx, ecx
ja 0x44d566
mov ecx, dword [esp + 0x1c]
mov edx, dword [ebp + 0x10]
mov ebx, dword [edx + ecx*4 + 4]
mov ecx, edi
and ecx, 0x1f
mov edx, ebx
shl eax, cl
shr edx, 0x18
mov ecx, edx
add edi, edx
mov edx, dword [esp + 0x14]
neg ecx
and ecx, 0x1f
shr eax, cl
movzx ecx, bx
shr ebx, 0x10
add ecx, eax
mov byte [edx], bl
inc edx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x14], edx
cmp edi, 0x20
ja 0x44d572
mov ecx, dword [esp + 0x34]
lea eax, [ecx + 4]
cmp esi, eax
jb 0x44d528
mov eax, edi
shr eax, 3
sub esi, eax
and edi, 7
mov eax, dword [esi]
mov dword [esp + 0xc], eax
jmp 0x44d554
cmp esi, ecx
je 0x44d550
mov ebx, edi
mov eax, esi
shr ebx, 3
sub eax, ebx
cmp eax, ecx
jae 0x44d53d
mov ebx, esi
sub ebx, ecx
sub esi, ebx
lea eax, [ebx*8]
sub edi, eax
mov eax, dword [esi]
mov dword [esp + 0xc], eax
jmp 0x44d554
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x18]
add ecx, 0xfd
cmp edx, ecx
jbe 0x44d430
mov eax, 0xffffffba
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 0x10]
mov ecx, dword [ebp + 0x10]
mov al, byte [ecx + eax*4 + 6]
mov byte [edx], al
sub edx, dword [esp + 0x18]
lea eax, [edx + 1]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [esp + 0x1c]
mov al, byte [eax + ecx*4 + 6]
mov byte [edx], al
sub edx, dword [esp + 0x18]
lea eax, [edx + 1]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [esp + 0x14], ecx
lea ecx, [esp + 0x2c]
call fcn.0044cb00
add esp, 4
cmp eax, 0xffffff88
ja 0x44d56b
movzx edi, word [ebx]
or esi, 0xffffffff
mov eax, dword [esp + 0x2c]
sub esi, edi
mov ebx, dword [esp + 0x28]
mov ecx, eax
and ecx, 0x1f
and esi, 0x1f
shl ebx, cl
add eax, edi
mov ecx, esi
shr ebx, 1
shr ebx, cl
lea ecx, [esp + 0x28]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x2c], eax
call fcn.0044cc00
mov eax, dword [ebp + 0x10]
mov edx, dword [esp + 0x28]
add eax, 4
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x2c]
mov ecx, eax
and ecx, 0x1f
add eax, edi
shl edx, cl
mov ecx, esi
shr edx, 1
shr edx, cl
lea ecx, [esp + 0x28]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x2c], eax
call fcn.0044cc00
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x2c]
mov dword [esp + 0xc], eax
nop
mov esi, dword [esp + 0x30]
cmp edi, 0x20
ja 0x44d7ef
mov ecx, dword [esp + 0x34]
lea eax, [ecx + 4]
cmp esi, eax
jb 0x44d662
mov eax, edi
shr eax, 3
sub esi, eax
and edi, 7
mov dword [esp + 0x30], esi
mov ebx, dword [esi]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x28], ebx
jmp 0x44d6ab
cmp esi, ecx
je 0x44d7ef
mov edx, edi
mov dword [esp + 0x24], 0
shr edx, 3
mov eax, esi
sub eax, edx
cmp eax, ecx
jae 0x44d68b
mov edx, esi
mov dword [esp + 0x24], 1
sub edx, ecx
imul eax, edx, 0xfffffff8
sub esi, edx
mov dword [esp + 0x30], esi
mov ebx, dword [esi]
add edi, eax
mov dword [esp + 0xc], ebx
cmp dword [esp + 0x24], 0
mov dword [esp + 0x28], ebx
jne 0x44d7ef
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
add eax, 0xfc
cmp ecx, eax
jae 0x44d7e9
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
mov edx, dword [edx + eax*4]
mov eax, edx
shr eax, 0x18
lea esi, [edi + eax]
not eax
and eax, 0x1f
and edi, 0x1f
mov ecx, edi
mov edi, dword [esp + 0x10]
shl ebx, cl
mov ecx, eax
movzx eax, dx
shr edx, 0x10
shr ebx, 1
shr ebx, cl
add ebx, eax
mov byte [edi], dl
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x14], ebx
mov ebx, dword [eax + edx*4]
mov edx, ebx
shr edx, 0x18
lea eax, [edx + esi]
and esi, 0x1f
mov dword [esp + 0x2c], eax
mov ecx, esi
mov eax, dword [esp + 0xc]
not edx
shl eax, cl
and edx, 0x1f
shr eax, 1
mov ecx, edx
shr eax, cl
lea ecx, [esp + 0x28]
mov dword [esp + 0x1c], eax
movzx eax, bx
add dword [esp + 0x1c], eax
shr ebx, 0x10
mov byte [edi + 1], bl
call fcn.0044cc00
test eax, eax
jg 0x44d7d0
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x14], ebx
mov edx, dword [edx + eax*4]
mov eax, edx
shr eax, 0x18
mov dword [esp + 0xc], ebx
lea esi, [ecx + eax]
not eax
and eax, 0x1f
and ecx, 0x1f
shl dword [esp + 0x14], cl
mov ecx, eax
shr dword [esp + 0x14], 1
shr dword [esp + 0x14], cl
movzx eax, dx
add dword [esp + 0x14], eax
mov eax, dword [esp + 0x20]
shr edx, 0x10
mov byte [edi + 2], dl
mov edx, dword [esp + 0x1c]
mov edx, dword [eax + edx*4]
mov eax, edx
shr eax, 0x18
lea edi, [eax + esi]
and esi, 0x1f
not eax
mov ecx, esi
shl ebx, cl
and eax, 0x1f
mov ecx, eax
shr ebx, 1
movzx eax, dx
shr ebx, cl
add ebx, eax
shr edx, 0x10
mov eax, dword [esp + 0x10]
mov dword [esp + 0x1c], ebx
mov byte [eax + 3], dl
add eax, 4
mov dword [esp + 0x10], eax
jmp 0x44d630
mov eax, dword [esp + 0x28]
add edi, 2
mov esi, dword [esp + 0x30]
mov dword [esp + 0x10], edi
mov edi, dword [esp + 0x2c]
mov dword [esp + 0xc], eax
jmp 0x44d7f3
mov eax, dword [esp + 0xc]
jmp 0x44d7f7
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
add edx, 0xfd
cmp ecx, edx
ja 0x44d566
nop dword [eax]
mov ecx, dword [esp + 0x14]
mov ebx, dword [esp + 0x20]
mov ebx, dword [ebx + ecx*4]
mov ecx, edi
and ecx, 0x1f
mov edx, ebx
shl eax, cl
or ecx, 0xffffffff
shr edx, 0x18
sub ecx, edx
shr eax, 1
and ecx, 0x1f
add edi, edx
shr eax, cl
movzx ecx, bx
add ecx, eax
shr ebx, 0x10
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x10]
mov byte [ecx], bl
inc ecx
mov dword [esp + 0x10], ecx
cmp edi, 0x20
ja 0x44d978
mov ecx, dword [esp + 0x34]
lea eax, [ecx + 4]
cmp esi, eax
jb 0x44d872
mov eax, edi
shr eax, 3
sub esi, eax
and edi, 7
mov eax, dword [esi]
mov dword [esp + 0xc], eax
jmp 0x44d89e
cmp esi, ecx
je 0x44d89a
mov edx, edi
mov eax, esi
shr edx, 3
sub eax, edx
cmp eax, ecx
jae 0x44d887
mov edx, esi
sub edx, ecx
sub esi, edx
lea eax, [edx*8]
sub edi, eax
mov eax, dword [esi]
mov dword [esp + 0xc], eax
jmp 0x44d89e
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x18]
add edx, 0xfd
cmp dword [esp + 0x10], edx
ja 0x44d566
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov ebx, dword [ecx + edx*4]
mov ecx, edi
and ecx, 0x1f
mov edx, ebx
shl eax, cl
or ecx, 0xffffffff
shr edx, 0x18
sub ecx, edx
shr eax, 1
and ecx, 0x1f
add edi, edx
shr eax, cl
movzx ecx, bx
add ecx, eax
shr ebx, 0x10
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x10]
mov byte [ecx], bl
inc ecx
mov dword [esp + 0x10], ecx
cmp edi, 0x20
ja 0x44d95c
mov ecx, dword [esp + 0x34]
lea eax, [ecx + 4]
cmp esi, eax
jb 0x44d910
mov eax, edi
shr eax, 3
sub esi, eax
and edi, 7
mov eax, dword [esi]
mov dword [esp + 0xc], eax
jmp 0x44d93c
cmp esi, ecx
je 0x44d938
mov edx, edi
mov eax, esi
shr edx, 3
sub eax, edx
cmp eax, ecx
jae 0x44d925
mov edx, esi
sub edx, ecx
sub esi, edx
lea eax, [edx*8]
sub edi, eax
mov eax, dword [esi]
mov dword [esp + 0xc], eax
jmp 0x44d93c
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x18]
add edx, 0xfd
cmp dword [esp + 0x10], edx
jbe 0x44d810
mov eax, 0xffffffba
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
mov al, byte [edx + eax*4 + 2]
mov byte [ecx], al
sub ecx, dword [esp + 0x18]
lea eax, [ecx + 1]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
pop edi
pop esi
pop ebx
mov al, byte [eax + edx*4 + 2]
mov byte [ecx], al
sub ecx, dword [esp + 0xc]
lea eax, [ecx + 1]
mov esp, ebp
pop ebp
ret