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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x8c
mov eax, dword [0x56800c]
xor eax, esp
mov dword [esp + 0x88], eax
mov eax, ecx
mov dword [esp + 0x1c], 0
mov ecx, dword [ebp + 0xc]
push ebx
push esi
cmp dword [eax], 0
mov ebx, edx
mov edx, dword [ebp + 8]
push edi
mov dword [esp + 0x30], eax
mov dword [esp + 0x24], edx
mov dword [esp + 0x34], ecx
jbe 0x43c7f2
xor ecx, ecx
mov dword [esp + 0x2c], ecx
lea ebx, [ebx]
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x43c300
cmp dword [esi], 0
jne 0x43c7f2
mov eax, dword [eax + 0xc]
lea edi, [esp + 0x48]
add eax, ecx
mov ecx, 8
mov dword [esp + 0x10], eax
push edx
lea esi, [eax + 8]
rep movsd dword es:[edi], dword [esi]
fld qword [esp + 0x4c]
fst dword [esp + 0x3c]
fld qword [esp + 0x54]
mov eax, dword [esp + 0x3c]
fst dword [esp + 0x40]
fld qword [esp + 0x5c]
faddp st(2)
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x40]
fxch st(1)
mov dword [esp + 0x70], eax
fstp dword [esp + 0x44]
mov eax, dword [esp + 0x44]
fadd qword [esp + 0x64]
mov dword [esp + 0x74], eax
fstp dword [esp + 0x48]
mov eax, dword [esp + 0x48]
mov dword [esp + 0x78], eax
lea eax, [esp + 0x6c]
push eax
call dword [sym.imp.libmupdf.dll_fz_transform_rect]
mov eax, dword [esp + 0x70]
add esp, 8
mov edi, dword [esp + 0x34]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x84], eax
test edi, edi
je 0x43c3ce
lea eax, [esp + 0x78]
push edi
push eax
call dword [sym.imp.libmupdf.dll_fz_intersect_rect]
mov ecx, eax
add esp, 8
fld dword [ecx]
fld dword [ecx + 8]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x43c7ca
fld dword [ecx + 4]
fld dword [ecx + 0xc]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x43c7ca
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_new_path]
mov esi, dword [esp + 0x14]
add esp, 4
xor edi, edi
mov dword [esp + 0x14], eax
mov ecx, dword [esi]
dec ecx
cmp ecx, 3
ja case.default.0x43c3f0
jmp dword [ecx*4 + 0x43c808]
fld qword [esi + 0x10]
sub esp, 8
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp + 4]
fld qword [esi + 8]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
push eax
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_moveto]
fld qword [esi + 0x10]
add esp, 8
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp + 4]
fld qword [esi + 0x18]
fadd qword [esi + 8]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
push dword [esp + 0x1c]
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_lineto]
fld qword [esi + 0x20]
add esp, 8
fadd qword [esi + 0x10]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp + 4]
fld qword [esi + 0x18]
fadd qword [esi + 8]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
push dword [esp + 0x1c]
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_lineto]
fld qword [esi + 0x20]
add esp, 8
fadd qword [esi + 0x10]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp + 4]
fld qword [esi + 8]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
push dword [esp + 0x1c]
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_lineto]
push dword [esp + 0x24]
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_closepath]
add esp, 0x18
jmp case.default.0x43c3f0
fld qword [esi + 0x20]
sub esp, 8
fadd qword [esi + 0x10]
fsub qword [0x55da28]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp + 4]
fld qword [esi + 8]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
push eax
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_moveto]
fld qword [esi + 0x20]
add esp, 8
fadd qword [esi + 0x10]
fsub qword [0x55da28]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp + 4]
fld qword [esi + 0x18]
fadd qword [esi + 8]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
push dword [esp + 0x1c]
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_lineto]
add esp, 0x10
jmp case.default.0x43c3f0
fld qword [esi + 0x20]
sub esp, 8
fmul qword [0x55da58]
fadd qword [esi + 0x10]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp + 4]
fld qword [esi + 8]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
push eax
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_moveto]
fld qword [esi + 0x20]
add esp, 8
fmul qword [0x55da58]
fadd qword [esi + 0x10]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp + 4]
fld qword [esi + 0x18]
fadd qword [esi + 8]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
jmp 0x43c525
fld qword [esi + 0x20]
sub esp, 8
fadd qword [esi + 0x10]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp + 4]
fld qword [esi + 8]
fld1
faddp st(1)
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
push eax
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_moveto]
fld qword [esi + 0x20]
add esp, 8
fadd qword [esi + 0x10]
mov edi, dword [esp + 0x1c]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp + 4]
fld qword [esi + 0x18]
fadd qword [esi + 8]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
push edi
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_lineto]
fld qword [esi + 0x20]
add esp, 8
fadd qword [esi + 0x10]
fsub qword [0x55da58]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp + 4]
fld qword [esi + 8]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
push edi
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_moveto]
fld qword [esi + 0x20]
add esp, 8
fadd qword [esi + 0x10]
fsub qword [0x55da58]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp + 4]
fld qword [esi + 0x18]
fadd qword [esi + 8]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
push edi
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_lineto]
push 2
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_new_stroke_state_with_dash_len]
fld dword [0x55d9c0]
mov edi, eax
add esp, 0x18
mov ecx, dword [edi + 0x20]
fstp dword [edi + 0x14]
fld1
fst dword [edi + ecx*4 + 0x24]
inc dword [edi + 0x20]
mov ecx, dword [edi + 0x20]
fstp dword [edi + ecx*4 + 0x24]
inc dword [edi + 0x20]
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_device_rgb]
movzx ecx, byte [esi + 0x28]
add esp, 4
mov dword [esp + 0x18], ecx
fild dword [esp + 0x18]
mov dword [esp + 0x10], eax
fstp qword [esp + 0x18]
fld qword [esp + 0x18]
fld qword [0x55dc58]
fdiv st(1), st(0)
fxch st(1)
fstp dword [esp + 0x88]
movzx ecx, byte [esi + 0x29]
mov dword [esp + 0x18], ecx
fild dword [esp + 0x18]
fstp qword [esp + 0x18]
fld qword [esp + 0x18]
fdiv st(1)
fstp dword [esp + 0x8c]
movzx eax, byte [esi + 0x2a]
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
fstp qword [esp + 0x18]
fdivr qword [esp + 0x18]
fstp dword [esp + 0x90]
cmp dword [esi], 1
jne 0x43c776
push ecx
fld1
lea eax, [esp + 0x6c]
fstp dword [esp]
push 1
push 0
push 0
push eax
push ebx
call dword [sym.imp.libmupdf.dll_fz_begin_group]
movzx eax, byte [esi + 0x2b]
add esp, 0x14
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x8c]
fild dword [esp + 0x1c]
fstp qword [esp + 0x1c]
fld qword [esp + 0x1c]
fdiv qword [0x55dc58]
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
fstp dword [esp]
push eax
push dword [esp + 0x18]
push dword [esp + 0x30]
push 0
push dword [esp + 0x28]
push ebx
call dword [sym.imp.libmupdf.dll_fz_fill_path]
add esp, 0x1c
push ebx
call dword [sym.imp.libmupdf.dll_fz_end_group]
add esp, 4
jmp 0x43c7ba
test edi, edi
jne 0x43c788
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_new_stroke_state]
add esp, 4
mov edi, eax
push ecx
fld1
lea eax, [esp + 0x8c]
fstp dword [esp]
push eax
push dword [esp + 0x18]
push dword [esp + 0x30]
push edi
push dword [esp + 0x28]
push ebx
call dword [sym.imp.libmupdf.dll_fz_stroke_path]
add esp, 0x1c
push edi
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_drop_stroke_state]
add esp, 8
push dword [esp + 0x14]
push dword [ebx + 0x10]
call dword [sym.imp.libmupdf.dll_fz_free_path]
add esp, 8
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
inc eax
add ecx, 0x30
mov dword [esp + 0x28], eax
cmp eax, dword [edx]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x30]
mov dword [esp + 0x2c], ecx
jb 0x43c2f0
mov ecx, dword [esp + 0x94]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.004bcb15
mov esp, ebp
pop ebp
ret