Function at 0x4913f8
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffcc
push ebx
push esi
push edi
xor ecx, ecx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0xc], edx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x49194c
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 4]
je 0x491931
cmp dword [ebp - 0xc], 0
jne 0x49143c
mov eax, dword [ebp - 4]
call sym.WMP54Gv4.exe__Gifimage_TGIFSubImage_Clear_qqrv
jmp 0x491931
mov eax, dword [ebp - 0xc]
mov edx, dword [sym.WMP54Gv4.exe__Gifimage_TGIFSubImage_]
call fcn.00521320
test al, al
je 0x491578
mov eax, dword [ebp - 4]
call sym.WMP54Gv4.exe__Gifimage_TGIFSubImage_Clear_qqrv
mov eax, dword [ebp - 0xc]
call sym.WMP54Gv4.exe__Gifimage_TGIFSubImage_GetEmpty_qqrv
test al, al
jne 0x491931
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0xc]
mov ecx, dword [edx + 0x24]
mov dword [eax + 0x24], ecx
mov ecx, dword [edx + 0x28]
mov dword [eax + 0x28], ecx
mov cx, word [edx + 0x2c]
mov word [eax + 0x2c], cx
mov eax, dword [ebp - 0xc]
mov al, byte [eax + 0x34]
mov edx, dword [ebp - 4]
mov byte [edx + 0x34], al
mov eax, dword [ebp - 4]
call sym.WMP54Gv4.exe__Gifimage_TGIFSubImage_NewImage_qqrv
mov eax, dword [ebp - 4]
cmp dword [eax + 0x18], 0
je 0x4914c1
mov eax, dword [ebp - 0xc]
cmp dword [eax + 0x18], 0
je 0x4914c1
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x1c]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x18]
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x18]
call fcn.00520ac8
mov eax, dword [ebp - 0xc]
mov edx, dword [eax + 0x20]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x20]
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x30]
call sym.WMP54Gv4.exe__Gifimage_TGIFList_GetCount_qqrv
test eax, eax
jle 0x491546
mov dl, 1
mov eax, dword [0x509090]
call fcn.00521178
mov dword [ebp - 0x10], eax
xor eax, eax
push ebp
push 0x49153f
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x30]
mov edx, dword [ebp - 0x10]
mov ecx, dword [eax]
call dword [ecx + 0x10]
xor ecx, ecx
xor edx, edx
mov eax, dword [ebp - 0x10]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov ebx, dword [eax]
call dword [ebx + 0x14]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x491546
mov eax, dword [ebp - 0x10]
call fcn.005211a8
ret
mov eax, dword [ebp - 0xc]
call sym.WMP54Gv4.exe__Gifimage_TGIFSubImage_GetHasBitmap_qqrv
test al, al
je 0x491931
mov eax, dword [ebp - 4]
call sym.WMP54Gv4.exe__Gifimage_TGIFSubImage_NewBitmap_qqrv
mov eax, dword [ebp - 0xc]
call sym.WMP54Gv4.exe__Gifimage_TGIFSubImage_GetBitmap_qqrv
mov edx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 8]
mov ecx, dword [eax]
call dword [ecx + 8]
jmp 0x491931
mov eax, dword [ebp - 0xc]
mov edx, dword [0x4cb578]
call fcn.00521320
test al, al
je 0x4917bd
mov eax, dword [ebp - 4]
call sym.WMP54Gv4.exe__Gifimage_TGIFSubImage_Clear_qqrv
mov eax, dword [ebp - 0xc]
mov edx, dword [eax]
call dword [edx + 0x1c]
test al, al
jne 0x491931
mov eax, dword [ebp - 0xc]
mov edx, dword [eax]
call dword [edx + 0x2c]
mov ecx, eax
mov edx, 3
mov eax, dword [ebp - 4]
call sym.WMP54Gv4.exe__Gifimage_TGIFSubImage_SetBounds_qqrius
mov eax, dword [ebp - 0xc]
mov edx, dword [eax]
call dword [edx + 0x20]
mov ecx, eax
mov edx, 4
mov eax, dword [ebp - 4]
call sym.WMP54Gv4.exe__Gifimage_TGIFSubImage_SetBounds_qqrius
mov eax, dword [ebp - 0xc]
call fcn.00486908
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 3
ja 0x4915eb
cmp byte [ebp - 0x15], 0
jne 0x491627
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x38]
push eax
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov cl, byte [eax + 0x3c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
mov dl, byte [eax + 0x36]
mov eax, dword [ebp - 0xc]
call sym.WMP54Gv4.exe__Gifimage_ReduceColors_qqrp16Graphics_TBitmap24Gifimage_TColorReduction20Gifimage_TDitherModeiui
mov edx, dword [ebp - 4]
mov dword [edx + 8], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 8]
call fcn.00486908
mov byte [ebp - 0x15], al
jmp 0x49163d
mov eax, dword [ebp - 4]
call sym.WMP54Gv4.exe__Gifimage_TGIFSubImage_NewBitmap_qqrv
mov eax, dword [ebp - 4]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0xc]
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 4]
call sym.WMP54Gv4.exe__Gifimage_TGIFSubImage_NewImage_qqrv
push 0
push 0
push 0
lea eax, [ebp - 0x2c]
push eax
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.005097e0
lea eax, [ebp - 0x2c]
push eax
lea edx, [ebp - 0x30]
mov eax, sym.WMP54Gv4.exe__Gifimage__sProgressConverting
call fcn.0052450c
mov eax, dword [ebp - 0x30]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
xor ecx, ecx
mov edx, dword [ebp - 4]
mov bx, 0xfffd
call fcn.00521384
xor eax, eax
push ebp
push 0x4917b6
push dword fs:[eax]
mov dword fs:[eax], esp
mov al, byte [ebp - 0x15]
dec eax
sub al, 3
jb 0x4916a1
sub al, 2
je 0x4916a1
mov byte [ebp - 0x15], 6
mov al, byte [ebp - 0x15]
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
mov dl, 1
mov eax, dword [0x486998]
call fcn.00486aa8
mov dword [ebp - 8], eax
xor eax, eax
push ebp
push 0x491727
push dword fs:[eax]
mov dword fs:[eax], esp
mov al, byte [ebp - 0x15]
dec al
je 0x4916f5
dec al
je 0x4916e6
dec al
jne 0x491704
push ebp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x18]
call fcn.004909b4
pop ecx
jmp 0x491711
push ebp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x18]
call fcn.00490b24
pop ecx
jmp 0x491711
push ebp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x18]
call fcn.00490c80
pop ecx
jmp 0x491711
push ebp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x18]
call fcn.00490dec
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x49172e
mov eax, dword [ebp - 8]
call fcn.005211a8
ret
mov eax, dword [ebp - 0xc]
mov edx, dword [0x4cb150]
call fcn.00521320
test al, al
je 0x491904
mov eax, dword [ebp - 4]
call sym.WMP54Gv4.exe__Gifimage_TGIFSubImage_Clear_qqrv
mov eax, dword [ebp - 0xc]
mov edx, dword [eax]
call dword [edx + 0x1c]
test al, al
jne 0x491931
mov dl, 1
mov eax, dword [0x4cb578]
call fcn.004d1d6c
mov dword [ebp - 0x1c], eax
xor eax, eax
push ebp
push 0x4918c3
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
mov edx, dword [0x4cb6b8]
call fcn.00521320
test al, al
jne 0x49182c
mov eax, dword [ebp - 0xc]
mov edx, dword [0x4cb43c]
call fcn.00521320
test al, al
je 0x491868
xor eax, eax
push ebp
push 0x491851
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x1c]
call fcn.00491014
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4918a2
xor eax, eax
push ebp
push 0x49188b
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 8]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4918a2
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 8]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4918ca
mov eax, dword [ebp - 0x1c]
call fcn.005211a8
ret
mov eax, dword [ebp - 0xc]
mov edx, dword [0x4cb234]
call fcn.00521320
test al, al
je 0x491926
mov eax, dword [ebp - 0xc]
mov edx, dword [eax + 4]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 8]
jmp 0x491931
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
call fcn.0050abac
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x491953
lea eax, [ebp - 0x34]
mov edx, 2
call fcn.00521e68
ret