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

Disassembly:
sub esp, 0x10c
mov eax, dword [0x10444724]
xor eax, esp
mov dword [esp + 0x108], eax
mov eax, dword [esp + 0x110]
push ebx
mov ebx, dword [esp + 0x128]
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x118]
push ebp
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0x120]
push esi
mov esi, ecx
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x12c]
lea ecx, [esp + 0x20]
push edi
mov dword [esp + 0xb8], eax
mov dword [esp + 0x58], ebx
call fcn.100540c0
mov ecx, dword [esp + 0x12c]
mov dword [esp + 0x2c], ecx
lea ecx, [esp + 0x30]
push eax
call fcn.10053e70
lea ecx, [esp + 0x24]
mov dword [esp + 0x34], 0
call fcn.100540d0
lea ecx, [esp + 0x8c]
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
call fcn.100540c0
lea ecx, [esp + 0x90]
call fcn.100540c0
lea ecx, [esp + 0x94]
call fcn.100540c0
cmp dword [ebx + 4], 0
mov dword [esp + 0x20], 0
je 0x10249bb2
mov eax, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
mov dword [esp + 0xa8], eax
nop
lea eax, [esp + 0xf0]
mov ecx, ebx
push eax
call fcn.10248720
mov ebp, dword [esp + 0xf0]
lea ecx, [esp + 0x1c]
mov edi, dword [esp + 0xf4]
mov dword [esp + 0x9c], ebp
mov dword [esp + 0x24], edi
call fcn.100540c0
mov eax, dword [edi + 0xc]
and eax, 0x10
je 0x102492e1
mov eax, dword [ebp + 0x2c]
test al, al
jns 0x102490e2
lea ecx, [ebp + 8]
call fcn.1003d080
movzx eax, al
mov dword [ebp + 0x2c], eax
test al, 0xf
jne 0x10249115
mov eax, dword [ebp]
test eax, eax
je 0x102490f7
cmp dword [eax + 0x58], 2
je 0x102490f7
mov cl, 1
jmp 0x102490f9
xor cl, cl
test cl, cl
jne 0x10249115
test eax, eax
je 0x1024910b
cmp dword [ebp + 4], 1
jne 0x1024910b
mov al, 1
jmp 0x1024910d
xor al, al
test al, al
jne 0x10249115
mov al, 1
jmp 0x10249117
xor al, al
test al, al
je 0x102492e1
mov eax, dword [esi + 8]
inc eax
cdq
mov edi, eax
mov ebx, edx
mov eax, dword [esi + 0xc]
cdq
mov ecx, edx
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], ecx
cmp ebx, ecx
jl 0x10249147
jg 0x10249140
cmp edi, eax
jbe 0x10249147
mov byte [esp + 0x13], 1
jmp 0x1024914c
mov byte [esp + 0x13], 0
mov eax, edi
mov ecx, ebx
shld ecx, eax, 1
mov ebp, edi
mov edx, ebx
add eax, eax
add ebp, eax
adc edx, ecx
cmp dword [esp + 0x18], edx
mov edx, dword [esp + 0x14]
jl 0x1024917d
jg 0x1024916e
cmp edx, ebp
jbe 0x1024917d
mov al, byte [esi + 0x10]
test al, 1
je 0x1024917d
test al, 2
jne 0x1024917d
mov al, 1
jmp 0x1024917f
xor al, al
cmp byte [esp + 0x13], 0
jne 0x1024918e
test al, al
je 0x10249225
mov eax, edi
mov ecx, ebx
add eax, 1
adc ecx, 0
shrd eax, ecx, 1
sar ecx, 1
add eax, edi
adc ecx, ebx
add eax, 7
adc ecx, 0
and eax, 0xfffffff8
cmp eax, edx
jne 0x102491b5
cmp ecx, dword [esp + 0x18]
je 0x10249225
cmp ecx, 0xffffffff
jg 0x102491ca
jl 0x102491c3
cmp eax, 0x80000001
jae 0x102491ca
mov eax, 0x80000001
jmp 0x102491dc
test ecx, ecx
jl 0x102491dc
jg 0x102491d7
cmp eax, 0x7fffffff
jbe 0x102491dc
mov eax, 0x7fffffff
push 0x30
push eax
mov dword [esi + 0xc], eax
call fcn.10061340
mov ecx, dword [esi + 8]
add esp, 8
mov edi, eax
lea ecx, [ecx + ecx*2]
shl ecx, 4
test ecx, ecx
je 0x10249206
push ecx
push dword [esi + 4]
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov al, byte [esi + 0x10]
test al, 1
je 0x1024921b
push dword [esi + 4]
call sym.skottie.dll_void___cdecl_sk_free_void__
mov al, byte [esi + 0x10]
add esp, 4
and al, 0xfd
mov dword [esi + 4], edi
or al, 1
mov byte [esi + 0x10], al
mov eax, dword [esi + 8]
lea edi, [eax + eax*2]
inc eax
shl edi, 4
add edi, dword [esi + 4]
mov dword [esi + 8], eax
mov dword [edi], 0xffffffff
mov dword [edi + 4], 0
call fcn.1003c3c0
push 1
movups xmm0, xmmword [eax]
movups xmmword [edi + 8], xmm0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [edi + 0x18], xmm0
movq xmm0, qword [eax + 0x20]
movq qword [edi + 0x28], xmm0
mov edi, dword [esp + 0x5c]
mov edi, dword [edi + 0x28]
mov ecx, edi
call fcn.10248a00
mov eax, dword [edi + 4]
lea ebx, [eax + eax*2]
inc eax
shl ebx, 4
add ebx, dword [edi]
mov dword [edi + 4], eax
lea ecx, [ebx + 0xc]
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
call fcn.100540c0
lea ecx, [ebx + 0x10]
call fcn.100540c0
lea ecx, [ebx + 0x14]
call fcn.100540c0
lea ecx, [ebx + 0x24]
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x20], 0
call fcn.100540c0
lea ecx, [ebx + 0x28]
call fcn.100540c0
lea ecx, [ebx + 0x2c]
call fcn.100540c0
mov ebx, dword [esp + 0x58]
jmp 0x10249b94
lea ecx, [esp + 0x50]
call fcn.100540c0
push dword [esp + 0x20]
lea eax, [esp + 0x54]
push str.CoordTransformMatrix__d
push eax
call fcn.10054df0
mov eax, dword [edi + 0xc]
add esp, 0xc
and eax, 0x10
mov ecx, 0x10
mov eax, 1
cmovne eax, ecx
mov dword [esp + 0x28], eax
mov eax, dword [esi + 8]
inc eax
cdq
mov ebx, eax
mov ebp, edx
mov eax, dword [esi + 0xc]
cdq
mov ecx, edx
mov dword [esp + 0x18], eax
mov dword [esp + 0x5c], ecx
cmp ebp, ecx
jl 0x1024933f
jg 0x10249338
cmp ebx, eax
jbe 0x1024933f
mov byte [esp + 0x13], 1
jmp 0x10249344
mov byte [esp + 0x13], 0
mov eax, ebx
mov dword [esp + 0x14], ebx
mov ecx, ebp
mov edx, ebp
shld ecx, eax, 1
add eax, eax
add dword [esp + 0x14], eax
adc edx, ecx
cmp dword [esp + 0x5c], edx
mov edx, dword [esp + 0x18]
jl 0x1024937b
jg 0x1024936c
cmp edx, dword [esp + 0x14]
jbe 0x1024937b
mov al, byte [esi + 0x10]
test al, 1
je 0x1024937b
test al, 2
jne 0x1024937b
mov al, 1
jmp 0x1024937d
xor al, al
cmp byte [esp + 0x13], 0
jne 0x1024938c
test al, al
je 0x10249425
mov eax, ebx
mov ecx, ebp
add eax, 1
adc ecx, 0
shrd eax, ecx, 1
sar ecx, 1
add eax, ebx
adc ecx, ebp
add eax, 7
adc ecx, 0
and eax, 0xfffffff8
cmp eax, edx
jne 0x102493b3
cmp ecx, dword [esp + 0x5c]
je 0x10249425
cmp ecx, 0xffffffff
jg 0x102493c8
jl 0x102493c1
cmp eax, 0x80000001
jae 0x102493c8
mov eax, 0x80000001
jmp 0x102493da
test ecx, ecx
jl 0x102493da
jg 0x102493d5
cmp eax, 0x7fffffff
jbe 0x102493da
mov eax, 0x7fffffff
push 0x30
push eax
mov dword [esi + 0xc], eax
call fcn.10061340
mov ecx, dword [esi + 8]
add esp, 8
mov edx, dword [esi + 4]
mov ebx, eax
lea ecx, [ecx + ecx*2]
shl ecx, 4
test ecx, ecx
je 0x10249408
push ecx
push edx
push ebx
call sub.VCRUNTIME140.dll_memcpy
mov edx, dword [esi + 4]
add esp, 0xc
mov al, byte [esi + 0x10]
test al, 1
je 0x1024941b
push edx
call sym.skottie.dll_void___cdecl_sk_free_void__
mov al, byte [esi + 0x10]
add esp, 4
and al, 0xfd
mov dword [esi + 4], ebx
or al, 1
mov byte [esi + 0x10], al
mov eax, dword [esi + 8]
lea ebp, [eax + eax*2]
inc eax
shl ebp, 4
add ebp, dword [esi + 4]
mov dword [esi + 8], eax
mov dword [ebp], 0xffffffff
mov dword [ebp + 4], 0
call fcn.1003c3c0
movups xmm0, xmmword [eax]
movups xmmword [ebp + 8], xmm0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [ebp + 0x18], xmm0
movq xmm0, qword [eax + 0x20]
movq qword [ebp + 0x28], xmm0
mov eax, dword [edi + 0xc]
and eax, 0x10
je 0x1024948e
mov edi, dword [esp + 0x9c]
mov eax, dword [edi + 0x2c]
test al, al
jns 0x10249485
lea ecx, [edi + 8]
call fcn.1003d080
movzx eax, al
mov dword [edi + 0x2c], eax
test al, 0xc
mov eax, 0x15
je 0x10249493
mov eax, 0x17
mov dword [ebp + 4], eax
mov edi, eax
mov ebx, dword [esp + 0x50]
push 3
add ebx, 8
push 0x1038bcfc
push ebx
call dword [esp + 0xb4]
add esp, 0xc
lea ecx, [esp + 0xb4]
test eax, eax
mov eax, dword [esp + 0x98]
setne byte [esp + 0xac]
push ecx
mov eax, dword [eax]
lea ecx, [esp + 0xb4]
push 0
push dword [esp + 0xb4]
push ebx
mov ebx, dword [esp + 0x34]
push edi
push dword [esp + 0x3c]
mov edi, dword [esp + 0xb0]
push ebx
push ecx
mov ecx, edi
call dword [eax + 0x20]
mov eax, dword [esp + 0xb0]
lea ecx, [esp + 0x1c]
mov dword [ebp], eax
push dword [esp + 0xb4]
call fcn.10054180
mov eax, dword [edi]
mov ecx, edi
push dword [ebp]
call dword [eax + 4]
mov edi, eax
mov ecx, dword [edi]
mov dword [esp + 0x80], ecx
mov ecx, dword [edi + 4]
mov dword [esp + 0x84], ecx
mov ecx, dword [edi + 8]
mov dword [esp + 0x88], ecx
lea ecx, [edi + 0xc]
push ecx
lea ecx, [esp + 0x90]
call fcn.10054120
lea eax, [edi + 0x10]
push eax
lea ecx, [esp + 0x94]
call fcn.10054120
lea eax, [edi + 0x14]
push eax
lea ecx, [esp + 0x98]
call fcn.10054120
lea ecx, [esp + 0x50]
call fcn.100540d0
lea ecx, [esp + 0x74]
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
call fcn.100540c0
lea ecx, [esp + 0x78]
call fcn.100540c0
lea ecx, [esp + 0x7c]
call fcn.100540c0
mov eax, dword [ebx + 0xc]
and eax, 0x10
jne 0x10249964
mov eax, dword [esp + 0x30]
cmp dword [eax], 0
jne case.default.0x102495c5
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx]
movzx eax, byte [eax + 0x10249c14]
jmp dword [eax*4 + 0x10249c00]
mov dword [esp + 0x34], 0xffffffff
mov eax, dword [ecx + 0xc]
add eax, 8
push eax
lea eax, [esp + 0x34]
push str.float3__s__1_
push eax
call fcn.10054df0
add esp, 0xc
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0x64]
mov dword [esp + 0x60], eax
lea eax, [esp + 0x30]
push eax
call fcn.10053ed0
mov ebp, dword [esp + 0xb8]
movaps xmm0, xmmword [0x103a1300]
movups xmmword [esp + 0x38], xmm0
mov dword [esp + 0x48], 0
mov ecx, dword [ebp + 0x24]
mov eax, ecx
and al, 0xc0
mov dword [esp + 0x4c], 0
cmp al, 0x80
jne 0x10249673
mov ecx, ebp
call fcn.1003d040
movzx ecx, al
mov dword [ebp + 0x24], ecx
test ecx, 8
jne 0x102496aa
mov edi, dword [esp + 0x9c]
mov ecx, dword [edi + 0x2c]
mov eax, ecx
and al, 0xc0
cmp al, 0x80
jne 0x1024969b
lea ecx, [edi + 8]
call fcn.1003d040
movzx ecx, al
mov dword [edi + 0x2c], ecx
test ecx, 8
jne 0x102496aa
cmp dword [esp + 0x60], 3
jne 0x102496db
movaps xmm0, xmmword [0x103a9ee0]
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
movups xmmword [esp + 0x38], xmm0
movq xmm0, qword [esp + 0x108]
movq qword [esp + 0x48], xmm0
lea ecx, [esp + 0x54]
call fcn.100540c0
push dword [esp + 0x20]
lea eax, [esp + 0x58]
push str.TransformedCoords__d
push eax
call fcn.10054df0
mov ecx, dword [esp + 0xc8]
lea eax, [esp + 0x44]
add esp, 0xc
push 0
push eax
mov eax, dword [esp + 0x5c]
add eax, 8
push eax
call fcn.1024a150
mov eax, dword [ebx + 0x50]
lea ecx, [esp + 0x100]
mov dword [esp + 0xf8], eax
mov eax, dword [ebx + 0x54]
mov dword [esp + 0xfc], eax
lea eax, [ebx + 0x58]
push eax
call fcn.100821d0
cmp dword [esp + 0xfc], 1
mov edx, dword [esp + 0x114]
setne bl
cmp edx, 0x10
jb 0x10249780
mov ecx, dword [esp + 0x100]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10249776
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10249bfa
push edx
push ecx
call fcn.1037dfe9
add esp, 8
test bl, bl
je 0x102497ba
mov eax, dword [esp + 0x64]
add eax, 8
push eax
mov eax, dword [esp + 0x20]
add eax, 8
cmp dword [esp + 0x3c], 0x13
push eax
push dword [esp + 0x48]
jne 0x102497a6
push str._s____s___s_.xy_
jmp 0x102497ab
push str._s___s___s_
push dword [esp + 0xb0]
call fcn.10088da0
add esp, 0x14
push dword [esp + 0x4c]
mov edi, dword [esp + 0x3c]
lea ecx, [esp + 0xa8]
call fcn.10053fa0
lea eax, [esp + 0xa4]
mov dword [esp + 0xf8], edi
push eax
lea ecx, [esp + 0x108]
mov dword [esp + 0x100], 2
mov dword [esp + 0x104], 0
call fcn.10053e70
lea ecx, [esp + 0x108]
call fcn.100540c0
lea ecx, [esp + 0x10c]
call fcn.100540c0
lea ecx, [esp + 0xa4]
call fcn.100540d0
mov eax, dword [esp + 0xf8]
lea ecx, [esp + 0x74]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x100]
mov dword [esp + 0x70], eax
lea eax, [esp + 0x104]
push eax
call fcn.10054100
lea eax, [esp + 0x108]
push eax
lea ecx, [esp + 0x7c]
call fcn.10054100
lea eax, [esp + 0x10c]
push eax
lea ecx, [esp + 0x80]
call fcn.10054100
lea ecx, [esp + 0x10c]
call fcn.100540d0
lea ecx, [esp + 0x108]
call fcn.100540d0
lea ecx, [esp + 0x104]
call fcn.100540d0
mov eax, dword [esp + 0x40]
lea ecx, [esp + 0x100]
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0xfc], eax
lea eax, [esp + 0x1c]
push eax
call fcn.10053ed0
lea eax, [esp + 0x64]
push eax
lea ecx, [esp + 0x108]
call fcn.10053ed0
mov edi, dword [esp + 0x24]
lea ecx, [esi + 0x14]
push 1
mov dword [esp + 0x10c], edi
call fcn.10248870
mov edx, dword [esi + 0x18]
mov eax, dword [esi + 0x14]
lea ecx, [edx + edx*4]
lea edi, [eax + ecx*4]
lea eax, [edx + 1]
mov dword [esi + 0x18], eax
lea ecx, [edi + 8]
mov eax, dword [esp + 0xf8]
mov dword [edi], eax
mov eax, dword [esp + 0xfc]
mov dword [edi + 4], eax
lea eax, [esp + 0x100]
push eax
call fcn.10053e70
lea eax, [esp + 0x104]
push eax
lea ecx, [edi + 0xc]
call fcn.10053e70
mov eax, dword [esp + 0x108]
lea ecx, [esp + 0x104]
mov dword [edi + 0x10], eax
call fcn.100540d0
lea ecx, [esp + 0x100]
call fcn.100540d0
lea ecx, [esp + 0x54]
call fcn.100540d0
lea ecx, [esp + 0x64]
call fcn.100540d0
mov eax, dword [esp + 0x68]
lea ecx, [esp + 0x44]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x40], eax
lea eax, [esp + 0x74]
push eax
call fcn.10053ed0
lea eax, [esp + 0x78]
push eax
lea ecx, [esp + 0x4c]
call fcn.10053ed0
lea eax, [esp + 0x7c]
push eax
lea ecx, [esp + 0x50]
call fcn.10053ed0
mov eax, dword [esp + 0x80]
lea ecx, [esp + 0x104]
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x100], eax
lea eax, [esp + 0x8c]
push eax
call fcn.10053ed0
lea eax, [esp + 0x90]
push eax
lea ecx, [esp + 0x10c]
call fcn.10053ed0
lea eax, [esp + 0x94]
push eax
lea ecx, [esp + 0x110]
call fcn.10053ed0
mov eax, dword [esp + 0xf8]
lea ecx, [esp + 0xcc]
mov ebx, dword [esp + 0x58]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0xc4], eax
mov eax, dword [esp + 0x100]
mov edi, dword [ebx + 0x28]
mov dword [esp + 0xc8], eax
lea eax, [esp + 0x104]
push eax
call fcn.10053ed0
lea eax, [esp + 0x108]
push eax
lea ecx, [esp + 0xd4]
call fcn.10053ed0
lea eax, [esp + 0x10c]
push eax
lea ecx, [esp + 0xd8]
call fcn.10053ed0
mov eax, dword [esp + 0x38]
lea ecx, [esp + 0xe4]
mov dword [esp + 0xd8], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0xe0], eax
lea eax, [esp + 0x44]
push eax
call fcn.10053ed0
lea eax, [esp + 0x48]
push eax
lea ecx, [esp + 0xec]
call fcn.10053ed0
lea eax, [esp + 0x4c]
push eax
lea ecx, [esp + 0xf0]
call fcn.10053ed0
push 1
mov ecx, edi
call fcn.10248a00
mov eax, dword [edi + 4]
lea ecx, [eax + eax*2]
shl ecx, 4
add ecx, dword [edi]
inc eax
mov dword [edi + 4], eax
lea eax, [esp + 0xc0]
push eax
call fcn.102487f0
lea ecx, [esp + 0xec]
call fcn.100540d0
lea ecx, [esp + 0xe8]
call fcn.100540d0
lea ecx, [esp + 0xe4]
call fcn.100540d0
lea ecx, [esp + 0xd4]
call fcn.100540d0
lea ecx, [esp + 0xd0]
call fcn.100540d0
lea ecx, [esp + 0xcc]
call fcn.100540d0
lea ecx, [esp + 0x10c]
call fcn.100540d0
lea ecx, [esp + 0x108]
call fcn.100540d0
lea ecx, [esp + 0x104]
call fcn.100540d0
lea ecx, [esp + 0x4c]
call fcn.100540d0
lea ecx, [esp + 0x48]
call fcn.100540d0
lea ecx, [esp + 0x44]
call fcn.100540d0
lea ecx, [esp + 0x7c]
call fcn.100540d0
lea ecx, [esp + 0x78]
call fcn.100540d0
lea ecx, [esp + 0x74]
call fcn.100540d0
lea ecx, [esp + 0x1c]
call fcn.100540d0
mov ecx, ebx
call fcn.10248580
inc dword [esp + 0x20]
cmp dword [ebx + 4], 0
jne 0x10249090
invalid
lea ecx, [esp + 0x94]
call fcn.100540d0
lea ecx, [esp + 0x90]
call fcn.100540d0
lea ecx, [esp + 0x8c]
call fcn.100540d0
lea ecx, [esp + 0x30]
call fcn.100540d0
mov ecx, dword [esp + 0x118]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.1037e005
add esp, 0x10c
ret 0x18
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
add dword [esi - 0x6a33efdc], edx
and al, 16
salc
xchg ebp, eax
and al, 0x10
loopne 0x10249ba3
and al, 0x10
not dword [ebp + 0x1001024]
add dword [edx], eax
add eax, dword [ecx + eax]
add al, byte [ebx]
add al, 1
add al, byte [ebx]
add al, 1
add al, byte [ebx]
add al, 1
add al, byte [ebx]
add al, 0
add byte [eax], al
add dword [edx], eax
add eax, dword [eax + eax]
add byte [eax], al
add dword [edx], eax
add eax, dword [ecx + eax]
add al, byte [eax]
add byte [eax], al
add byte [eax], al
int3