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

Disassembly:
sub esp, 0xb0
mov eax, dword [0x10259b00]
xor eax, esp
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0xbc]
mov edx, dword [esp + 0xc4]
push ebp
mov ebp, dword [esp + 0xbc]
push esi
mov esi, dword [esp + 0xbc]
mov dword [esp + 0x30], esi
movups xmm0, xmmword [ebp]
mov dword [esp + 0x50], ebp
movzx ecx, word [esi]
mov dword [esp + 0x14], eax
movups xmmword [esp + 0x80], xmm0
cmp cx, 0x10
je 0x10052f81
cmp cx, 0x14
je 0x10052f81
cmp cx, 0x18
je 0x10052f81
cmp cx, 0x20
je 0x10052f81
pop esi
mov eax, 0xffffffce
pop ebp
mov ecx, dword [esp + 0xac]
xor ecx, esp
call fcn.1009fd88
add esp, 0xb0
ret
push ebx
mov eax, edx
lea ebx, [esi + 0x18018]
shl eax, 9
add ebx, eax
add eax, 0x19018
add eax, esi
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x3c], eax
push edi
cmp cx, 0x20
jne 0x10052fa9
mov al, 2
jmp 0x10052fb0
cmp cx, 0x18
setge al
mov byte [esp + 0x13], al
lea edi, [esi + 0x4018]
movzx eax, al
inc edx
mov dword [esp + 0x24], eax
shl eax, 3
mov dword [esp + 0x6c], eax
movsx ebx, cx
lea ecx, [esi + 0x18]
sub ebx, eax
mov dword [esp + 0x2c], 0x80000000
mov eax, dword [esi + 0x1a024]
inc ebx
mov dword [esp + 0x68], eax
lea eax, [esi + edx*2]
mov dword [esp + 0x30], eax
xor edx, edx
movsx eax, word [eax]
mov dword [esp + 0x28], eax
lea eax, [esi + 0x14018]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0xd8]
shr eax, 3
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
lea eax, [esi + 0x8018]
mov dword [esp + 0x60], eax
lea eax, [esi + 0xc018]
mov dword [esp + 0x70], ebx
mov dword [esp + 0x20], edx
mov dword [esp + 0x34], edi
mov dword [esp + 0x48], ecx
mov dword [esp + 0x64], eax
jmp 0x10053039
lea ecx, [esi + 0x18]
movsx eax, word [esi]
add eax, 0xfffffff0
cmp eax, 0x10
ja case.0x1005304f.17
movzx eax, byte [eax + 0x100537a4]
jmp dword [eax*4 + 0x10053790]
push edx
push 2
push dword [esp + 0x20]
push edi
push ecx
push dword [esp + 0xe4]
push dword [esp + 0x34]
call fcn.10057940
add esp, 0x1c
jmp 0x100530df
push edx
push 2
push dword [esp + 0x20]
push edi
push ecx
push dword [esp + 0xe4]
push dword [esp + 0x34]
call fcn.10057a20
add esp, 0x1c
jmp 0x100530df
push dword [esp + 0x24]
lea eax, [esi + 0x10018]
push eax
push edx
push 2
push dword [esp + 0x28]
push edi
push ecx
push dword [esp + 0xec]
push dword [esp + 0x3c]
call fcn.10057b10
jmp 0x100530dc
push dword [esp + 0x24]
lea eax, [esi + 0x10018]
push eax
push edx
push 2
push dword [esp + 0x28]
push edi
push ecx
push dword [esp + 0xec]
push dword [esp + 0x3c]
call fcn.10057d00
add esp, 0x24
mov eax, dword [esp + 0x18]
mov dword [esp + 0x14], eax
push dword [esi + 0x1a028]
lea eax, [esi + 0x14018]
push eax
lea eax, [esp + 0x80]
push eax
call fcn.10054350
mov eax, dword [esp + 0x5c]
push 9
push ebx
push 8
add eax, 0xe0
push eax
push dword [esp + 0x30]
lea eax, [esi + 0x8018]
push eax
lea eax, [esi + 0x18]
push eax
call fcn.10056df0
mov eax, dword [esp + 0x68]
push 9
push ebx
push 8
add eax, 0xe0
push eax
push dword [esp + 0x4c]
lea eax, [esi + 0xc018]
push eax
push edi
call fcn.10056df0
mov eax, dword [esp + 0x58]
add esp, 0x44
push 0xff
push eax
push eax
push 0xe
push 0x28
lea eax, [esp + 0xac]
push 0xa
push eax
call fcn.100561d0
lea eax, [esp + 0x58]
push eax
push ebx
push dword [esp + 0x38]
lea eax, [esp + 0xa0]
push eax
lea eax, [esi + 0x8018]
push eax
lea eax, [esp + 0xc8]
push eax
call fcn.10056840
mov ecx, eax
add esp, 0x34
test ecx, ecx
jne 0x10053775
mov eax, dword [esp + 0x14]
push 0xff
push eax
push eax
push 0xe
push 0x28
lea eax, [esp + 0xac]
push 0xa
push eax
call fcn.100561d0
lea eax, [esp + 0x60]
push eax
push ebx
push dword [esp + 0x38]
lea eax, [esp + 0xa0]
push eax
lea eax, [esi + 0xc018]
push eax
lea eax, [esp + 0xc8]
push eax
call fcn.10056840
mov ecx, eax
add esp, 0x34
test ecx, ecx
jne 0x10053775
mov eax, dword [esp + 0x44]
add eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x20]
cmp eax, dword [esp + 0x2c]
jae 0x10053207
mov dword [esp + 0x2c], eax
mov eax, edx
mov dword [esp + 0x28], eax
jmp 0x1005320b
mov eax, dword [esp + 0x28]
inc edx
mov dword [esp + 0x20], edx
cmp edx, 4
jle 0x10053036
mov ecx, dword [esp + 0x30]
movzx eax, ax
mov word [ecx], ax
movsx ecx, ax
movsx eax, word [esi]
add eax, 0xfffffff0
mov dword [esp + 0x5c], ecx
cmp eax, 0x10
ja case.0x10053240.17
movzx eax, byte [eax + 0x100537cc]
jmp dword [eax*4 + 0x100537b8]
push ecx
push 2
push dword [esp + 0xe0]
push edi
push dword [esp + 0x58]
push dword [esp + 0xe4]
push dword [esp + 0x34]
call fcn.10057940
add esp, 0x1c
jmp case.0x10053240.17
push ecx
push 2
push dword [esp + 0xe0]
push edi
push dword [esp + 0x58]
push dword [esp + 0xe4]
push dword [esp + 0x34]
call fcn.10057a20
add esp, 0x1c
jmp case.0x10053240.17
push dword [esp + 0x24]
lea eax, [esi + 0x10018]
push eax
push ecx
push 2
push dword [esp + 0xe8]
lea eax, [esi + 0x18]
push edi
push eax
push dword [esp + 0xec]
push dword [esp + 0x3c]
call fcn.10057b10
jmp 0x100532e5
push dword [esp + 0x24]
lea eax, [esi + 0x10018]
push eax
push ecx
push 2
push dword [esp + 0xe8]
lea eax, [esi + 0x18]
push edi
push eax
push dword [esp + 0xec]
push dword [esp + 0x3c]
call fcn.10057d00
add esp, 0x24
mov eax, dword [esp + 0xd8]
mov esi, 4
mov edi, dword [esp + 0x40]
shr eax, 5
add edi, 0x60
mov dword [esp + 0x2c], 4
mov ebp, eax
mov dword [esp + 0x28], 4
mov dword [esp + 0x4c], 0x80000000
mov dword [esp + 0x30], 0x80000000
mov dword [esp + 0x14], 0x40
mov dword [esp + 0x20], edi
nop dword [eax]
mov eax, dword [esp + 0x38]
push dword [eax + 0x1a028]
lea eax, [esp + 0x7c]
push dword [esp + 0x78]
push eax
call fcn.10054350
lea eax, [edi - 0x1000]
add esp, 0xc
mov dword [esp + 0x54], eax
mov edi, 8
nop word [eax + eax]
push 9
push ebx
push esi
push eax
push ebp
push dword [esp + 0x74]
push dword [esp + 0x60]
call fcn.10056df0
push 9
push ebx
push esi
push dword [esp + 0x48]
push ebp
push dword [esp + 0x94]
push dword [esp + 0x68]
call fcn.10056df0
mov eax, dword [esp + 0x8c]
add esp, 0x38
sub edi, 1
jne 0x10053360
mov edi, dword [esp + 0x18]
lea eax, [esp + 0x98]
push 0xff
push edi
push edi
push 0xe
push 0x28
push 0xa
push eax
call fcn.100561d0
lea eax, [esp + 0x58]
push eax
push ebx
push edi
lea eax, [esp + 0xa0]
push eax
push dword [esp + 0x8c]
lea eax, [esp + 0xc8]
push eax
call fcn.10056840
mov eax, dword [esp + 0x70]
add esp, 0x34
mov ecx, dword [esp + 0x14]
lea eax, [ecx + eax*8]
cmp eax, dword [esp + 0x30]
jae 0x100533f8
mov dword [esp + 0x30], eax
mov dword [esp + 0x28], esi
push 0xff
push edi
push edi
push 0xe
push 0x28
lea eax, [esp + 0xac]
push 0xa
push eax
call fcn.100561d0
lea eax, [esp + 0x60]
push eax
push ebx
push edi
lea eax, [esp + 0xa0]
push eax
push dword [esp + 0x90]
lea eax, [esp + 0xc8]
push eax
call fcn.10056840
mov edx, dword [esp + 0x48]
mov ecx, eax
mov eax, dword [esp + 0x78]
add esp, 0x34
lea eax, [edx + eax*8]
cmp eax, dword [esp + 0x4c]
jae 0x10053453
mov dword [esp + 0x4c], eax
mov dword [esp + 0x2c], esi
mov edi, dword [esp + 0x20]
add edx, 0x40
sub edi, 0xffffff80
mov dword [esp + 0x14], edx
add esi, 4
mov dword [esp + 0x20], edi
cmp edx, 0x80
jbe 0x10053330
mov esi, dword [esp + 0xd8]
xor eax, eax
cmp esi, dword [esp + 0x68]
mov edx, 0x20
mov ebp, dword [esp + 0x58]
cmovne eax, edx
mov edx, dword [esp + 0x30]
mov dword [esp + 0x34], eax
add edx, 0x40
add eax, dword [esp + 0x4c]
add edx, eax
cmp byte [esp + 0x13], 0
je 0x100534b1
mov eax, dword [esp + 0x24]
imul eax, esi
shl eax, 4
add edx, eax
mov edi, dword [esp + 0x38]
mov ebx, dword [esp + 0x34]
add ebx, 0x10
movsx eax, word [edi]
imul eax, esi
lea eax, [ebx + eax*2]
cmp edx, eax
mov dword [esp + 0x58], eax
sbb ebx, ebx
inc ebx
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x70]
cmp edx, eax
jae 0x10053754
push 0xc
push 0
push ebp
call fcn.10054440
xor eax, eax
mov ecx, 4
cmp esi, dword [esp + 0x74]
push 4
cmovne eax, ecx
or eax, dword [esp + 0x34]
add eax, eax
push eax
push ebp
call fcn.10054440
add esp, 0x18
cmp esi, dword [esp + 0x68]
je 0x1005351a
push 0x20
push esi
push ebp
call fcn.10054440
add esp, 0xc
push 8
push 2
push ebp
call fcn.10054440
push 8
push dword [esp + 0x6c]
push ebp
call fcn.10054440
push 8
push 9
push ebp
call fcn.10054440
mov edi, dword [esp + 0x4c]
mov eax, edi
push 8
or eax, 0x80
push eax
push ebp
call fcn.10054440
add esp, 0x30
test edi, edi
je 0x1005357a
mov esi, dword [esp + 0x50]
mov eax, edi
shl eax, 5
add esi, 0xffffffe0
add esi, eax
movsx eax, word [esi]
push 0x10
push eax
push ebp
call fcn.10054440
add esp, 0xc
lea esi, [esi + 2]
sub edi, 1
jne 0x10053563
push 8
push 9
push ebp
call fcn.10054440
mov edi, dword [esp + 0x38]
mov eax, edi
push 8
or eax, 0x80
push eax
push ebp
call fcn.10054440
add esp, 0x18
test edi, edi
je 0x100535c7
mov esi, dword [esp + 0x40]
mov eax, edi
shl eax, 5
add esi, 0xffffffe0
add esi, eax
nop dword [eax]
movsx eax, word [esi]
push 0x10
push eax
push ebp
call fcn.10054440
add esp, 0xc
lea esi, [esi + 2]
sub edi, 1
jne 0x100535b0
cmp byte [esp + 0x13], 0
je 0x10053617
mov eax, dword [esp + 0xd8]
lea edi, [eax + eax]
test edi, edi
je 0x10053617
mov ecx, dword [esp + 0x6c]
dec edi
mov esi, dword [esp + 0x38]
shr edi, 1
add esi, 0x1001a
inc edi
lea ebx, [ecx + ecx]
movzx edx, word [esi - 2]
movzx eax, word [esi]
shl edx, cl
push ebx
or edx, eax
push edx
push ebp
call fcn.10054440
mov ecx, dword [esp + 0x78]
lea esi, [esi + 4]
add esp, 0xc
sub edi, 1
jne 0x100535f1
mov ebx, dword [esp + 0x70]
mov edx, dword [esp + 0x28]
mov eax, edx
mov ecx, dword [esp + 0x50]
mov edi, dword [esp + 0x38]
add ecx, 0xffffffe0
push 9
push ebx
push edx
shl eax, 5
lea esi, [edi + 0x8018]
add eax, ecx
lea ecx, [edi + 0x18]
push eax
push dword [esp + 0xe8]
push esi
push ecx
call fcn.10056df0
mov eax, dword [esp + 0xf4]
push 0xff
push eax
push eax
push 0xe
push 0x28
lea eax, [esp + 0xc8]
push 0xa
push eax
call fcn.100561d0
lea eax, [esp + 0x74]
push eax
push ebx
push dword [esp + 0x118]
lea eax, [esp + 0xdc]
push ebp
push esi
push eax
call fcn.10056840
mov ecx, eax
add esp, 0x50
test ecx, ecx
jne 0x10053775
mov edx, dword [esp + 0x2c]
lea esi, [edi + 0xc018]
mov ecx, dword [esp + 0x40]
mov eax, edx
push 9
push ebx
add ecx, 0xffffffe0
shl eax, 5
push edx
add eax, ecx
lea ecx, [edi + 0x4018]
push eax
push dword [esp + 0xe8]
push esi
push ecx
call fcn.10056df0
mov eax, dword [esp + 0xf4]
push 0xff
push eax
push eax
push 0xe
push 0x28
lea eax, [esp + 0xc8]
push 0xa
push eax
call fcn.100561d0
lea eax, [esp + 0x7c]
push eax
push ebx
mov ebx, dword [esp + 0x118]
lea eax, [esp + 0xd8]
push ebx
push ebp
push esi
push eax
call fcn.10056840
mov ecx, eax
add esp, 0x50
mov dword [esp + 0x5c], ecx
test ecx, ecx
jne 0x10053775
push ebp
call fcn.10054330
mov esi, eax
lea eax, [esp + 0x8c]
push eax
call fcn.10054330
sub esi, eax
add esp, 8
mov eax, dword [esp + 0x58]
cmp esi, eax
jb 0x1005374e
movups xmm0, xmmword [esp + 0x88]
push eax
push esi
push str.compressed_frame_too_big:__u_vs.__u__n
movups xmmword [ebp], xmm0
call fcn.10007100
add esp, 0xc
jmp 0x1005375d
mov ecx, dword [esp + 0x5c]
jmp 0x10053756
mov ebx, esi
cmp dword [esp + 0x34], 1
jne 0x10053775
push ebx
push dword [esp + 0xd4]
push dword [esp + 0x24]
push ebp
push edi
call fcn.100537e0
add esp, 0x14
mov ecx, eax
pop edi
pop ebx
mov eax, ecx
mov ecx, dword [esp + 0xb4]
pop esi
pop ebp
xor ecx, esp
call fcn.1009fd88
add esp, 0xb0
ret