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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x84
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp + 0x10]
push ebx
push esi
push edi
push eax
mov eax, dword [ebp + 0xc]
mov esi, ecx
mov ecx, dword [ebp + 0x14]
push ecx
push edx
push eax
mov ecx, esi
call fcn.004109c0
fld qword [0x45e9d8]
fstp qword [esi + 0x90]
mov eax, 0xd
fld qword [str.ffffffffffff]
xor ebx, ebx
fstp qword [esi + 0x98]
lea ecx, [esp + 0x18]
fld qword [0x45b118]
push ecx
mov ecx, dword [ebp + 0x1c]
fstp qword [esi + 0x80]
fld qword [0x45b118]
push str.DescendantFonts
fstp qword [esi + 0x78]
mov dword [esi], 0x45ec98
fld qword [0x45b118]
mov dword [esp + 0x88], eax
fstp qword [esi + 0x70]
mov dword [esp + 0x20], eax
fld qword [0x45b118]
mov dword [esp + 0x38], eax
fstp qword [esi + 0x68]
mov dword [esp + 0x48], eax
fld qword [0x45b110]
mov dword [esp + 0x58], eax
fstp qword [esi + 0xb0]
mov dword [esp + 0x78], eax
fld qword [0x45de20]
mov dword [esp + 0x68], eax
fstp qword [esi + 0xb8]
mov dword [esi + 0xa8], ebx
fld qword [0x45ec90]
mov dword [esi + 0xac], ebx
fstp qword [esi + 0xc0]
mov dword [esi + 0xc8], ebx
mov dword [esi + 0xcc], ebx
mov dword [esi + 0xd0], ebx
mov dword [esi + 0xd4], ebx
mov dword [esi + 0xd8], ebx
mov dword [esi + 0xdc], ebx
call fcn.004057f0
cmp dword [eax], 6
je 0x412a21
push str.Missing_DescendantFonts_entry_in_Type_0_font
push 0xffffffffffffffff
call fcn.004058b0
add esp, 8
lea ecx, [esp + 0x18]
call fcn.0042ccb0
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
mov ecx, dword [esp + 0x20]
lea edx, [esp + 0x80]
push edx
push ebx
call fcn.004014d0
cmp dword [eax], 7
je 0x412a4c
push str.Bad_descendant_font_in_Type_0_font
push 0xffffffffffffffff
call fcn.004058b0
add esp, 8
jmp 0x4136c9
lea ecx, [esp + 0x18]
call fcn.0042ccb0
mov ecx, dword [esp + 0x88]
lea eax, [esp + 0x18]
push eax
mov edi, ecx
push str.Subtype
mov dword [esp + 0x34], edi
call fcn.004057f0
test eax, eax
jne 0x412a89
push str.Missing_Subtype_entry_in_Type_0_descendant_font
push 0xffffffffffffffff
call fcn.004058b0
add esp, 8
jmp 0x4136c9
push str.CIDFontType0
lea ecx, [esp + 0x1c]
call fcn.00401940
test eax, eax
je 0x412aa4
mov dword [esi + 0x1c], 5
jmp 0x412ac1
push str.CIDFontType2
lea ecx, [esp + 0x1c]
call fcn.00401940
test eax, eax
je 0x4136a9
mov dword [esi + 0x1c], 7
lea ecx, [esp + 0x18]
call fcn.0042ccb0
mov ecx, dword [ebp + 8]
push edi
push ecx
mov ecx, esi
call fcn.00410a20
mov ecx, esi
call fcn.00410f60
lea edx, [esp + 0x18]
push edx
push str.CIDSystemInfo
mov ecx, edi
call fcn.004057f0
cmp dword [eax], 7
je 0x412b07
push str.Missing_CIDSystemInfo_dictionary_in_Type_0_descendant_font
push 0xffffffffffffffff
call fcn.004058b0
add esp, 8
jmp 0x4136c9
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x30]
push eax
push str.Registry
call fcn.004057f0
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [esp + 0x24]
push str.Ordering
call fcn.004057f0
mov ecx, dword [esp + 0x30]
mov eax, 3
cmp ecx, eax
jne 0x413686
cmp dword [esp + 0x40], eax
jne 0x413686
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x38]
push edx
push 0x2d
call fcn.00401900
mov ecx, eax
call fcn.004495d0
mov ecx, eax
call fcn.00449600
lea ecx, [esp + 0x40]
mov edi, eax
call fcn.0042ccb0
lea ecx, [esp + 0x30]
call fcn.0042ccb0
lea ecx, [esp + 0x18]
call fcn.0042ccb0
mov eax, dword [ebp + 0x1c]
push ebx
push 0x10
push eax
mov ecx, esi
call fcn.00410e80
cmp eax, ebx
mov dword [esi + 0xac], eax
jne 0x412c0b
push str.Adobe_Identity
mov ecx, edi
call fcn.00403200
test eax, eax
je 0x412c0b
push str.Adobe_UCS
mov ecx, edi
call fcn.00403200
test eax, eax
je 0x412c0b
mov ecx, dword [0x486720]
push edi
call fcn.0041b800
cmp eax, ebx
mov dword [esi + 0xac], eax
jne 0x412c0b
mov ecx, dword [edi + 4]
push ecx
push str.Unknown_character_collection__s
push 0xffffffffffffffff
call fcn.004058b0
add esp, 0xc
mov ecx, edi
call fcn.004495a0
push edi
call fcn.0044a5d8
add esp, 4
lea ecx, [esp + 0x80]
call fcn.0042ccb0
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
mov ecx, dword [ebp + 0x1c]
lea edx, [esp + 0x18]
push edx
push str.Encoding
call fcn.004057f0
cmp dword [eax], 4
je 0x412c4e
push str.Missing_or_invalid_Encoding_entry_in_Type_0_font
push 0xffffffffffffffff
call fcn.004058b0
add esp, 8
cmp edi, ebx
je 0x4136c9
mov ecx, edi
call fcn.004495a0
push edi
call fcn.0044a5d8
add esp, 4
jmp 0x4136c9
push 8
call fcn.0044a5dd
add esp, 4
cmp eax, ebx
je 0x412c6c
mov ecx, dword [esp + 0x20]
push ecx
mov ecx, eax
call fcn.004494d0
mov ebx, eax
jmp 0x412c6e
xor ebx, ebx
lea ecx, [esp + 0x18]
call fcn.0042ccb0
mov ecx, dword [0x486720]
push ebx
push edi
call fcn.0041b9e0
test eax, eax
mov dword [esi + 0xa8], eax
jne 0x412cdc
mov edx, dword [edi + 4]
mov eax, dword [ebx + 4]
push edx
push eax
push str.Unknown_CMap__s_for_character_collection__s
push 0xffffffffffffffff
call fcn.004058b0
add esp, 0x10
mov ecx, edi
call fcn.004495a0
push edi
call fcn.0044a5d8
add esp, 4
mov ecx, ebx
call fcn.004495a0
push ebx
call fcn.0044a5d8
add esp, 4
lea ecx, [esp + 0x80]
call fcn.0042ccb0
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
test edi, edi
je 0x412cf0
mov ecx, edi
call fcn.004495a0
push edi
call fcn.0044a5d8
add esp, 4
test ebx, ebx
je 0x412d04
mov ecx, ebx
call fcn.004495a0
push ebx
call fcn.0044a5d8
add esp, 4
cmp dword [esi + 0x1c], 7
jne 0x412e0e
lea ecx, [esp + 0x18]
push ecx
mov ecx, dword [esp + 0x30]
push str.CIDToGIDMap
call fcn.004057f0
mov edi, dword [esp + 0x18]
cmp edi, 8
jne 0x412ddf
push 0x80
mov dword [esi + 0xdc], 0
mov dword [esp + 0x14], 0x40
call fcn.004492c0
mov ecx, dword [esp + 0x24]
mov dword [esi + 0xd8], eax
mov edx, dword [ecx]
add esp, 4
call dword [edx + 8]
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov edi, eax
cmp edi, 0xffffffff
je 0x412e05
mov ecx, dword [esp + 0x20]
mov edx, dword [ecx]
call dword [edx + 0x10]
mov ebx, eax
cmp ebx, 0xffffffff
je 0x412e05
mov eax, dword [esp + 0x10]
cmp dword [esi + 0xdc], eax
jne 0x412db2
mov ecx, eax
lea eax, [ecx + ecx]
lea edx, [eax + eax]
mov dword [esp + 0x10], eax
mov eax, dword [esi + 0xd8]
push edx
push eax
call fcn.004492f0
add esp, 8
mov dword [esi + 0xd8], eax
mov ecx, dword [esi + 0xdc]
mov edx, dword [esi + 0xd8]
shl edi, 8
add edi, ebx
mov word [edx + ecx*2], di
inc dword [esi + 0xdc]
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov edi, eax
cmp edi, 0xffffffff
jne 0x412d70
jmp 0x412e05
push str.Identity
lea ecx, [esp + 0x1c]
call fcn.00401940
test eax, eax
jne 0x412e05
cmp edi, 5
je 0x412e05
push str.Invalid_CIDToGIDMap_entry_in_CID_font
push 0xffffffffffffffff
call fcn.004058b0
add esp, 8
lea ecx, [esp + 0x18]
call fcn.0042ccb0
mov edi, dword [esp + 0x2c]
lea ecx, [esp + 0x18]
push ecx
push 0x45eaa8
mov ecx, edi
call fcn.004057f0
mov ecx, dword [eax]
mov ebx, 1
cmp ecx, ebx
jne 0x412e3e
fild dword [esp + 0x20]
fmul qword [0x45e728]
fstp qword [esi + 0xb0]
lea ecx, [esp + 0x18]
call fcn.0042ccb0
lea edx, [esp + 0x18]
push edx
push 0x45c590
mov ecx, edi
call fcn.004057f0
cmp dword [eax], 6
jne 0x413155
mov ecx, dword [esp + 0x20]
xor eax, eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x10], eax
cmp dword [ecx + 0xc], ebx
jle 0x41312f
mov dword [esp + 0xc], 1
mov dword [esp + 0x14], 2
jmp 0x412e90
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x30]
push eax
push edx
call fcn.004014d0
mov ecx, dword [esp + 0xc]
lea eax, [esp + 0x40]
push eax
push ecx
mov ecx, dword [esp + 0x28]
call fcn.004014d0
mov eax, dword [esp + 0x30]
mov edi, 1
cmp eax, edi
jne 0x4130e2
mov eax, dword [esp + 0x40]
cmp eax, edi
jne 0x412fc7
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x14]
cmp ebx, dword [ecx + 0xc]
jge 0x4130e2
lea edx, [esp + 0x50]
push edx
push ebx
call fcn.004014d0
mov ecx, eax
call fcn.00401920
test eax, eax
je 0x412f8b
mov eax, dword [esp + 0x28]
cmp dword [esi + 0xcc], eax
jne 0x412f26
add eax, 0x10
mov dword [esp + 0x28], eax
shl eax, 4
push eax
mov eax, dword [esi + 0xc8]
push eax
call fcn.004492f0
add esp, 8
mov dword [esi + 0xc8], eax
mov ecx, dword [esi + 0xcc]
mov edx, dword [esi + 0xc8]
mov eax, dword [esp + 0x38]
shl ecx, 4
mov dword [ecx + edx], eax
mov ecx, dword [esi + 0xcc]
mov eax, dword [esp + 0x48]
mov edx, dword [esi + 0xc8]
shl ecx, 4
mov dword [ecx + edx + 4], eax
cmp dword [esp + 0x50], edi
jne 0x412f5f
fild dword [esp + 0x58]
jmp 0x412f63
fld qword [esp + 0x58]
mov ecx, dword [esi + 0xcc]
fmul qword [0x45e728]
mov edx, dword [esi + 0xc8]
shl ecx, 4
fstp qword [ecx + edx + 8]
mov eax, dword [esi + 0xcc]
inc eax
mov dword [esi + 0xcc], eax
jmp 0x412f9a
push str.Bad_widths_array_in_Type_0_font
push 0xffffffffffffffff
call fcn.004058b0
add esp, 8
lea ecx, [esp + 0x50]
call fcn.0042ccb0
mov edi, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov eax, 3
add edi, eax
add ebx, eax
add ecx, eax
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
mov dword [esp + 0xc], ecx
jmp 0x41310c
cmp eax, 6
jne 0x4130e2
mov ecx, dword [esp + 0x48]
mov edx, dword [esi + 0xcc]
mov eax, dword [ecx + 0xc]
add eax, edx
cmp eax, dword [esp + 0x28]
jle 0x41300c
add eax, 0xf
and eax, 0xfffffff0
mov dword [esp + 0x28], eax
shl eax, 4
push eax
mov eax, dword [esi + 0xc8]
push eax
call fcn.004492f0
mov ecx, dword [esp + 0x50]
add esp, 8
mov dword [esi + 0xc8], eax
mov eax, dword [ecx + 0xc]
mov edi, dword [esp + 0x38]
xor ebx, ebx
test eax, eax
jle 0x4130bd
lea ecx, [ecx]
lea edx, [esp + 0x50]
push edx
push ebx
call fcn.004014d0
mov ecx, eax
call fcn.00401920
test eax, eax
je 0x413095
mov eax, dword [esi + 0xcc]
mov ecx, dword [esi + 0xc8]
shl eax, 4
mov dword [eax + ecx], edi
mov edx, dword [esi + 0xcc]
mov eax, dword [esi + 0xc8]
shl edx, 4
mov dword [edx + eax + 4], edi
cmp dword [esp + 0x50], 1
jne 0x413068
fild dword [esp + 0x58]
jmp 0x41306c
fld qword [esp + 0x58]
mov ecx, dword [esi + 0xcc]
fmul qword [0x45e728]
mov edx, dword [esi + 0xc8]
shl ecx, 4
fstp qword [ecx + edx + 8]
mov eax, dword [esi + 0xcc]
inc edi
inc eax
mov dword [esi + 0xcc], eax
jmp 0x4130a4
push str.Bad_widths_array_in_Type_0_font
push 0xffffffffffffffff
call fcn.004058b0
add esp, 8
lea ecx, [esp + 0x50]
call fcn.0042ccb0
mov ecx, dword [esp + 0x48]
mov eax, dword [ecx + 0xc]
inc ebx
cmp ebx, eax
jl 0x413020
mov edi, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0xc]
mov eax, 2
add edi, eax
add edx, eax
add ecx, eax
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], edx
mov dword [esp + 0xc], ecx
jmp 0x41310c
push str.Bad_widths_array_in_Type_0_font
push 0xffffffffffffffff
call fcn.004058b0
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
add esp, 8
inc edx
inc ecx
inc eax
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ecx
mov dword [esp + 0xc], eax
lea ecx, [esp + 0x40]
call fcn.0042ccb0
lea ecx, [esp + 0x30]
call fcn.0042ccb0
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0xc]
cmp eax, dword [ecx + 0xc]
jl 0x412e90
mov ecx, dword [esi + 0xcc]
mov edx, dword [esi + 0xc8]
push 0x4403e0
push 0x10
push ecx
push edx
call fcn.0044b6a0
mov edi, dword [esp + 0x3c]
add esp, 0x10
mov ebx, 1
lea ecx, [esp + 0x18]
call fcn.0042ccb0
lea eax, [esp + 0x18]
push eax
push 0x45ea84
mov ecx, edi
call fcn.004057f0
cmp dword [eax], 6
jne 0x4131fd
mov ecx, dword [esp + 0x20]
cmp dword [ecx + 0xc], 2
jne 0x4131fd
lea edx, [esp + 0x30]
push edx
push 0
call fcn.004014d0
mov ecx, eax
call fcn.00401920
test eax, eax
je 0x4131b5
cmp dword [esp + 0x30], ebx
jne 0x4131a5
fild dword [esp + 0x38]
jmp 0x4131a9
fld qword [esp + 0x38]
fmul qword [0x45e728]
fstp qword [esi + 0xc0]
lea ecx, [esp + 0x30]
call fcn.0042ccb0
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x30]
push eax
push ebx
call fcn.004014d0
mov ecx, eax
call fcn.00401920
test eax, eax
je 0x4131f4
cmp dword [esp + 0x30], ebx
jne 0x4131e4
fild dword [esp + 0x38]
jmp 0x4131e8
fld qword [esp + 0x38]
fmul qword [0x45e728]
fstp qword [esi + 0xb8]
lea ecx, [esp + 0x30]
call fcn.0042ccb0
lea ecx, [esp + 0x18]
call fcn.0042ccb0
lea ecx, [esp + 0x18]
push ecx
push 0x45ea80
mov ecx, edi
call fcn.004057f0
cmp dword [eax], 6
jne 0x413660
mov ecx, dword [esp + 0x20]
xor eax, eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x10], eax
cmp dword [ecx + 0xc], ebx
jle 0x41363e
mov dword [esp + 0x14], 1
mov dword [esp + 0xc], 4
mov edi, dword [esp + 0x10]
lea edx, [esp + 0x30]
push edx
push edi
call fcn.004014d0
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x40]
push eax
push ecx
mov ecx, dword [esp + 0x28]
call fcn.004014d0
mov eax, dword [esp + 0x30]
mov ebx, 1
cmp eax, ebx
jne 0x4135f5
mov eax, dword [esp + 0x40]
cmp eax, ebx
jne 0x413412
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0xc]
cmp edx, dword [ecx + 0xc]
jge 0x4135f5
lea eax, [esp + 0x50]
push eax
lea edx, [edi + 2]
push edx
call fcn.004014d0
mov ecx, eax
call fcn.00401920
test eax, eax
je 0x4133de
lea eax, [esp + 0x70]
push eax
lea ecx, [edi + 3]
push ecx
mov ecx, dword [esp + 0x28]
call fcn.004014d0
mov ecx, eax
call fcn.00401920
test eax, eax
je 0x4133de
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x20]
lea edx, [esp + 0x60]
push edx
push eax
call fcn.004014d0
mov ecx, eax
call fcn.00401920
test eax, eax
je 0x4133de
mov eax, dword [esp + 0x28]
cmp dword [esi + 0xd4], eax
jne 0x413323
mov ecx, dword [esi + 0xd0]
add eax, 0x10
mov dword [esp + 0x28], eax
shl eax, 5
push eax
push ecx
call fcn.004492f0
add esp, 8
mov dword [esi + 0xd0], eax
mov edx, dword [esi + 0xd4]
mov eax, dword [esi + 0xd0]
mov ecx, dword [esp + 0x38]
shl edx, 5
mov dword [edx + eax], ecx
mov edx, dword [esi + 0xd4]
mov eax, dword [esi + 0xd0]
mov ecx, dword [esp + 0x48]
shl edx, 5
mov dword [edx + eax + 4], ecx
cmp dword [esp + 0x50], ebx
jne 0x41335c
fild dword [esp + 0x58]
jmp 0x413360
fld qword [esp + 0x58]
mov edx, dword [esi + 0xd4]
fmul qword [0x45e728]
mov eax, dword [esi + 0xd0]
shl edx, 5
fstp qword [edx + eax + 8]
mov eax, dword [esp + 0x70]
cmp eax, ebx
jne 0x413387
fild dword [esp + 0x78]
jmp 0x41338b
fld qword [esp + 0x78]
mov ecx, dword [esi + 0xd4]
fmul qword [0x45e728]
mov edx, dword [esi + 0xd0]
shl ecx, 5
fstp qword [ecx + edx + 0x10]
mov eax, dword [esp + 0x60]
cmp eax, ebx
jne 0x4133b2
fild dword [esp + 0x68]
jmp 0x4133b6
fld qword [esp + 0x68]
mov eax, dword [esi + 0xd4]
fmul qword [0x45e728]
mov ecx, dword [esi + 0xd0]
shl eax, 5
fstp qword [eax + ecx + 0x18]
mov eax, dword [esi + 0xd4]
inc eax
mov dword [esi + 0xd4], eax
jmp 0x4133ed
push str.Bad_widths__W2__array_in_Type_0_font
push 0xffffffffffffffff
call fcn.004058b0
add esp, 8
lea ecx, [esp + 0x60]
call fcn.0042ccb0
lea ecx, [esp + 0x70]
call fcn.0042ccb0
lea ecx, [esp + 0x50]
call fcn.0042ccb0
mov eax, 5
jmp 0x4135dd
cmp eax, 6
jne 0x4135f5
mov ecx, dword [esp + 0x48]
mov edx, dword [ecx + 0xc]
mov eax, 0x55555556
imul edx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esi + 0xd4]
add eax, edx
cmp eax, dword [esp + 0x28]
jle 0x413465
add eax, 0xf
and eax, 0xfffffff0
mov dword [esp + 0x28], eax
shl eax, 5
push eax
mov eax, dword [esi + 0xd0]
push eax
call fcn.004492f0
mov ecx, dword [esp + 0x50]
add esp, 8
mov dword [esi + 0xd0], eax
mov eax, dword [ecx + 0xc]
mov edx, dword [esp + 0x38]
xor edi, edi
test eax, eax
mov dword [esp + 0x2c], edx
jle 0x4135d4
lea ebx, [ebx]
lea eax, [esp + 0x50]
push eax
push edi
call fcn.004014d0
mov ecx, eax
call fcn.00401920
test eax, eax
je 0x413598
lea ecx, [esp + 0x70]
lea ebx, [edi + 2]
push ecx
mov ecx, dword [esp + 0x4c]
lea edx, [ebx - 1]
push edx
call fcn.004014d0
mov ecx, eax
call fcn.00401920
test eax, eax
je 0x413598
mov ecx, dword [esp + 0x48]
lea eax, [esp + 0x60]
push eax
push ebx
call fcn.004014d0
mov ecx, eax
call fcn.00401920
test eax, eax
je 0x413598
mov ecx, dword [esi + 0xcc]
mov edx, dword [esi + 0xd0]
mov eax, dword [esp + 0x2c]
shl ecx, 5
mov dword [ecx + edx], eax
mov ecx, dword [esi + 0xcc]
mov edx, dword [esi + 0xd0]
shl ecx, 5
mov dword [ecx + edx + 4], eax
mov edx, dword [esp + 0x50]
mov ecx, 1
cmp edx, ecx
jne 0x413518
fild dword [esp + 0x58]
jmp 0x41351c
fld qword [esp + 0x58]
mov edx, dword [esi + 0xcc]
fmul qword [0x45e728]
mov ebx, dword [esi + 0xd0]
shl edx, 5
fstp qword [edx + ebx + 8]
mov edx, dword [esp + 0x70]
cmp edx, ecx
jne 0x413543
fild dword [esp + 0x78]
jmp 0x413547
fld qword [esp + 0x78]
mov edx, dword [esi + 0xcc]
fmul qword [0x45e728]
mov ebx, dword [esi + 0xd0]
shl edx, 5
fstp qword [edx + ebx + 0x10]
mov edx, dword [esp + 0x60]
cmp edx, ecx
jne 0x41356e
fild dword [esp + 0x68]
jmp 0x413572
fld qword [esp + 0x68]
mov ecx, dword [esi + 0xcc]
fmul qword [0x45e728]
mov edx, dword [esi + 0xd0]
shl ecx, 5
inc eax
fstp qword [ecx + edx + 0x18]
mov dword [esp + 0x2c], eax
inc dword [esi + 0xd4]
jmp 0x4135a7
push str.Bad_widths__W2__array_in_Type_0_font
push 0xffffffffffffffff
call fcn.004058b0
add esp, 8
lea ecx, [esp + 0x60]
call fcn.0042ccb0
lea ecx, [esp + 0x70]
call fcn.0042ccb0
lea ecx, [esp + 0x50]
call fcn.0042ccb0
mov ecx, dword [esp + 0x48]
mov eax, dword [ecx + 0xc]
add edi, 3
cmp edi, eax
jl 0x413480
mov edi, dword [esp + 0x10]
mov eax, 2
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x14]
add edx, eax
add edi, eax
add ecx, eax
mov dword [esp + 0xc], edx
mov dword [esp + 0x14], ecx
jmp 0x413617
push str.Bad_widths__W2__array_in_Type_0_font
push 0xffffffffffffffff
call fcn.004058b0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
add esp, 8
inc edi
inc ecx
inc eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x14], eax
lea ecx, [esp + 0x40]
mov dword [esp + 0x10], edi
call fcn.0042ccb0
lea ecx, [esp + 0x30]
call fcn.0042ccb0
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x14]
cmp eax, dword [ecx + 0xc]
jl 0x413247
mov ecx, dword [esi + 0xd4]
mov edx, dword [esi + 0xd0]
push 0x4403e0
push 0x20
push ecx
push edx
call fcn.0044b6a0
add esp, 0x10
mov ebx, 1
lea ecx, [esp + 0x18]
call fcn.0042ccb0
lea ecx, [esp + 0x80]
call fcn.0042ccb0
mov dword [esi + 0xa0], ebx
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
push str.Invalid_CIDSystemInfo_dictionary_in_Type_0_descendant_font
push 0xffffffffffffffff
call fcn.004058b0
add esp, 8
lea ecx, [esp + 0x40]
call fcn.0042ccb0
lea ecx, [esp + 0x30]
call fcn.0042ccb0
jmp 0x4136c9
cmp dword [esp + 0x18], 4
mov eax, dword [esp + 0x20]
je 0x4136b9
mov eax, 0x45c78c
push eax
push str.Unknown_Type_0_descendant_font_type__s
push 0xffffffffffffffff
call fcn.004058b0
add esp, 0xc
lea ecx, [esp + 0x18]
call fcn.0042ccb0
lea ecx, [esp + 0x80]
call fcn.0042ccb0
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18