Function at 0x402ef0
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x422d74
mov eax, dword fs:[0]
push eax
sub esp, 0x16c
mov eax, dword [0x430038]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.PreViewInitEnvironment
push dword [0x430090]
call esi
mov dword [0x4300ac], eax
test eax, eax
jne 0x40316c
call fcn.004143a0
push 0
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403165
push 0x98
lea eax, [ebp - 0xa8]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 4
lea ecx, [ebp - 0xa8]
call fcn.00407170
mov edx, 0x427620
mov dword [ebp - 4], 0
lea ecx, [ebp - 0xa8]
call fcn.00408430
mov edx, str.PreViewInitEnvironment
mov ecx, eax
call fcn.00408070
mov edx, 0x4276c0
mov ecx, eax
call fcn.00408430
call fcn.004143a0
push 4
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x40311e
call fcn.004143a0
push 4
push 0
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x6c]
mov ebx, eax
mov esi, 0x2000
mov ecx, dword [ebx + 0x20]
sub esi, ecx
lea eax, [ecx + ebx]
mov dword [ebp - 0x144], eax
lea edi, [eax + 0x24]
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004070b0
mov byte [ebp - 4], 1
cmp dword [eax + 0x14], 8
jb 0x403008
mov eax, dword [eax]
sub esp, 0xc
lea ecx, [ebp - 0x160]
mov edx, eax
call fcn.004020b0
mov edx, eax
add esp, 0xc
cmp dword [edx + 0x14], 0x10
jb 0x403025
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x148], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x403030
sub ecx, dword [ebp - 0x148]
cmp ecx, esi
cmovbe esi, ecx
test esi, esi
je 0x40305f
mov edi, dword [ebp - 0x144]
push esi
push edx
lea eax, [edi + 0x24]
push eax
call sub.VCRUNTIME140.dll_memcpy
add edi, 0x24
add esp, 0xc
add edi, esi
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x40309b
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x403091
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x403091
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov byte [ebp - 4], 0
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0xf
mov byte [ebp - 0x160], 0
cmp edx, 8
jb 0x4030fc
mov ecx, dword [ebp - 0x178]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4030f2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4030f2
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov eax, dword [ebp - 0x144]
add eax, 0x24
sub edi, eax
add dword [ebx + 0x20], edi
call fcn.004143a0
push 0x5a
push str.e:zhanluepdfconverter_srcpreviewworker_rcpreviewworker.cpp
push ebx
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x20]
mov eax, dword [ebp - 0xa8]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xa8], vtable.std::basic_ostringstream_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__.0
mov eax, dword [ebp - 0xa8]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [ebp + ecx - 0xac], eax
lea ecx, [ebp - 0xa4]
call fcn.004077b0
lea ecx, [ebp - 0xa0]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::destructor_void_]
lea ecx, [ebp - 0x58]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::destructor_void_]
xor al, al
jmp 0x404adb
push str.PreViewGetPdfPageCount
push dword [0x430090]
call esi
mov dword [0x4300b0], eax
test eax, eax
jne 0x403374
call fcn.004143a0
push 0
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403165
push 0x98
lea eax, [ebp - 0xa8]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 4
lea ecx, [ebp - 0xa8]
call fcn.00407170
mov edx, 0x427620
mov dword [ebp - 4], 2
lea ecx, [ebp - 0xa8]
call fcn.00408430
mov edx, str.PreViewGetPdfPageCount
mov ecx, eax
call fcn.00408070
mov edx, 0x4276c0
mov ecx, eax
call fcn.00408430
call fcn.004143a0
push 4
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403362
call fcn.004143a0
push 4
push 0
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x6c]
mov ebx, eax
mov esi, 0x2000
mov ecx, dword [ebx + 0x20]
sub esi, ecx
lea eax, [ecx + ebx]
mov dword [ebp - 0x144], eax
lea edi, [eax + 0x24]
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004070b0
mov byte [ebp - 4], 3
cmp dword [eax + 0x14], 8
jb 0x40324c
mov eax, dword [eax]
sub esp, 0xc
lea ecx, [ebp - 0x160]
mov edx, eax
call fcn.004020b0
mov edx, eax
add esp, 0xc
cmp dword [edx + 0x14], 0x10
jb 0x403269
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x148], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x403274
sub ecx, dword [ebp - 0x148]
cmp ecx, esi
cmovbe esi, ecx
test esi, esi
je 0x4032a3
mov edi, dword [ebp - 0x144]
push esi
push edx
lea eax, [edi + 0x24]
push eax
call sub.VCRUNTIME140.dll_memcpy
add edi, 0x24
add esp, 0xc
add edi, esi
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x4032df
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4032d5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4032d5
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0xf
mov byte [ebp - 0x160], 0
cmp edx, 8
jb 0x403340
mov ecx, dword [ebp - 0x178]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x403336
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x403336
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov eax, dword [ebp - 0x144]
add eax, 0x24
sub edi, eax
add dword [ebx + 0x20], edi
call fcn.004143a0
push 0x61
mov edx, dword [eax]
mov ecx, eax
push str.e:zhanluepdfconverter_srcpreviewworker_rcpreviewworker.cpp
push ebx
call dword [edx + 0x20]
lea ecx, [ebp - 0xa8]
call fcn.00402eb0
xor al, al
jmp 0x404adb
push str.PreViewGetPdfPageImage
push dword [0x430090]
call esi
mov dword [0x4300b4], eax
test eax, eax
jne 0x403566
call fcn.004143a0
push 0
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403165
push 0x98
lea eax, [ebp - 0xa8]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 4
lea ecx, [ebp - 0xa8]
call fcn.00407170
mov edx, 0x427620
mov dword [ebp - 4], 4
lea ecx, [ebp - 0xa8]
call fcn.00408430
mov edx, str.PreViewGetPdfPageImage
mov ecx, eax
call fcn.00408070
mov edx, 0x4276c0
mov ecx, eax
call fcn.00408430
call fcn.004143a0
push 4
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403362
call fcn.004143a0
push 4
push 0
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x6c]
mov ebx, eax
mov esi, 0x2000
mov ecx, dword [ebx + 0x20]
sub esi, ecx
lea eax, [ecx + ebx]
mov dword [ebp - 0x144], eax
lea edi, [eax + 0x24]
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004070b0
mov byte [ebp - 4], 5
cmp dword [eax + 0x14], 8
jb 0x403458
mov eax, dword [eax]
sub esp, 0xc
lea ecx, [ebp - 0x160]
mov edx, eax
call fcn.004020b0
mov edx, eax
add esp, 0xc
cmp dword [edx + 0x14], 0x10
jb 0x403475
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x148], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x403480
sub ecx, dword [ebp - 0x148]
cmp ecx, esi
cmovbe esi, ecx
test esi, esi
je 0x4034af
mov edi, dword [ebp - 0x144]
push esi
push edx
lea eax, [edi + 0x24]
push eax
call sub.VCRUNTIME140.dll_memcpy
add edi, 0x24
add esp, 0xc
add edi, esi
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x4034eb
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4034e1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4034e1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0xf
mov byte [ebp - 0x160], 0
cmp edx, 8
jb 0x40354c
mov ecx, dword [ebp - 0x178]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x403542
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x403542
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov eax, dword [ebp - 0x144]
add eax, 0x24
sub edi, eax
add dword [ebx + 0x20], edi
call fcn.004143a0
push 0x68
jmp 0x403355
push str.PreViewSetWatermarkText
push dword [0x430090]
call esi
mov dword [0x4300b8], eax
test eax, eax
jne 0x403758
call fcn.004143a0
push 0
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403165
push 0x98
lea eax, [ebp - 0xa8]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 4
lea ecx, [ebp - 0xa8]
call fcn.00407170
mov edx, 0x427620
mov dword [ebp - 4], 6
lea ecx, [ebp - 0xa8]
call fcn.00408430
mov edx, str.PreViewSetWatermarkText
mov ecx, eax
call fcn.00408070
mov edx, 0x4276c0
mov ecx, eax
call fcn.00408430
call fcn.004143a0
push 4
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403362
call fcn.004143a0
push 4
push 0
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x6c]
mov ebx, eax
mov esi, 0x2000
mov ecx, dword [ebx + 0x20]
sub esi, ecx
lea eax, [ecx + ebx]
mov dword [ebp - 0x144], eax
lea edi, [eax + 0x24]
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004070b0
mov byte [ebp - 4], 7
cmp dword [eax + 0x14], 8
jb 0x40364a
mov eax, dword [eax]
sub esp, 0xc
lea ecx, [ebp - 0x160]
mov edx, eax
call fcn.004020b0
mov edx, eax
add esp, 0xc
cmp dword [edx + 0x14], 0x10
jb 0x403667
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x148], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x403672
sub ecx, dword [ebp - 0x148]
cmp ecx, esi
cmovbe esi, ecx
test esi, esi
je 0x4036a1
mov edi, dword [ebp - 0x144]
push esi
push edx
lea eax, [edi + 0x24]
push eax
call sub.VCRUNTIME140.dll_memcpy
add edi, 0x24
add esp, 0xc
add edi, esi
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x4036dd
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4036d3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4036d3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0xf
mov byte [ebp - 0x160], 0
cmp edx, 8
jb 0x40373e
mov ecx, dword [ebp - 0x178]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x403734
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x403734
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov eax, dword [ebp - 0x144]
add eax, 0x24
sub edi, eax
add dword [ebx + 0x20], edi
call fcn.004143a0
push 0x6f
jmp 0x403355
push str.PreViewSetWatermarkImagePath
push dword [0x430090]
call esi
mov dword [0x4300c0], eax
test eax, eax
jne 0x40394a
call fcn.004143a0
push 0
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403165
push 0x98
lea eax, [ebp - 0xa8]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 4
lea ecx, [ebp - 0xa8]
call fcn.00407170
mov edx, 0x427620
mov dword [ebp - 4], 8
lea ecx, [ebp - 0xa8]
call fcn.00408430
mov edx, str.PreViewSetWatermarkImagePath
mov ecx, eax
call fcn.00408070
mov edx, 0x4276c0
mov ecx, eax
call fcn.00408430
call fcn.004143a0
push 4
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403362
call fcn.004143a0
push 4
push 0
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x6c]
mov ebx, eax
mov esi, 0x2000
mov ecx, dword [ebx + 0x20]
sub esi, ecx
lea eax, [ecx + ebx]
mov dword [ebp - 0x144], eax
lea edi, [eax + 0x24]
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004070b0
mov byte [ebp - 4], 9
cmp dword [eax + 0x14], 8
jb 0x40383c
mov eax, dword [eax]
sub esp, 0xc
lea ecx, [ebp - 0x160]
mov edx, eax
call fcn.004020b0
mov edx, eax
add esp, 0xc
cmp dword [edx + 0x14], 0x10
jb 0x403859
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x148], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x403864
sub ecx, dword [ebp - 0x148]
cmp ecx, esi
cmovbe esi, ecx
test esi, esi
je 0x403893
mov edi, dword [ebp - 0x144]
push esi
push edx
lea eax, [edi + 0x24]
push eax
call sub.VCRUNTIME140.dll_memcpy
add edi, 0x24
add esp, 0xc
add edi, esi
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x4038cf
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4038c5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4038c5
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0xf
mov byte [ebp - 0x160], 0
cmp edx, 8
jb 0x403930
mov ecx, dword [ebp - 0x178]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x403926
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x403926
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov eax, dword [ebp - 0x144]
add eax, 0x24
sub edi, eax
add dword [ebx + 0x20], edi
call fcn.004143a0
push 0x76
jmp 0x403355
push str.PreViewSetIndent
push dword [0x430090]
call esi
mov dword [0x4300bc], eax
test eax, eax
jne 0x403b3c
call fcn.004143a0
push 0
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403165
push 0x98
lea eax, [ebp - 0xa8]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 4
lea ecx, [ebp - 0xa8]
call fcn.00407170
mov edx, 0x427620
mov dword [ebp - 4], 0xa
lea ecx, [ebp - 0xa8]
call fcn.00408430
mov edx, str.PreViewSetIndent
mov ecx, eax
call fcn.00408070
mov edx, 0x4276c0
mov ecx, eax
call fcn.00408430
call fcn.004143a0
push 4
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403362
call fcn.004143a0
push 4
push 0
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x6c]
mov ebx, eax
mov esi, 0x2000
mov ecx, dword [ebx + 0x20]
sub esi, ecx
lea eax, [ecx + ebx]
mov dword [ebp - 0x144], eax
lea edi, [eax + 0x24]
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004070b0
mov byte [ebp - 4], 0xb
cmp dword [eax + 0x14], 8
jb 0x403a2e
mov eax, dword [eax]
sub esp, 0xc
lea ecx, [ebp - 0x160]
mov edx, eax
call fcn.004020b0
mov edx, eax
add esp, 0xc
cmp dword [edx + 0x14], 0x10
jb 0x403a4b
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x148], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x403a56
sub ecx, dword [ebp - 0x148]
cmp ecx, esi
cmovbe esi, ecx
test esi, esi
je 0x403a85
mov edi, dword [ebp - 0x144]
push esi
push edx
lea eax, [edi + 0x24]
push eax
call sub.VCRUNTIME140.dll_memcpy
add edi, 0x24
add esp, 0xc
add edi, esi
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x403ac1
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x403ab7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x403ab7
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov byte [ebp - 4], 0xa
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0xf
mov byte [ebp - 0x160], 0
cmp edx, 8
jb 0x403b22
mov ecx, dword [ebp - 0x178]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x403b18
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x403b18
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov eax, dword [ebp - 0x144]
add eax, 0x24
sub edi, eax
add dword [ebx + 0x20], edi
call fcn.004143a0
push 0x7d
jmp 0x403355
push str.PreViewSetAngle
push dword [0x430090]
call esi
mov dword [0x4300c4], eax
test eax, eax
jne 0x403d31
call fcn.004143a0
push 0
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403165
push 0x98
lea eax, [ebp - 0xa8]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 4
lea ecx, [ebp - 0xa8]
call fcn.00407170
mov edx, 0x427620
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0xa8]
call fcn.00408430
mov edx, str.PreViewSetAngle
mov ecx, eax
call fcn.00408070
mov edx, 0x4276c0
mov ecx, eax
call fcn.00408430
call fcn.004143a0
push 4
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403362
call fcn.004143a0
push 4
push 0
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x6c]
mov ebx, eax
mov esi, 0x2000
mov ecx, dword [ebx + 0x20]
sub esi, ecx
lea eax, [ecx + ebx]
mov dword [ebp - 0x144], eax
lea edi, [eax + 0x24]
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004070b0
mov byte [ebp - 4], 0xd
cmp dword [eax + 0x14], 8
jb 0x403c20
mov eax, dword [eax]
sub esp, 0xc
lea ecx, [ebp - 0x160]
mov edx, eax
call fcn.004020b0
mov edx, eax
add esp, 0xc
cmp dword [edx + 0x14], 0x10
jb 0x403c3d
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x148], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x403c48
sub ecx, dword [ebp - 0x148]
cmp ecx, esi
cmovbe esi, ecx
test esi, esi
je 0x403c77
mov edi, dword [ebp - 0x144]
push esi
push edx
lea eax, [edi + 0x24]
push eax
call sub.VCRUNTIME140.dll_memcpy
add edi, 0x24
add esp, 0xc
add edi, esi
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x403cb3
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x403ca9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x403ca9
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0xf
mov byte [ebp - 0x160], 0
cmp edx, 8
jb 0x403d14
mov ecx, dword [ebp - 0x178]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x403d0a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x403d0a
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov eax, dword [ebp - 0x144]
add eax, 0x24
sub edi, eax
add dword [ebx + 0x20], edi
call fcn.004143a0
push 0x84
jmp 0x403355
push str.PreViewSetType
push dword [0x430090]
call esi
mov dword [0x4300c8], eax
test eax, eax
jne 0x403f29
call fcn.004143a0
push 0
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403165
push 0x98
lea eax, [ebp - 0xa8]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 4
lea ecx, [ebp - 0xa8]
call fcn.00407170
mov edx, 0x427620
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0xa8]
call fcn.00408430
mov edx, str.PreViewSetType
mov ecx, eax
call fcn.00408070
mov edx, 0x4276c0
mov ecx, eax
call fcn.00408430
call fcn.004143a0
push 4
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403362
call fcn.004143a0
push 4
push 0
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x6c]
mov ebx, eax
mov esi, 0x2000
mov ecx, dword [ebx + 0x20]
sub esi, ecx
lea eax, [ecx + ebx]
mov dword [ebp - 0x144], eax
lea edi, [eax + 0x24]
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004070b0
mov byte [ebp - 4], 0xf
cmp dword [eax + 0x14], 8
jb 0x403e15
mov eax, dword [eax]
sub esp, 0xc
lea ecx, [ebp - 0x160]
mov edx, eax
call fcn.004020b0
mov edx, eax
add esp, 0xc
cmp dword [edx + 0x14], 0x10
jb 0x403e32
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x148], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x403e40
sub ecx, dword [ebp - 0x148]
cmp ecx, esi
cmovbe esi, ecx
test esi, esi
je 0x403e6f
mov edi, dword [ebp - 0x144]
push esi
push edx
lea eax, [edi + 0x24]
push eax
call sub.VCRUNTIME140.dll_memcpy
add edi, 0x24
add esp, 0xc
add edi, esi
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x403eab
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x403ea1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x403ea1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0xf
mov byte [ebp - 0x160], 0
cmp edx, 8
jb 0x403f0c
mov ecx, dword [ebp - 0x178]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x403f02
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x403f02
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov eax, dword [ebp - 0x144]
add eax, 0x24
sub edi, eax
add dword [ebx + 0x20], edi
call fcn.004143a0
push 0x8b
jmp 0x403355
push str.PreViewSetModel
push dword [0x430090]
call esi
mov dword [0x4300cc], eax
test eax, eax
jne 0x40411e
call fcn.004143a0
push 0
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403165
push 0x98
lea eax, [ebp - 0xa8]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 4
lea ecx, [ebp - 0xa8]
call fcn.00407170
mov edx, 0x427620
mov dword [ebp - 4], 0x10
lea ecx, [ebp - 0xa8]
call fcn.00408430
mov edx, str.PreViewSetModel
mov ecx, eax
call fcn.00408070
mov edx, 0x4276c0
mov ecx, eax
call fcn.00408430
call fcn.004143a0
push 4
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403362
call fcn.004143a0
push 4
push 0
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x6c]
mov ebx, eax
mov esi, 0x2000
mov ecx, dword [ebx + 0x20]
sub esi, ecx
lea eax, [ecx + ebx]
mov dword [ebp - 0x144], eax
lea edi, [eax + 0x24]
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004070b0
mov byte [ebp - 4], 0x11
cmp dword [eax + 0x14], 8
jb 0x40400d
mov eax, dword [eax]
sub esp, 0xc
lea ecx, [ebp - 0x160]
mov edx, eax
call fcn.004020b0
mov edx, eax
add esp, 0xc
cmp dword [edx + 0x14], 0x10
jb 0x40402a
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x148], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x404035
sub ecx, dword [ebp - 0x148]
cmp ecx, esi
cmovbe esi, ecx
test esi, esi
je 0x404064
mov edi, dword [ebp - 0x144]
push esi
push edx
lea eax, [edi + 0x24]
push eax
call sub.VCRUNTIME140.dll_memcpy
add edi, 0x24
add esp, 0xc
add edi, esi
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x4040a0
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404096
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x404096
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov byte [ebp - 4], 0x10
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0xf
mov byte [ebp - 0x160], 0
cmp edx, 8
jb 0x404101
mov ecx, dword [ebp - 0x178]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4040f7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4040f7
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov eax, dword [ebp - 0x144]
add eax, 0x24
sub edi, eax
add dword [ebx + 0x20], edi
call fcn.004143a0
push 0x92
jmp 0x403355
push str.PreViewSacle
push dword [0x430090]
call esi
mov dword [0x4300d0], eax
test eax, eax
jne 0x404319
call fcn.004143a0
push 0
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403165
push 0x98
lea eax, [ebp - 0xa8]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 4
lea ecx, [ebp - 0xa8]
call fcn.00407170
mov edx, 0x427620
mov dword [ebp - 4], 0x12
lea ecx, [ebp - 0xa8]
call fcn.00408430
mov edx, str.PreViewSacle
mov ecx, eax
call fcn.00408070
mov edx, 0x4276c0
mov ecx, eax
call fcn.00408430
call fcn.004143a0
push 4
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403362
call fcn.004143a0
push 4
push 0
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x6c]
mov ebx, eax
mov esi, 0x2000
mov ecx, dword [ebx + 0x20]
sub esi, ecx
lea eax, [ecx + ebx]
mov dword [ebp - 0x144], eax
lea edi, [eax + 0x24]
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004070b0
mov byte [ebp - 4], 0x13
cmp dword [eax + 0x14], 8
jb 0x404202
mov eax, dword [eax]
sub esp, 0xc
lea ecx, [ebp - 0x160]
mov edx, eax
call fcn.004020b0
mov edx, eax
add esp, 0xc
cmp dword [edx + 0x14], 0x10
jb 0x40421f
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x148], eax
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x404230
sub ecx, dword [ebp - 0x148]
cmp ecx, esi
cmovbe esi, ecx
test esi, esi
je 0x40425f
mov edi, dword [ebp - 0x144]
push esi
push edx
lea eax, [edi + 0x24]
push eax
call sub.VCRUNTIME140.dll_memcpy
add edi, 0x24
add esp, 0xc
add edi, esi
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x40429b
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404291
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x404291
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov byte [ebp - 4], 0x12
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0xf
mov byte [ebp - 0x160], 0
cmp edx, 8
jb 0x4042fc
mov ecx, dword [ebp - 0x178]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4042f2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4042f2
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov eax, dword [ebp - 0x144]
add eax, 0x24
sub edi, eax
add dword [ebx + 0x20], edi
call fcn.004143a0
push 0x99
jmp 0x403355
push str.PreViewSetOpacity
push dword [0x430090]
call esi
mov dword [0x4300d4], eax
test eax, eax
jne 0x40450e
call fcn.004143a0
push 0
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403165
push 0x98
lea eax, [ebp - 0xa8]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 4
lea ecx, [ebp - 0xa8]
call fcn.00407170
mov edx, 0x427620
mov dword [ebp - 4], 0x14
lea ecx, [ebp - 0xa8]
call fcn.00408430
mov edx, str.PreViewSetOpacity
mov ecx, eax
call fcn.00408070
mov edx, 0x4276c0
mov ecx, eax
call fcn.00408430
call fcn.004143a0
push 4
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403362
call fcn.004143a0
push 4
push 0
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x6c]
mov ebx, eax
mov esi, 0x2000
mov ecx, dword [ebx + 0x20]
sub esi, ecx
lea eax, [ecx + ebx]
mov dword [ebp - 0x144], eax
lea edi, [eax + 0x24]
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004070b0
mov byte [ebp - 4], 0x15
cmp dword [eax + 0x14], 8
jb 0x4043fd
mov eax, dword [eax]
sub esp, 0xc
lea ecx, [ebp - 0x160]
mov edx, eax
call fcn.004020b0
mov edx, eax
add esp, 0xc
cmp dword [edx + 0x14], 0x10
jb 0x40441a
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x148], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x404425
sub ecx, dword [ebp - 0x148]
cmp ecx, esi
cmovbe esi, ecx
test esi, esi
je 0x404454
mov edi, dword [ebp - 0x144]
push esi
push edx
lea eax, [edi + 0x24]
push eax
call sub.VCRUNTIME140.dll_memcpy
add edi, 0x24
add esp, 0xc
add edi, esi
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x404490
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404486
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x404486
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0xf
mov byte [ebp - 0x160], 0
cmp edx, 8
jb 0x4044f1
mov ecx, dword [ebp - 0x178]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4044e7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4044e7
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov eax, dword [ebp - 0x144]
add eax, 0x24
sub edi, eax
add dword [ebx + 0x20], edi
call fcn.004143a0
push 0xa0
jmp 0x403355
push str.PreViewSetTextColor
push dword [0x430090]
call esi
mov dword [0x4300d8], eax
test eax, eax
jne 0x404709
call fcn.004143a0
push 0
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403165
push 0x98
lea eax, [ebp - 0xa8]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 4
lea ecx, [ebp - 0xa8]
call fcn.00407170
mov edx, 0x427620
mov dword [ebp - 4], 0x16
lea ecx, [ebp - 0xa8]
call fcn.00408430
mov edx, str.PreViewSetTextColor
mov ecx, eax
call fcn.00408070
mov edx, 0x4276c0
mov ecx, eax
call fcn.00408430
call fcn.004143a0
push 4
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403362
call fcn.004143a0
push 4
push 0
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x6c]
mov ebx, eax
mov esi, 0x2000
mov ecx, dword [ebx + 0x20]
sub esi, ecx
lea eax, [ecx + ebx]
mov dword [ebp - 0x144], eax
lea edi, [eax + 0x24]
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004070b0
mov byte [ebp - 4], 0x17
cmp dword [eax + 0x14], 8
jb 0x4045f2
mov eax, dword [eax]
sub esp, 0xc
lea ecx, [ebp - 0x160]
mov edx, eax
call fcn.004020b0
mov edx, eax
add esp, 0xc
cmp dword [edx + 0x14], 0x10
jb 0x40460f
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x148], eax
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x404620
sub ecx, dword [ebp - 0x148]
cmp ecx, esi
cmovbe esi, ecx
test esi, esi
je 0x40464f
mov edi, dword [ebp - 0x144]
push esi
push edx
lea eax, [edi + 0x24]
push eax
call sub.VCRUNTIME140.dll_memcpy
add edi, 0x24
add esp, 0xc
add edi, esi
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x40468b
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404681
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x404681
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov byte [ebp - 4], 0x16
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0xf
mov byte [ebp - 0x160], 0
cmp edx, 8
jb 0x4046ec
mov ecx, dword [ebp - 0x178]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4046e2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4046e2
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov eax, dword [ebp - 0x144]
add eax, 0x24
sub edi, eax
add dword [ebx + 0x20], edi
call fcn.004143a0
push 0xa7
jmp 0x403355
push str.PreViewSetFontSize
push dword [0x430090]
call esi
mov dword [0x4300dc], eax
test eax, eax
jne 0x4048fe
call fcn.004143a0
push 0
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403165
push 0x98
lea eax, [ebp - 0xa8]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 4
lea ecx, [ebp - 0xa8]
call fcn.00407170
mov edx, 0x427620
mov dword [ebp - 4], 0x18
lea ecx, [ebp - 0xa8]
call fcn.00408430
mov edx, str.PreViewSetFontSize
mov ecx, eax
call fcn.00408070
mov edx, 0x4276c0
mov ecx, eax
call fcn.00408430
call fcn.004143a0
push 4
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403362
call fcn.004143a0
push 4
push 0
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x6c]
mov ebx, eax
mov esi, 0x2000
mov ecx, dword [ebx + 0x20]
sub esi, ecx
lea eax, [ebx + ecx]
mov dword [ebp - 0x144], eax
lea edi, [eax + 0x24]
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004070b0
mov byte [ebp - 4], 0x19
cmp dword [eax + 0x14], 8
jb 0x4047ed
mov eax, dword [eax]
sub esp, 0xc
lea ecx, [ebp - 0x160]
mov edx, eax
call fcn.004020b0
mov edx, eax
add esp, 0xc
cmp dword [edx + 0x14], 0x10
jb 0x40480a
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x148], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x404815
sub ecx, dword [ebp - 0x148]
cmp ecx, esi
cmovbe esi, ecx
test esi, esi
je 0x404844
mov edi, dword [ebp - 0x144]
push esi
push edx
lea eax, [edi + 0x24]
push eax
call sub.VCRUNTIME140.dll_memcpy
add edi, 0x24
add esp, 0xc
add edi, esi
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x404880
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404876
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x404876
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0xf
mov byte [ebp - 0x160], 0
cmp edx, 8
jb 0x4048e1
mov ecx, dword [ebp - 0x178]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4048d7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4048d7
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
mov eax, dword [ebp - 0x144]
add eax, 0x24
sub edi, eax
add dword [ebx + 0x20], edi
call fcn.004143a0
push 0xae
jmp 0x403355
push str.PreViewFree
push dword [0x430090]
call esi
mov dword [0x4300e0], eax
test eax, eax
jne 0x404ad9
call fcn.004143a0
push 0
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x403165
push 0x98
lea eax, [ebp - 0x140]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 4
lea ecx, [ebp - 0x140]
call fcn.00407170
mov edx, 0x427620
mov dword [ebp - 4], 0x1a
lea ecx, [ebp - 0x140]
call fcn.00408430
mov edx, str.PreViewFree
mov ecx, eax
call fcn.00408070
mov edx, 0x4276c0
mov ecx, eax
call fcn.00408430
call fcn.004143a0
push 4
mov ecx, eax
push 0
mov edx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
test al, al
je 0x404aca
call fcn.004143a0
push 4
push 0
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x6c]
mov ebx, eax
mov esi, 0x2000
mov ecx, dword [ebx + 0x20]
sub esi, ecx
lea eax, [ebx + ecx]
mov dword [ebp - 0x144], eax
lea edi, [eax + 0x24]
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0x140]
call fcn.004070b0
mov byte [ebp - 4], 0x1b
cmp dword [eax + 0x14], 8
jb 0x4049e2
mov eax, dword [eax]
sub esp, 0xc
lea ecx, [ebp - 0x160]
mov edx, eax
call fcn.004020b0
mov edx, eax
add esp, 0xc
cmp dword [edx + 0x14], 0x10
jb 0x4049ff
mov edx, dword [edx]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x148], eax
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x404a10
sub ecx, dword [ebp - 0x148]
cmp ecx, esi
cmovbe esi, ecx
test esi, esi
je 0x404a3f
mov edi, dword [ebp - 0x144]
push esi
push edx
lea eax, [edi + 0x24]
push eax
call sub.VCRUNTIME140.dll_memcpy
add edi, 0x24
add esp, 0xc
add edi, esi
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x404a7b
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x404a71
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x404a71
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004212e0
add esp, 8
lea ecx, [ebp - 0x178]
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0xf
mov byte [ebp - 0x160], 0
mov byte [ebp - 4], 0x1a
call fcn.00406c60
mov eax, dword [ebp - 0x144]
add eax, 0x24
sub edi, eax
add dword [ebx + 0x20], edi
call fcn.004143a0
push 0xb5
push str.e:zhanluepdfconverter_srcpreviewworker_rcpreviewworker.cpp
push ebx
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x20]
lea ecx, [ebp - 0x140]
call fcn.00402eb0
xor al, al
jmp 0x404adb
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004210a4
mov esp, ebp
pop ebp
ret