Function at 0x4db080
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword [0x63aa18]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x44]
cmp eax, dword [ecx + 8]
jbe 0x4dbab6
sub esp, 0xc4
mov ebx, dword [esp + 0xc8]
mov ebp, dword [ebx + 0x10]
mov esi, dword [esp + 0xcc]
sub esi, ebp
mov edi, dword [esp + 0xd4]
sub edi, ebp
mov ebp, dword [ebx + 0x14]
mov eax, ebx
mov ebx, dword [esp + 0xdc]
mov ecx, dword [ebx + 0x2c]
shl esi, 2
mov dword [esp + 0x40], esi
shl edi, 2
mov dword [esp + 0x3c], edi
mov edx, edi
mov edi, dword [esp + 0xd0]
sub edi, ebp
mov esi, dword [esp + 0xd8]
sub esi, ebp
mov dword [esp + 0x28], esi
cmp ecx, 1
jg 0x4db149
test ecx, ecx
jne 0x4db121
mov ebp, dword [esp + 0xe0]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0xa8]
jmp 0x4db8ed
cmp ecx, 1
jne 0x4db1a2
mov ebp, dword [esp + 0xe0]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x7c]
jmp 0x4db6ad
cmp ecx, 2
jne 0x4db177
mov ebp, dword [esp + 0xe0]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x8c]
jmp 0x4db430
cmp ecx, 3
jne 0x4db1a2
mov ebp, dword [esp + 0xe0]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x94]
jmp 0x4db1e9
mov byte [esp + 0xe8], 0
add esp, 0xc4
ret
mov eax, dword [esp + 0x2c]
inc eax
mov edx, dword [esp + 0x4c]
inc edx
mov ebx, dword [esp + 0xc8]
mov ebp, dword [esp + 0xe0]
mov esi, dword [esp + 0x28]
mov ecx, dword [esp + 0x40]
mov ebx, dword [esp + 0xdc]
mov edi, eax
mov dword [esp + 0x4c], edx
mov eax, dword [esp + 0xc8]
mov edx, dword [esp + 0x3c]
cmp edi, esi
je 0x4db297
mov esi, dword [eax + 4]
mov edx, dword [eax + 0xc]
imul edx, edi
cmp esi, edx
jb 0x4db3e8
mov dword [esp + 0x2c], edi
mov edi, dword [eax]
mov dword [esp + 0xc0], edi
mov eax, dword [eax + 8]
sub eax, edx
neg eax
sar eax, 0x1f
and eax, edx
mov ecx, dword [ebx + 0x34]
mov dword [esp + 0xa4], ecx
mov edi, dword [esp + 0x4c]
sub edi, ecx
imul edi, dword [ebx + 0x24]
mov dword [esp + 0xa0], edi
mov edi, dword [ebx + 0x30]
sub ebp, edi
mov dword [esp + 0x9c], ebp
mov edi, dword [esp + 0x4c]
shr edi, 0x1f
mov ebp, dword [esp + 0x4c]
add edi, ebp
sar edi, 1
shr ecx, 0x1f
mov ebp, dword [esp + 0xa4]
add ebp, ecx
sar ebp, 1
sub edi, ebp
imul edi, dword [ebx + 0x28]
mov ebp, dword [esp + 0xc0]
add ebp, eax
mov dword [esp + 0xb8], ebp
sub esi, edx
mov eax, ebp
mov ebp, dword [esp + 0x9c]
mov ecx, ebx
mov ebx, dword [esp + 0xa0]
add ebx, ebp
add ebp, edi
mov edi, dword [esp + 0x3c]
mov edx, dword [esp + 0x40]
jmp 0x4db2ed
mov byte [esp + 0xe8], 1
add esp, 0xc4
ret
mov eax, esi
sub eax, edx
neg eax
sar eax, 0x1f
and edx, eax
mov eax, dword [esp + 0xb8]
mov byte [eax + edx], cl
mov byte [eax + edx + 1], bl
xchg ebp, ebx
mov byte [eax + edx + 2], bl
xchg ebp, ebx
mov byte [eax + edx + 3], 0xff
mov ecx, dword [esp + 0x18]
lea ebx, [ecx + 1]
mov ecx, dword [esp + 0x74]
lea ebp, [ecx + 1]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0xdc]
mov ecx, edx
mov edx, edi
mov edi, dword [esp + 0x3c]
cmp edx, edi
je 0x4db1b1
mov edi, dword [ecx + 4]
cmp ebx, edi
jae 0x4db3df
mov edi, dword [ecx]
mov eax, dword [ecx + 0x10]
movzx edi, byte [ebx + edi]
cmp ebp, eax
jae 0x4db3d6
mov dword [esp + 0x18], ebx
mov eax, dword [ecx + 0xc]
mov ebx, dword [ecx + 0x1c]
movzx eax, byte [ebp + eax]
cmp ebp, ebx
jae 0x4db3cd
imul ebx, edi, 0x10101
mov edi, dword [ecx + 0x18]
movzx edi, byte [ebp + edi]
imul ecx, edi, 0x166e9
lea ecx, [ebx + ecx - 0xb37480]
test ecx, 0xff000000
jne 0x4db350
sar ecx, 0x10
jmp 0x4db355
sar ecx, 0x1f
not ecx
mov dword [esp + 8], ebx
mov dword [esp + 0x74], ebp
imul ebp, eax, 0x581a
sub ebx, ebp
imul ebp, edi, 0xb6d2
sub ebx, ebp
add ebx, 0x877600
test ebx, 0xff000000
jne 0x4db380
sar ebx, 0x10
jmp 0x4db385
sar ebx, 0x1f
not ebx
imul ebp, eax, 0x1c5a2
mov edi, dword [esp + 8]
lea ebp, [ebp + edi - 0xe2d100]
test ebp, 0xff000000
jne 0x4db3a3
sar ebp, 0x10
jmp 0x4db3ac
sar ebp, 0x1f
xchg ebp, ebx
not ebx
xchg ebp, ebx
lea edi, [edx + 4]
cmp esi, edi
jb 0x4db3c4
cmp edx, edi
jbe 0x4db2a6
mov eax, edx
mov ecx, edi
call sym.runtime.panicSlice3C
mov ecx, edi
mov edx, esi
call sym.runtime.panicSlice3B
mov eax, ebp
mov ecx, ebx
call sym.runtime.panicIndex
mov ecx, eax
mov eax, ebp
call sym.runtime.panicIndex
mov eax, ebx
mov ecx, edi
call sym.runtime.panicIndex
mov eax, edx
mov ecx, esi
call sym.runtime.panicSliceB
mov eax, dword [esp + 0x30]
lea edi, [eax + 1]
mov eax, dword [esp + 0x50]
inc eax
mov edx, dword [esp + 0xe0]
mov ebx, dword [esp + 0xc8]
mov esi, dword [esp + 0x40]
mov ecx, esi
mov edx, ebp
mov ebx, dword [esp + 0xdc]
mov ebp, dword [esp + 0xe0]
mov esi, dword [esp + 0x28]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0xc8]
cmp edi, esi
je 0x4db297
mov esi, dword [eax + 4]
mov edx, dword [eax + 0xc]
imul edx, edi
cmp esi, edx
jb 0x4db665
mov dword [esp + 0x30], edi
mov edi, dword [eax]
mov dword [esp + 0xc0], edi
mov eax, dword [eax + 8]
sub eax, edx
neg eax
sar eax, 0x1f
and eax, edx
mov edi, dword [esp + 0x50]
shr edi, 0x1f
mov ebp, dword [esp + 0x50]
add edi, ebp
sar edi, 1
mov ecx, dword [ebx + 0x34]
mov dword [esp + 0xa4], ecx
sub ebp, ecx
imul ebp, dword [ebx + 0x24]
mov dword [esp + 0xa0], ebp
shr ecx, 0x1f
mov ebp, dword [esp + 0xa4]
add ebp, ecx
sar ebp, 1
sub edi, ebp
imul edi, dword [ebx + 0x28]
mov dword [esp + 0xa4], edi
mov ebp, dword [ebx + 0x30]
mov dword [esp + 0x9c], ebp
mov ecx, ebx
mov ebx, dword [esp + 0xe0]
sub ebx, ebp
shr ebp, 0x1f
mov edi, dword [esp + 0x9c]
add ebp, edi
sar ebp, 1
mov edi, dword [esp + 0xc0]
add edi, eax
sub esi, edx
mov dword [esp + 0x64], esi
mov eax, edi
mov edi, dword [esp + 0xa0]
add ebx, edi
mov edi, dword [esp + 0xa4]
sub edi, ebp
mov dword [esp + 0x6c], edi
mov ebp, dword [esp + 0x3c]
mov edx, dword [esp + 0xe0]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x84]
jmp 0x4db559
sub edi, esi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, esi
mov byte [eax + edi], dl
mov byte [eax + edi + 1], bl
xchg ebp, ebx
mov byte [eax + edi + 2], bl
xchg ebp, ebx
mov byte [eax + edi + 3], 0xff
mov edx, dword [esp + 0x5c]
inc edx
mov ebx, dword [esp + 0x1c]
inc ebx
mov ebp, dword [esp + 0x3c]
mov esi, dword [esp + 0xdc]
mov edi, dword [esp + 0x6c]
mov esi, dword [esp + 0x64]
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0xdc]
mov esi, dword [esp + 0x44]
cmp esi, ebp
je 0x4db3f1
mov dword [esp + 0x5c], edx
shr edx, 0x1f
mov ebp, dword [esp + 0x5c]
add edx, ebp
sar edx, 1
mov ebp, dword [ecx + 4]
add edx, edi
cmp ebx, ebp
jae 0x4db65c
mov ebp, dword [ecx]
mov edi, dword [ecx + 0x10]
movzx ebp, byte [ebp + ebx]
cmp edi, edx
jbe 0x4db653
mov dword [esp + 0x1c], ebx
mov edi, dword [ecx + 0xc]
mov ebx, dword [ecx + 0x1c]
movzx edi, byte [edi + edx]
cmp ebx, edx
jbe 0x4db64a
imul ebx, ebp, 0x10101
mov ebp, dword [ecx + 0x18]
movzx ebp, byte [ebp + edx]
imul edx, ebp, 0x166e9
lea edx, [edx + ebx - 0xb37480]
test edx, 0xff000000
jne 0x4db5d1
sar edx, 0x10
jmp 0x4db5d6
sar edx, 0x1f
not edx
mov dword [esp + 0xc], ebx
imul ecx, edi, 0x581a
sub ebx, ecx
imul ebp, ebp, 0xb6d2
sub ebx, ebp
add ebx, 0x877600
test ebx, 0xff000000
jne 0x4db5fd
sar ebx, 0x10
jmp 0x4db602
sar ebx, 0x1f
not ebx
imul ebp, edi, 0x1c5a2
mov edi, dword [esp + 0xc]
lea ebp, [ebp + edi - 0xe2d100]
test ebp, 0xff000000
jne 0x4db620
sar ebp, 0x10
jmp 0x4db629
sar ebp, 0x1f
xchg ebp, ebx
not ebx
xchg ebp, ebx
lea ecx, [esi + 4]
mov edi, dword [esp + 0x64]
cmp edi, ecx
jb 0x4db643
cmp esi, ecx
jbe 0x4db510
mov eax, esi
call sym.runtime.panicSlice3C
mov edx, edi
call sym.runtime.panicSlice3B
mov eax, edx
mov ecx, ebx
call sym.runtime.panicIndex
mov eax, edx
mov ecx, edi
call sym.runtime.panicIndex
mov eax, ebx
mov ecx, ebp
call sym.runtime.panicIndex
mov eax, edx
mov ecx, esi
call sym.runtime.panicSliceB
mov eax, dword [esp + 0x34]
lea edi, [eax + 1]
mov eax, dword [esp + 0x54]
inc eax
mov ecx, dword [esp + 0xe0]
mov ebx, dword [esp + 0xc8]
mov esi, dword [esp + 0x40]
mov ecx, esi
mov edx, ebp
mov ebx, dword [esp + 0xdc]
mov ebp, dword [esp + 0xe0]
mov esi, dword [esp + 0x28]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0xc8]
cmp edi, esi
je 0x4db297
mov esi, dword [eax + 4]
mov edx, dword [eax + 0xc]
imul edx, edi
cmp esi, edx
jb 0x4db8ae
mov dword [esp + 0x34], edi
mov dword [esp + 0xa4], edx
mov edi, dword [eax]
mov dword [esp + 0xc0], edi
mov eax, dword [eax + 8]
sub eax, edx
neg eax
sar eax, 0x1f
and eax, edx
mov ecx, dword [ebx + 0x24]
mov edx, dword [ebx + 0x30]
sub ebp, edx
mov dword [esp + 0xa0], ebp
mov ebp, dword [ebx + 0x34]
mov edi, dword [esp + 0x54]
sub edi, ebp
imul ecx, edi
mov ebp, dword [ebx + 0x28]
imul edi, ebp
mov ebp, edx
shr edx, 0x1f
add ebp, edx
sar ebp, 1
mov edx, ebx
mov ebx, dword [esp + 0xc0]
add ebx, eax
mov eax, ebx
mov ebx, dword [esp + 0xa4]
sub esi, ebx
mov dword [esp + 0x68], esi
mov ebx, dword [esp + 0xa0]
add ebx, ecx
sub edi, ebp
mov dword [esp + 0x70], edi
mov ebp, dword [esp + 0x3c]
mov ecx, dword [esp + 0xe0]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0xb0]
jmp 0x4db7a0
sub edx, esi
neg edx
sar edx, 0x1f
and edx, esi
mov byte [eax + edx], cl
mov byte [eax + edx + 1], bl
xchg ebp, ebx
mov byte [eax + edx + 2], bl
xchg ebp, ebx
mov byte [eax + edx + 3], 0xff
mov ecx, dword [esp + 0x60]
inc ecx
mov edx, dword [esp + 0x20]
lea ebx, [edx + 1]
mov ebp, dword [esp + 0x3c]
mov edx, dword [esp + 0xdc]
mov esi, dword [esp + 0x70]
mov esi, dword [esp + 0x68]
mov dword [esp + 0x48], edi
mov edi, dword [esp + 0x70]
mov esi, dword [esp + 0x48]
cmp esi, ebp
je 0x4db66e
mov dword [esp + 0x60], ecx
shr ecx, 0x1f
mov ebp, dword [esp + 0x60]
add ecx, ebp
sar ecx, 1
mov ebp, dword [edx + 4]
add ecx, edi
cmp ebx, ebp
jae 0x4db8a5
mov ebp, dword [edx]
mov edi, dword [edx + 0x10]
movzx ebp, byte [ebp + ebx]
cmp edi, ecx
jbe 0x4db89c
mov dword [esp + 0x20], ebx
mov edi, dword [edx + 0xc]
mov ebx, dword [edx + 0x1c]
movzx edi, byte [edi + ecx]
cmp ebx, ecx
jbe 0x4db893
imul ebx, ebp, 0x10101
mov ebp, dword [edx + 0x18]
movzx ebp, byte [ebp + ecx]
imul ecx, ebp, 0x166e9
lea ecx, [ecx + ebx - 0xb37480]
test ecx, 0xff000000
jne 0x4db818
sar ecx, 0x10
jmp 0x4db81d
sar ecx, 0x1f
not ecx
mov dword [esp + 0x10], ebx
imul edx, edi, 0x581a
sub ebx, edx
imul ebp, ebp, 0xb6d2
sub ebx, ebp
add ebx, 0x877600
test ebx, 0xff000000
jne 0x4db844
sar ebx, 0x10
jmp 0x4db849
sar ebx, 0x1f
not ebx
imul ebp, edi, 0x1c5a2
mov edi, dword [esp + 0x10]
lea ebp, [ebp + edi - 0xe2d100]
test ebp, 0xff000000
jne 0x4db867
sar ebp, 0x10
jmp 0x4db870
sar ebp, 0x1f
xchg ebp, ebx
not ebx
xchg ebp, ebx
lea edi, [esi + 4]
mov edx, dword [esp + 0x68]
cmp edx, edi
jb 0x4db88c
cmp esi, edi
jbe 0x4db75c
mov eax, esi
mov ecx, edi
call sym.runtime.panicSlice3C
mov ecx, edi
call sym.runtime.panicSlice3B
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicIndex
mov eax, ecx
mov ecx, edi
call sym.runtime.panicIndex
mov eax, ebx
mov ecx, ebp
call sym.runtime.panicIndex
mov eax, edx
mov ecx, esi
call sym.runtime.panicSliceB
mov eax, dword [esp + 0x38]
inc eax
mov ecx, dword [esp + 0x58]
inc ecx
mov ebp, dword [esp + 0xe0]
mov ebx, dword [esp + 0xc8]
mov esi, dword [esp + 0x28]
mov edx, edi
mov ebx, dword [esp + 0xdc]
mov edi, eax
mov dword [esp + 0x58], ecx
mov eax, dword [esp + 0xc8]
mov ecx, dword [esp + 0x40]
cmp edi, esi
je 0x4db297
mov esi, dword [eax + 4]
mov edx, dword [eax + 0xc]
imul edx, edi
cmp esi, edx
jb 0x4dbaac
mov dword [esp + 0x38], edi
mov dword [esp + 0xa4], edx
mov edi, dword [eax]
mov dword [esp + 0xc0], edi
mov eax, dword [eax + 8]
sub eax, edx
neg eax
sar eax, 0x1f
and eax, edx
mov ecx, dword [ebx + 0x24]
mov edx, dword [ebx + 0x34]
mov edi, dword [esp + 0x58]
sub edi, edx
imul ecx, edi
mov edx, dword [ebx + 0x28]
imul edi, edx
mov edx, dword [ebx + 0x30]
sub ebp, edx
mov edx, ebx
mov ebx, dword [esp + 0xc0]
add ebx, eax
mov dword [esp + 0xbc], ebx
mov eax, ebx
mov ebx, dword [esp + 0xa4]
sub esi, ebx
lea ebx, [ecx + ebp]
add ebp, edi
mov edi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x40]
jmp 0x4db9b3
mov eax, esi
sub eax, ecx
neg eax
sar eax, 0x1f
and eax, ecx
mov ecx, dword [esp + 0xbc]
mov byte [ecx + eax], dl
mov byte [ecx + eax + 1], bl
xchg ebp, ebx
mov byte [ecx + eax + 2], bl
xchg ebp, ebx
mov byte [ecx + eax + 3], 0xff
mov eax, dword [esp + 0x24]
lea ebx, [eax + 1]
mov eax, dword [esp + 0x78]
lea ebp, [eax + 1]
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0xdc]
mov eax, ecx
mov ecx, edi
mov edi, dword [esp + 0x3c]
cmp ecx, edi
je 0x4db8b7
mov edi, dword [edx + 4]
cmp ebx, edi
jae 0x4dbaa3
mov edi, dword [edx]
mov eax, dword [edx + 0x10]
movzx edi, byte [edi + ebx]
cmp ebp, eax
jae 0x4dba9a
mov dword [esp + 0x24], ebx
mov eax, dword [edx + 0xc]
mov ebx, dword [edx + 0x1c]
movzx eax, byte [eax + ebp]
cmp ebp, ebx
jae 0x4dba91
imul ebx, edi, 0x10101
mov edi, dword [edx + 0x18]
movzx edi, byte [edi + ebp]
imul edx, edi, 0x166e9
lea edx, [edx + ebx - 0xb37480]
test edx, 0xff000000
jne 0x4dba14
sar edx, 0x10
jmp 0x4dba19
sar edx, 0x1f
not edx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x78], ebp
imul ebp, eax, 0x581a
sub ebx, ebp
imul ebp, edi, 0xb6d2
sub ebx, ebp
add ebx, 0x877600
test ebx, 0xff000000
jne 0x4dba44
sar ebx, 0x10
jmp 0x4dba49
sar ebx, 0x1f
not ebx
imul ebp, eax, 0x1c5a2
mov edi, dword [esp + 0x14]
lea ebp, [ebp + edi - 0xe2d100]
test ebp, 0xff000000
jne 0x4dba67
sar ebp, 0x10
jmp 0x4dba70
sar ebp, 0x1f
xchg ebp, ebx
not ebx
xchg ebp, ebx
lea edi, [ecx + 4]
cmp esi, edi
jb 0x4dba88
cmp ecx, edi
jbe 0x4db96c
mov eax, ecx
mov ecx, edi
call sym.runtime.panicSlice3C
mov ecx, edi
mov edx, esi
call sym.runtime.panicSlice3B
mov eax, ebp
mov ecx, ebx
call sym.runtime.panicIndex
mov ecx, eax
mov eax, ebp
call sym.runtime.panicIndex
mov eax, ebx
mov ecx, edi
call sym.runtime.panicIndex
mov eax, edx
mov ecx, esi
call sym.runtime.panicSliceB
nop
call sym.runtime.morestack_noctxt
jmp sym.image_internal_imageutil.DrawYCbCr