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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x67057a
mov eax, dword fs:[0]
push eax
sub esp, 0x2e0
push ebx
push esi
push edi
mov eax, dword [0x6d7160]
xor eax, esp
push eax
lea eax, [esp + 0x2f0]
mov dword fs:[0], eax
mov ebx, dword [ebp + 0x10]
cmp ebx, 3
jl 0x568dae
cmp dword [ebp + 0x24], 0
je 0x56894e
cmp dword [ebp + 0x28], 3
jl 0x568dae
mov esi, dword [ebp + 8]
mov eax, dword [esi + 8]
cmp dword [eax + 0x10], 0xffffffff
je 0x568dae
mov eax, dword [ebp + 0x2c]
cmp byte [eax + 0x2f], 0
jne 0x568971
cmp dword [eax + 0x18], 0
je 0x568dae
cmp ebx, 0x10
ja 0x56897f
lea eax, [esp + 0x148]
jmp 0x568990
push 3
lea eax, [ebx*8]
call fcn.0055b9f0
add esp, 4
mov dword [esp + 0x144], eax
mov ecx, dword [ebp + 0x14]
push ebx
push ecx
mov dword [esp + 0x300], 0
mov esi, dword [esi + 4]
mov edi, eax
push eax
mov dword [esp + 0x20], edi
call fcn.0055a150
mov edx, dword [ebp + 8]
mov esi, dword [edx + 0x10]
test esi, esi
je 0x5689e2
push ebx
lea eax, [esp + 0x78]
push eax
mov ecx, edi
call fcn.0055cd90
mov ebx, dword [ebp + 0x2c]
push esi
lea eax, [esp + 0x78]
call fcn.00568e10
test al, al
je 0x568d8c
lea eax, [esp + 0xd4]
call fcn.0056c240
mov dword [esp + 0xd4], vtable.SkTriColorShader.0
mov eax, dword [ebp + 0x2c]
lea ebx, [esp + 0x38]
mov byte [esp + 0x2f8], 1
call fcn.00556fe0
mov byte [esp + 0x2f8], 2
mov eax, dword [esp + 0x4c]
xor ebx, ebx
cmp eax, ebx
mov esi, eax
mov dword [esp + 0x18], esi
jne 0x568a2a
mov dword [ebp + 0x18], ebx
jmp 0x568a45
cmp dword [ebp + 0x18], ebx
jne 0x568a45
lea edx, [esp + 0x38]
push edx
xor edi, edi
call fcn.00558560
mov edi, dword [esp + 0x14]
mov dword [esp + 0x18], ebx
mov esi, ebx
cmp dword [ebp + 0x1c], ebx
je 0x568ade
cmp dword [ebp + 0x18], ebx
jne 0x568a66
lea eax, [esp + 0x38]
push eax
lea edi, [esp + 0xd8]
call fcn.00558560
jmp 0x568ada
cmp dword [ebp + 0x20], ebx
mov byte [esp + 0x13], bl
jne 0x568a7c
call fcn.005613d0
mov dword [ebp + 0x20], eax
mov byte [esp + 0x13], 1
push 0x44
call fcn.00608276
add esp, 4
mov dword [esp + 0x1c], eax
cmp eax, ebx
mov byte [esp + 0x2f8], 3
je 0x568aaa
mov edi, dword [ebp + 0x20]
push eax
mov ebx, esi
lea ecx, [esp + 0xd8]
call fcn.0056f5b0
jmp 0x568aac
xor eax, eax
lea ecx, [esp + 0x38]
push ecx
mov edi, eax
mov byte [esp + 0x2fc], 2
call fcn.00558560
mov esi, eax
call fcn.00444f20
cmp byte [esp + 0x13], 0
je 0x568ad6
mov esi, dword [ebp + 0x20]
call fcn.00444f20
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x14]
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 4]
mov ecx, dword [ebx]
lea edx, [esp + 0x1d0]
push edx
lea edx, [esp + 0x3c]
push edx
push eax
push ecx
call fcn.0056b080
add esp, 0x10
mov dword [esp + 0x1cc], eax
mov eax, dword [ebp + 0x24]
test eax, eax
mov byte [esp + 0x2f8], 4
mov dword [esp + 0x34], eax
mov dword [esp + 0x30], 0
je 0x568b28
mov eax, dword [ebp + 0x28]
mov dword [esp + 0x2c], eax
jmp 0x568b2f
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x2c], ecx
mov eax, dword [ebp + 0xc]
lea ecx, [esp + 0x20]
call fcn.005684f0
cmp dword [ebp + 0x18], 0
mov ecx, eax
mov dword [esp + 0x1c], ecx
jne 0x568bef
cmp dword [ebp + 0x1c], 0
jne 0x568bef
mov edx, dword [ebp + 0x2c]
movzx eax, byte [edx + 0x38]
and eax, 0xffffff01
push eax
call fcn.00568540
lea edx, [esp + 0x24]
add esp, 4
push edx
mov esi, eax
call ecx
add esp, 4
test al, al
je 0x568d53
mov edi, edi
mov eax, dword [esp + 0x1cc]
mov ecx, dword [ebx + 8]
mov edx, dword [esp + 0x24]
push eax
push ecx
mov ecx, dword [esp + 0x28]
lea eax, [edi + edx*8]
push eax
lea edx, [edi + ecx*8]
push edx
call esi
mov eax, dword [esp + 0x1dc]
mov ecx, dword [ebx + 8]
mov edx, dword [esp + 0x38]
push eax
push ecx
mov ecx, dword [esp + 0x3c]
lea eax, [edi + edx*8]
push eax
lea edx, [edi + ecx*8]
push edx
call esi
mov eax, dword [esp + 0x1ec]
mov ecx, dword [ebx + 8]
mov edx, dword [esp + 0x40]
push eax
push ecx
mov ecx, dword [esp + 0x50]
lea eax, [edi + edx*8]
push eax
lea edx, [edi + ecx*8]
push edx
call esi
lea eax, [esp + 0x50]
push eax
call dword [esp + 0x50]
add esp, 0x34
test al, al
jne 0x568b80
jmp 0x568d53
test esi, esi
je 0x568c0a
lea eax, [esp + 0x84]
mov ecx, esi
call fcn.0056c3c0
test al, al
mov byte [esp + 0x13], 1
jne 0x568c0f
mov byte [esp + 0x13], 0
cmp dword [ebp + 0x1c], 0
je 0x568c38
mov ecx, dword [ebx + 4]
mov eax, dword [ebx]
push ecx
lea edx, [esp + 0x3c]
push edx
push eax
lea ecx, [esp + 0xe0]
call fcn.0056c460
test al, al
jne 0x568c38
mov dword [ebp + 0x1c], 0
lea ecx, [esp + 0x20]
push ecx
call dword [esp + 0x20]
add esp, 4
test al, al
je 0x568d33
lea esp, [esp]
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x568cbd
mov edi, dword [ebp + 0x14]
lea edx, [esp + 0xac]
push edx
lea edx, [esp + 0x24]
call fcn.00568560
add esp, 4
test al, al
je 0x568cb6
cmp byte [esp + 0x13], 0
je 0x568c8c
lea ecx, [esp + 0x84]
lea eax, [esp + 0xac]
call fcn.005595d0
lea eax, [esp + 0xac]
mov ecx, esi
call fcn.0056c3f0
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 4]
mov edx, dword [esi]
mov eax, dword [eax]
mov edx, dword [edx + 0x14]
push ecx
lea ecx, [esp + 0x3c]
push ecx
push eax
mov ecx, esi
call edx
test al, al
je 0x568d18
mov edi, dword [esp + 0x14]
mov ebx, dword [ebp + 8]
mov eax, dword [ebp + 0x1c]
test eax, eax
je 0x568ced
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x28]
mov esi, dword [ebp + 0x14]
push ecx
push edx
push eax
lea eax, [esp + 0xe0]
call fcn.00568690
test al, al
mov esi, dword [esp + 0x18]
mov ebx, dword [ebp + 8]
je 0x568d1f
mov eax, dword [esp + 0x1cc]
mov ecx, dword [ebx + 8]
mov edx, dword [esp + 0x28]
push eax
push ecx
mov ecx, dword [esp + 0x2c]
lea eax, [edi + edx*8]
mov edx, dword [esp + 0x28]
lea ecx, [edi + ecx*8]
lea edx, [edi + edx*8]
call fcn.00565300
add esp, 8
jmp 0x568d1f
mov edi, dword [esp + 0x14]
mov ebx, dword [ebp + 8]
lea eax, [esp + 0x20]
push eax
call dword [esp + 0x20]
add esp, 4
test al, al
jne 0x568c50
test esi, esi
je 0x568d53
cmp byte [esp + 0x13], 0
je 0x568d4e
lea eax, [esp + 0x84]
mov ecx, esi
call fcn.0056c3f0
jmp 0x568d53
call fcn.0056c440
lea eax, [esp + 0x1cc]
mov byte [esp + 0x2f8], 2
call fcn.005653a0
lea ecx, [esp + 0x38]
mov byte [esp + 0x2f8], 1
call fcn.00557070
lea ecx, [esp + 0xd4]
mov byte [esp + 0x2f8], 0
call fcn.0056c310
mov dword [esp + 0x2f8], 0xffffffff
mov eax, dword [esp + 0x144]
lea ecx, [esp + 0x148]
cmp eax, ecx
je 0x568dae
call fcn.0055b9e0
mov ecx, dword [esp + 0x2f0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x28