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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x284
push ebx
mov ebx, dword [ebp + 8]
push esi
mov esi, dword [ebp + 0x10]
push edi
push esi
push ebx
call sub.CRLUTL110.dll__UTLSubpathArea_8
mov edi, dword [ebp + 0xc]
xor eax, eax
push esi
push eax
push edi
mov dword [esp + 0x7c], eax
fstp st(0)
mov dword [esp + 0x80], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
call fcn.004a5570
add esp, 0xc
cmp eax, esi
mov dword [esp + 0x14], eax
jge 0x4a4e01
call sub.CRLUTL110.dll__UICUR_UpdateWaitCursor_0
mov eax, dword [esp + 0x14]
mov cl, byte [eax + edi]
and cl, 0xc0
cmp cl, 0x40
jne 0x4a4807
mov esi, dword [ebx + eax*8 - 4]
mov edi, dword [ebx + eax*8 + 4]
cmp esi, edi
mov dword [esp + 0x1c], esi
jg 0x4a4791
mov dword [esp + 0x1c], edi
mov ecx, dword [esp + 0x14]
mov edx, dword [ebx + ecx*8]
lea eax, [ebx + ecx*8]
mov ecx, dword [ebx + ecx*8 - 8]
cmp ecx, edx
mov dword [esp + 0x20], ecx
jg 0x4a47ab
mov dword [esp + 0x20], edx
cmp esi, edi
mov dword [esp + 0x18], esi
jl 0x4a47b7
mov dword [esp + 0x18], edi
cmp ecx, edx
mov dword [esp + 0x24], ecx
jl 0x4a47c3
mov dword [esp + 0x24], edx
mov ebx, dword [ebp + 8]
mov ecx, dword [esp + 0x14]
mov edi, dword [ebp + 0xc]
mov esi, dword [ebp + 0x10]
mov edx, dword [ebx + ecx*8 - 8]
mov dword [esp + 0x80], edx
mov ecx, dword [ebx + ecx*8 - 4]
mov dword [esp + 0x84], ecx
mov edx, dword [eax]
mov dword [esp + 0x88], edx
mov eax, dword [eax + 4]
mov dword [esp + 0x8c], eax
mov eax, 1
mov dword [esp + 0x34], eax
jmp 0x4a4956
mov ecx, dword [ebp + 8]
mov edx, dword [esp + 0x14]
mov eax, dword [ecx + edx*8 - 4]
lea ebx, [ecx + edx*8 - 0x18]
mov edx, eax
mov ecx, dword [ebx + 0x1c]
cmp eax, ecx
jg 0x4a4821
mov edx, ecx
mov esi, dword [ebx + 0xc]
cmp esi, edx
jle 0x4a482c
mov edx, esi
jmp 0x4a4834
cmp eax, ecx
mov edx, eax
jg 0x4a4834
mov edx, ecx
mov edi, dword [ebx + 4]
cmp edi, edx
jle 0x4a4841
mov dword [esp + 0x1c], edi
jmp 0x4a485f
cmp eax, ecx
mov edx, eax
jg 0x4a4849
mov edx, ecx
cmp esi, edx
jle 0x4a4853
mov dword [esp + 0x1c], esi
jmp 0x4a485f
cmp eax, ecx
mov dword [esp + 0x1c], eax
jg 0x4a485f
mov dword [esp + 0x1c], ecx
cmp eax, ecx
mov edx, eax
jl 0x4a4867
mov edx, ecx
cmp esi, edx
jge 0x4a486f
mov edx, esi
jmp 0x4a4877
cmp eax, ecx
mov edx, eax
jl 0x4a4877
mov edx, ecx
cmp edi, edx
jge 0x4a4881
mov dword [esp + 0x18], edi
jmp 0x4a489f
cmp eax, ecx
mov edx, eax
jl 0x4a4889
mov edx, ecx
cmp esi, edx
jge 0x4a4893
mov dword [esp + 0x18], esi
jmp 0x4a489f
cmp eax, ecx
mov dword [esp + 0x18], eax
jl 0x4a489f
mov dword [esp + 0x18], ecx
mov eax, dword [ebx + 0x10]
mov ecx, dword [ebx + 0x18]
cmp eax, ecx
mov edx, eax
jg 0x4a48ad
mov edx, ecx
mov esi, dword [ebx + 8]
cmp esi, edx
jle 0x4a48b8
mov edx, esi
jmp 0x4a48c0
cmp eax, ecx
mov edx, eax
jg 0x4a48c0
mov edx, ecx
mov edi, dword [ebx]
cmp edi, edx
jle 0x4a48cc
mov dword [esp + 0x20], edi
jmp 0x4a48ea
cmp eax, ecx
mov edx, eax
jg 0x4a48d4
mov edx, ecx
cmp esi, edx
jle 0x4a48de
mov dword [esp + 0x20], esi
jmp 0x4a48ea
cmp eax, ecx
mov dword [esp + 0x20], eax
jg 0x4a48ea
mov dword [esp + 0x20], ecx
cmp eax, ecx
mov edx, eax
jl 0x4a48f2
mov edx, ecx
cmp esi, edx
jge 0x4a48fa
mov edx, esi
jmp 0x4a4902
cmp eax, ecx
mov edx, eax
jl 0x4a4902
mov edx, ecx
cmp edi, edx
jge 0x4a490c
mov dword [esp + 0x24], edi
jmp 0x4a492a
cmp eax, ecx
mov edx, eax
jl 0x4a4914
mov edx, ecx
cmp esi, edx
jge 0x4a491e
mov dword [esp + 0x24], esi
jmp 0x4a492a
cmp eax, ecx
mov dword [esp + 0x24], eax
jl 0x4a492a
mov dword [esp + 0x24], ecx
push ebx
push 0
call fcn.004a5620
add esp, 8
push eax
lea eax, [esp + 0x84]
push eax
push ebx
call sub.CRLUTL110.dll__UTLBezierToLines_12
mov esi, dword [ebp + 0x10]
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov dword [esp + 0x34], eax
mov eax, 1
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x38], eax
cmp ecx, eax
jl 0x4a4de5
mov ecx, dword [esp + 0x14]
push esi
lea eax, [ecx + 1]
push eax
push edi
call fcn.004a5570
inc eax
push esi
push eax
push edi
call fcn.004a5570
add esp, 0x18
cmp eax, esi
mov dword [esp + 0x2c], eax
jge 0x4a4dd0
jmp 0x4a4995
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov eax, dword [esp + 0x2c]
mov dl, byte [eax + edi]
and dl, 0xc0
cmp dl, 0x40
jne 0x4a4ae5
mov ecx, dword [ebx + eax*8 + 4]
lea esi, [ebx + eax*8 - 8]
mov eax, dword [ebx + eax*8 - 4]
cmp eax, ecx
mov dword [esp + 0x10], eax
jg 0x4a49c0
mov dword [esp + 0x10], ecx
mov edx, dword [esi]
mov edi, dword [esi + 8]
cmp edx, edi
mov ebx, edx
jg 0x4a49cd
mov ebx, edi
cmp eax, ecx
jl 0x4a49d3
mov eax, ecx
cmp edx, edi
jl 0x4a49d9
mov edx, edi
cmp dword [esp + 0x24], ebx
jg 0x4a4da8
cmp dword [esp + 0x20], edx
jl 0x4a4da8
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
cmp ecx, edx
jg 0x4a4da8
cmp dword [esp + 0x1c], eax
jl 0x4a4da8
mov ebx, dword [esp + 0x38]
lea edx, [esp + 0x4c]
push edx
push esi
lea edi, [esp + ebx*8 + 0x80]
push edi
call fcn.004a5c00
lea ecx, [esp + 0x60]
lea edx, [esp + 0x4c]
push ecx
push eax
lea eax, [esp + 0x6c]
push edx
lea ecx, [esp + 0x64]
push eax
push ecx
push esi
push edi
call fcn.004a6f40
add esp, 0x28
test eax, eax
je 0x4a4da8
mov ecx, dword [ebp + 0x18]
mov esi, dword [ecx]
cmp esi, 0x400
jge 0x4a4e0d
mov eax, dword [ebp + 0x14]
mov edi, dword [esp + 0x2c]
shl esi, 5
add esi, eax
dec ebx
mov dword [esp + 0x3c], ebx
fild dword [esp + 0x3c]
fadd qword [esp + 0x58]
fidiv dword [esp + 0x34]
fstp qword [esi]
fld qword [esi]
fsub qword [esp + 0x60]
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
mov dword [esi + 8], edx
mov edx, dword [esp + 0x14]
fabs
fcomp qword [0x520760]
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], edx
mov dword [esi + 0x14], edi
mov byte [esi + 0x1c], 0
fnstsw ax
test ah, 0x41
je 0x4a4ab0
cmp edx, dword [esp + 0x70]
je 0x4a4da8
fld qword [esi + 8]
fsub qword [esp + 0x68]
fabs
fcomp qword [0x520760]
fnstsw ax
test ah, 0x41
je 0x4a4ad0
cmp edi, dword [esp + 0x74]
je 0x4a4da8
mov eax, dword [ecx]
lea edi, [esp + 0x60]
inc eax
mov dword [ecx], eax
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
jmp 0x4a4da8
mov ecx, dword [ebx + eax*8 + 4]
lea ebx, [ebx + eax*8 - 0x18]
mov dword [esp + 0x30], ebx
mov eax, dword [ebx + 0x14]
cmp eax, ecx
mov edx, eax
jg 0x4a4afc
mov edx, ecx
mov esi, dword [ebx + 0xc]
cmp esi, edx
jle 0x4a4b07
mov edx, esi
jmp 0x4a4b0f
cmp eax, ecx
mov edx, eax
jg 0x4a4b0f
mov edx, ecx
mov ebx, dword [esp + 0x30]
mov edi, dword [ebx + 4]
cmp edi, edx
jle 0x4a4b20
mov dword [esp + 0x10], edi
jmp 0x4a4b3e
cmp eax, ecx
mov edx, eax
jg 0x4a4b28
mov edx, ecx
cmp esi, edx
jle 0x4a4b32
mov dword [esp + 0x10], esi
jmp 0x4a4b3e
cmp eax, ecx
mov dword [esp + 0x10], eax
jg 0x4a4b3e
mov dword [esp + 0x10], ecx
cmp eax, ecx
mov edx, eax
jl 0x4a4b46
mov edx, ecx
cmp esi, edx
jge 0x4a4b4e
mov edx, esi
jmp 0x4a4b56
cmp eax, ecx
mov edx, eax
jl 0x4a4b56
mov edx, ecx
cmp edi, edx
jge 0x4a4b60
mov dword [esp + 0x28], edi
jmp 0x4a4b7e
cmp eax, ecx
mov edx, eax
jl 0x4a4b68
mov edx, ecx
cmp esi, edx
jge 0x4a4b72
mov dword [esp + 0x28], esi
jmp 0x4a4b7e
cmp eax, ecx
mov dword [esp + 0x28], eax
jl 0x4a4b7e
mov dword [esp + 0x28], ecx
mov edx, dword [ebx + 0x10]
mov esi, dword [ebx + 0x18]
cmp edx, esi
mov edi, edx
jg 0x4a4b8c
mov edi, esi
mov eax, dword [ebx + 8]
cmp eax, edi
jle 0x4a4b97
mov edi, eax
jmp 0x4a4b9f
cmp edx, esi
mov edi, edx
jg 0x4a4b9f
mov edi, esi
mov ecx, dword [ebx]
cmp ecx, edi
jle 0x4a4ba9
mov ebx, ecx
jmp 0x4a4bc1
cmp edx, esi
mov edi, edx
jg 0x4a4bb1
mov edi, esi
cmp eax, edi
jle 0x4a4bb9
mov ebx, eax
jmp 0x4a4bc1
cmp edx, esi
mov ebx, edx
jg 0x4a4bc1
mov ebx, esi
cmp edx, esi
mov edi, edx
jl 0x4a4bc9
mov edi, esi
cmp eax, edi
jge 0x4a4bd1
mov edi, eax
jmp 0x4a4bd9
cmp edx, esi
mov edi, edx
jl 0x4a4bd9
mov edi, esi
cmp ecx, edi
jge 0x4a4be1
mov edx, ecx
jmp 0x4a4bf7
cmp edx, esi
mov edi, edx
jl 0x4a4be9
mov edi, esi
cmp eax, edi
jge 0x4a4bf1
mov edx, eax
jmp 0x4a4bf7
cmp edx, esi
jl 0x4a4bf7
mov edx, esi
cmp dword [esp + 0x24], ebx
jg 0x4a4da8
cmp dword [esp + 0x20], edx
jl 0x4a4da8
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
cmp eax, ecx
jg 0x4a4da8
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x1c]
cmp eax, edx
jl 0x4a4da8
mov esi, dword [esp + 0x30]
push esi
push 0
call fcn.004a5620
add esp, 8
push eax
lea eax, [esp + 0x18c]
push eax
push esi
call sub.CRLUTL110.dll__UTLBezierToLines_12
cmp eax, 1
mov dword [esp + 0x3c], eax
mov dword [esp + 0x28], 1
jl 0x4a4da8
lea ecx, [esp + 0x194]
mov dword [esp + 0x30], ecx
mov edx, dword [ecx - 8]
mov esi, dword [ecx]
cmp edx, esi
mov dword [esp + 0x10], edx
jg 0x4a4c7a
mov dword [esp + 0x10], esi
mov eax, dword [ecx - 0xc]
lea edi, [ecx - 0xc]
mov ecx, dword [ecx - 4]
mov ebx, eax
cmp eax, ecx
jg 0x4a4c8b
mov ebx, ecx
cmp edx, esi
jl 0x4a4c91
mov edx, esi
cmp eax, ecx
jl 0x4a4c97
mov eax, ecx
cmp dword [esp + 0x24], ebx
jg 0x4a4d88
cmp dword [esp + 0x20], eax
jl 0x4a4d88
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
cmp ecx, eax
jg 0x4a4d88
cmp dword [esp + 0x1c], edx
jl 0x4a4d88
mov ebx, dword [esp + 0x38]
lea edx, [esp + 0x4c]
push edx
push edi
lea esi, [esp + ebx*8 + 0x80]
push esi
call fcn.004a5c00
lea ecx, [esp + 0x60]
lea edx, [esp + 0x4c]
push ecx
push eax
lea eax, [esp + 0x6c]
push edx
lea ecx, [esp + 0x64]
push eax
push ecx
push edi
push esi
call fcn.004a6f40
add esp, 0x28
test eax, eax
je 0x4a4d88
mov ecx, dword [ebp + 0x18]
mov esi, dword [ecx]
cmp esi, 0x400
jge 0x4a4e0d
mov edx, dword [ebp + 0x14]
mov eax, dword [esp + 0x14]
shl esi, 5
add esi, edx
dec ebx
mov dword [esp + 0x10], ebx
mov edx, dword [esp + 0x28]
fild dword [esp + 0x10]
dec edx
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x2c]
fadd qword [esp + 0x58]
fidiv dword [esp + 0x34]
fstp qword [esi]
fild dword [esp + 0x10]
fadd qword [esp + 0x40]
fidiv dword [esp + 0x3c]
mov dword [esi + 0x10], eax
mov eax, dword [esi]
test eax, eax
mov dword [esi + 0x14], edx
mov byte [esi + 0x1c], 0
fstp qword [esi + 8]
jne 0x4a4d78
cmp dword [esi + 4], 0x3ff00000
jne 0x4a4d78
fld qword [esi + 8]
fcomp qword [0x51be98]
fnstsw ax
test ah, 0x40
jne 0x4a4d88
mov eax, dword [ecx]
lea edi, [esp + 0x60]
inc eax
mov dword [ecx], eax
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x3c]
inc eax
add ecx, 8
cmp eax, edx
mov dword [esp + 0x28], eax
mov dword [esp + 0x30], ecx
jle 0x4a4c69
mov eax, dword [esp + 0x2c]
mov esi, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
inc eax
push esi
push eax
push ecx
call fcn.004a5570
add esp, 0xc
cmp eax, esi
mov dword [esp + 0x2c], eax
jl 0x4a498f
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
inc eax
cmp eax, ecx
mov dword [esp + 0x38], eax
jle 0x4a4966
mov edx, dword [esp + 0x14]
push esi
inc edx
push edx
push edi
call fcn.004a5570
add esp, 0xc
cmp eax, esi
mov dword [esp + 0x14], eax
jl 0x4a4765
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret