Function at 0x180007de0
Capabilities:
Link many functions at runtime

Disassembly:
push rbp
sub rsp, 0x30
mov rbp, rcx
call fcn.180027ac0
mov rcx, qword [0x1800cc980]
mov r9, rbp
mov qword [0x1800c9b80], rax
mov edx, 2
test rax, rax
je 0x180008f47
mov qword [rsp + 0x40], rbx
lea r8, [0x1800a57d0]
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x20], rax
call fcn.1800073b0
mov rcx, qword [0x1800c9b80]
lea rdi, str.cScanGetScannerName
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetScannerNameW
mov rbx, rax
mov qword [0x1800c5458], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
xor esi, esi
lea rcx, [0x1800a57cd]
test rbx, rbx
mov qword [0x1800c5468], rax
sete sil
test rbx, rbx
mov rbx, qword [rsp + 0x40]
cmovne rdi, rcx
test rax, rax
jne 0x180007e96
mov esi, 1
lea rdi, str.cScanGetScannerNameW
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetSerialNumberA
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c55c0], rax
test rax, rax
jne 0x180007ec2
mov esi, 1
lea rdi, str.cScanGetSerialNumberA
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBrightnessFrontEx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c54a8], rax
test rax, rax
jne 0x180007eee
mov esi, 1
lea rdi, str.cScanBrightnessFrontEx
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBrightnessBackEx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c54b0], rax
test rax, rax
jne 0x180007f1a
mov esi, 1
lea rdi, str.cScanBrightnessBackEx
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanContrastFrontEx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c54c8], rax
test rax, rax
jne 0x180007f46
mov esi, 1
lea rdi, str.cScanContrastFrontEx
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanContrastBackEx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c54d0], rax
test rax, rax
jne 0x180007f72
mov esi, 1
lea rdi, str.cScanContrastBackEx
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanSetParams
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c54f0], rax
test rax, rax
jne 0x180007f9e
mov esi, 1
lea rdi, str.cScanSetParams
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanPaperStatus
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c54d8], rax
test rax, rax
jne 0x180007fca
mov esi, 1
lea rdi, str.cScanPaperStatus
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetResolution
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c54e0], rax
test rax, rax
jne 0x180007ff6
mov esi, 1
lea rdi, str.cScanGetResolution
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanSubInitW
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5560], rax
test rax, rax
jne 0x180008022
mov esi, 1
lea rdi, str.cScanSubInitW
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanSubExitW
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5578], rax
test rax, rax
jne 0x18000804e
mov esi, 1
lea rdi, str.cScanSubExitW
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanSetEndorser
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5580], rax
test rax, rax
jne 0x18000807a
mov esi, 1
lea rdi, str.cScanSetEndorser
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetEndorser
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5598], rax
test rax, rax
jne 0x1800080a6
mov esi, 1
lea rdi, str.cScanGetEndorser
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanWriteParam
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5630], rax
test rax, rax
jne 0x1800080d2
mov esi, 1
lea rdi, str.cScanWriteParam
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanReadParam
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5648], rax
test rax, rax
jne 0x1800080fe
mov esi, 1
lea rdi, str.cScanReadParam
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanWriteParamW
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5640], rax
test rax, rax
jne 0x18000812a
mov esi, 1
lea rdi, str.cScanWriteParamW
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanReadParamW
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5658], rax
test rax, rax
jne 0x180008156
mov esi, 1
lea rdi, str.cScanReadParamW
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetLastWrProfSectW
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetLastWrProfSectA
mov qword [0x1800c5660], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanSingleImage
mov qword [0x1800c5668], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c56a0], rax
test rax, rax
jne 0x1800081b8
mov esi, 1
lea rdi, str.cScanSingleImage
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanDeskewImage
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c56a8], rax
test rax, rax
jne 0x1800081e4
mov esi, 1
lea rdi, str.cScanDeskewImage
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBruteFlush
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c56c8], rax
test rax, rax
jne 0x180008210
mov esi, 1
lea rdi, str.cScanBruteFlush
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanCheckedBruteFlush
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c56c0], rax
test rax, rax
jne 0x18000823c
mov esi, 1
lea rdi, str.cScanCheckedBruteFlush
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanIsActive
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c56d0], rax
test rax, rax
jne 0x180008268
mov esi, 1
lea rdi, str.cScanIsActive
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanImagesAvailable
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c56d8], rax
test rax, rax
jne 0x180008294
mov esi, 1
lea rdi, str.cScanImagesAvailable
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanSetQueueingStat
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c56e0], rax
test rax, rax
jne 0x1800082c0
mov esi, 1
lea rdi, str.cScanSetQueueingStat
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetLastError
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c56e8], rax
test rax, rax
jne 0x1800082ec
mov esi, 1
lea rdi, str.cScanGetLastError
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetLastErrorW
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetImagesPerPaper
mov qword [0x1800c56f8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c54f8], rax
test rax, rax
jne 0x180008333
mov esi, 1
lea rdi, str.cScanGetImagesPerPaper
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcAvailable
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5928], rax
test rax, rax
jne 0x18000835f
mov esi, 1
lea rdi, str.cScanBarcAvailable
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcWriteParam
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5930], rax
test rax, rax
jne 0x18000838b
mov esi, 1
lea rdi, str.cScanBarcWriteParam
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcReadParam
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5948], rax
test rax, rax
jne 0x1800083b7
mov esi, 1
lea rdi, str.cScanBarcReadParam
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcWriteParamW
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5940], rax
test rax, rax
jne 0x1800083e3
mov esi, 1
lea rdi, str.cScanBarcWriteParamW
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcReadParamW
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5958], rax
test rax, rax
jne 0x18000840f
mov esi, 1
lea rdi, str.cScanBarcReadParamW
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcExportProfData
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5960], rax
test rax, rax
jne 0x18000843b
mov esi, 1
lea rdi, str.cScanBarcExportProfData
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcImportProfData
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5968], rax
test rax, rax
jne 0x180008467
mov esi, 1
lea rdi, str.cScanBarcImportProfData
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcHDecodeInf
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c59d8], rax
test rax, rax
jne 0x180008493
mov esi, 1
lea rdi, str.cScanBarcHDecodeInf
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcHPatchDecode
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c59f8], rax
test rax, rax
jne 0x1800084bf
mov esi, 1
lea rdi, str.cScanBarcHPatchDecode
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcMode
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5970], rax
test rax, rax
jne 0x1800084eb
mov esi, 1
lea rdi, str.cScanBarcMode
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcSetTypeList
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5998], rax
test rax, rax
jne 0x180008517
mov esi, 1
lea rdi, str.cScanBarcSetTypeList
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcGetTypeList
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c59a0], rax
test rax, rax
jne 0x180008543
mov esi, 1
lea rdi, str.cScanBarcGetTypeList
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcAreaEnable
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5a00], rax
test rax, rax
jne 0x18000856f
mov esi, 1
lea rdi, str.cScanBarcAreaEnable
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcSetArea
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5a08], rax
test rax, rax
jne 0x18000859b
mov esi, 1
lea rdi, str.cScanBarcSetArea
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcGetArea
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5a10], rax
test rax, rax
jne 0x1800085c7
mov esi, 1
lea rdi, str.cScanBarcGetArea
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcPatchAreaEnable
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5a18], rax
test rax, rax
jne 0x1800085f3
mov esi, 1
lea rdi, str.cScanBarcPatchAreaEnable
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcSetPatchArea
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5a20], rax
test rax, rax
jne 0x18000861f
mov esi, 1
lea rdi, str.cScanBarcSetPatchArea
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanBarcGetPatchArea
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5a28], rax
test rax, rax
jne 0x18000864b
mov esi, 1
lea rdi, str.cScanBarcGetPatchArea
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanQueueingBuffer_IsEnabled
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5708], rax
test rax, rax
jne 0x180008677
mov esi, 1
lea rdi, str.cScanQueueingBuffer_IsEnabled
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanQueueingBuffer_Disable
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5710], rax
test rax, rax
jne 0x1800086a3
mov esi, 1
lea rdi, str.cScanQueueingBuffer_Disable
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanQueueingBuffer_Enable
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5718], rax
test rax, rax
jne 0x1800086cf
mov esi, 1
lea rdi, str.cScanQueueingBuffer_Enable
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanQueueingBuffer_Default
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5720], rax
test rax, rax
jne 0x1800086fb
mov esi, 1
lea rdi, str.cScanQueueingBuffer_Default
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanQueueingBuffer_DisableClear
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5728], rax
test rax, rax
jne 0x180008727
mov esi, 1
lea rdi, str.cScanQueueingBuffer_DisableClear
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanQueueingBuffer_GetStatus
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5730], rax
test rax, rax
jne 0x180008753
mov esi, 1
lea rdi, str.cScanQueueingBuffer_GetStatus
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanQueueingBuffer_GetCount
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5738], rax
test rax, rax
jne 0x18000877f
mov esi, 1
lea rdi, str.cScanQueueingBuffer_GetCount
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanDlgLanguage
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c55f8], rax
test rax, rax
jne 0x1800087ab
mov esi, 1
lea rdi, str.cScanDlgLanguage
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanDlgControl
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5600], rax
test rax, rax
jne 0x1800087d7
mov esi, 1
lea rdi, str.cScanDlgControl
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanSetupW
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5618], rax
test rax, rax
jne 0x180008803
mov esi, 1
lea rdi, str.cScanSetupW
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanUnloadDriver
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c55d0], rax
test rax, rax
jne 0x18000882f
mov esi, 1
lea rdi, str.cScanUnloadDriver
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanLoadDriverW
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c55f0], rax
test rax, rax
jne 0x18000885b
mov esi, 1
lea rdi, str.cScanLoadDriverW
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanLoadDriverEx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5740], rax
test rax, rax
jne 0x180008887
mov esi, 1
lea rdi, str.cScanLoadDriverEx
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanLoadDriverEx2
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanNewDriverDLG
mov qword [0x1800c5758], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5778], rax
test rax, rax
jne 0x1800088ce
mov esi, 1
lea rdi, str.cScanNewDriverDLG
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanExportProfData
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5790], rax
test rax, rax
jne 0x1800088fa
mov esi, 1
lea rdi, str.cScanExportProfData
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanImportProfData
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5798], rax
test rax, rax
jne 0x180008926
mov esi, 1
lea rdi, str.cScanImportProfData
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetDriverFileName
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c57a0], rax
test rax, rax
jne 0x180008952
mov esi, 1
lea rdi, str.cScanGetDriverFileName
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetFeederAlign
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c57c0], rax
test rax, rax
jne 0x18000897e
mov esi, 1
lea rdi, str.cScanGetFeederAlign
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanStartKey
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5808], rax
test rax, rax
jne 0x1800089aa
mov esi, 1
lea rdi, str.cScanStartKey
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanResolution
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5810], rax
test rax, rax
jne 0x1800089d6
mov esi, 1
lea rdi, str.cScanResolution
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanPaperFormat
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5818], rax
test rax, rax
jne 0x180008a02
mov esi, 1
lea rdi, str.cScanPaperFormat
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanLandscape
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5820], rax
test rax, rax
jne 0x180008a2e
mov esi, 1
lea rdi, str.cScanLandscape
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanMirror
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5828], rax
test rax, rax
jne 0x180008a5a
mov esi, 1
lea rdi, str.cScanMirror
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanInvers
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5830], rax
test rax, rax
jne 0x180008a86
mov esi, 1
lea rdi, str.cScanInvers
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanDeskew
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5838], rax
test rax, rax
jne 0x180008ab2
mov esi, 1
lea rdi, str.cScanDeskew
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanFeeder
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c57c8], rax
test rax, rax
jne 0x180008ade
mov esi, 1
lea rdi, str.cScanFeeder
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanDithermode
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c57f8], rax
test rax, rax
jne 0x180008b0a
mov esi, 1
lea rdi, str.cScanDithermode
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanEndorser
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c57d8], rax
test rax, rax
jne 0x180008b36
mov esi, 1
lea rdi, str.cScanEndorser
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanSetParamUserPaperSize
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5888], rax
test rax, rax
jne 0x180008b62
mov esi, 1
lea rdi, str.cScanSetParamUserPaperSize
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetParamCurrentPaperSize
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5880], rax
test rax, rax
jne 0x180008b8e
mov esi, 1
lea rdi, str.cScanGetParamCurrentPaperSize
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanRotF
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5840], rax
test rax, rax
jne 0x180008bba
mov esi, 1
lea rdi, str.cScanRotF
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanRotB
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5848], rax
test rax, rax
jne 0x180008be6
mov esi, 1
lea rdi, str.cScanRotB
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanSides
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5850], rax
test rax, rax
jne 0x180008c12
mov esi, 1
lea rdi, str.cScanSides
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanQueueing
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5858], rax
test rax, rax
jne 0x180008c3e
mov esi, 1
lea rdi, str.cScanQueueing
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanTimeout
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5860], rax
test rax, rax
jne 0x180008c6a
mov esi, 1
lea rdi, str.cScanTimeout
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanCoding
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5868], rax
test rax, rax
jne 0x180008c96
mov esi, 1
lea rdi, str.cScanCoding
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetPhysWidth
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c58a0], rax
test rax, rax
jne 0x180008cc2
mov esi, 1
lea rdi, str.cScanGetPhysWidth
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetPhysHeight
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c58a8], rax
test rax, rax
jne 0x180008cee
mov esi, 1
lea rdi, str.cScanGetPhysHeight
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanSetNewScn_CB
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c58b0], rax
test rax, rax
jne 0x180008d1a
mov esi, 1
lea rdi, str.cScanSetNewScn_CB
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetImageInfo
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c58c8], rax
test rax, rax
jne 0x180008d46
mov esi, 1
lea rdi, str.cScanGetImageInfo
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetDrvDirectInfo
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c58d0], rax
test rax, rax
jne 0x180008d72
mov esi, 1
lea rdi, str.cScanGetDrvDirectInfo
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanSet_CB
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c58d8], rax
test rax, rax
jne 0x180008d9e
mov esi, 1
lea rdi, str.cScanSet_CB
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanColorMode
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c58f0], rax
test rax, rax
jne 0x180008dca
mov esi, 1
lea rdi, str.cScanColorMode
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanSetHwnd
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanSetEOPMD
mov qword [0x1800c5908], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanColorDetectAct
mov qword [0x1800c54e8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanSptiDirect
mov qword [0x1800c5530], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800c5628], rax
test rax, rax
jne 0x180008e47
mov esi, 1
lea rdi, str.cScanSptiDirect
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetLastEndorsedStringA
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanGetLastEndorserCounter
mov qword [0x1800c57e0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanDiagStat
mov qword [0x1800c57f0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanTabDlg_Register
mov qword [0x1800c5500], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanTabDlg_Remove
mov qword [0x1800c5918], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800c9b80]
lea rdx, str.cScanSetKeyCB
mov qword [0x1800c5920], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test esi, esi
mov rsi, qword [rsp + 0x48]
mov qword [0x1800c5470], rax
je 0x180008f37
mov rcx, qword [0x1800cc980]
lea r8, str._Missing_Proc_Address____s__:___s__
mov r9, rbp
mov qword [rsp + 0x20], rdi
mov edx, 2
call fcn.1800073b0
mov rcx, qword [0x1800c9b80]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rdi, qword [rsp + 0x50]
xor eax, eax
mov qword [0x1800c9b80], 0
add rsp, 0x30
pop rbp
ret
mov rdi, qword [rsp + 0x50]
mov eax, 1
add rsp, 0x30
pop rbp
ret
lea r8, str._Cannot_load_lib___s__
call fcn.1800073b0
xor eax, eax
add rsp, 0x30
pop rbp
ret