Function at 0x430af6
Capabilities:
Read .ini file

Disassembly:
push 0x464
mov eax, 0x5654b1
call fcn.0053cd89
and dword [ebp - 0x464], 0
mov esi, ecx
mov dword [ebp - 0x424], esi
mov ebx, edx
mov dword [ebp - 4], 2
call fcn.00437969
push eax
mov ecx, esi
call fcn.00402738
mov dword [ebp - 0x464], 1
call fcn.00437969
push eax
lea ecx, [ebp - 0x44c]
call fcn.00402738
mov byte [ebp - 4], 3
call fcn.00437969
push eax
lea ecx, [ebp - 0x460]
call fcn.00402738
lea edi, [ebp - 0x470]
mov byte [ebp - 4], 4
call fcn.004330f1
mov byte [ebp - 4], 5
mov dword [ebp - method.CEpsonScanSetting.virtual_0], vtable.CEpsonScanSetting.0
call fcn.00437969
push eax
lea ecx, [ebp - 0x450]
call fcn.00402738
lea eax, [ebp - 0x420]
push eax
mov byte [ebp - 4], 6
call fcn.00434f11
pop ecx
call fcn.00437969
push eax
lea ecx, [ebp - 0x45c]
call fcn.00402738
push str.ESCNDV
push 0x59a65c
lea eax, [ebp - 0x420]
push eax
mov esi, str._s_s_s
lea eax, [ebp - 0x45c]
push esi
push eax
mov byte [ebp - 4], 7
call fcn.0040a7d8
add esp, 0x14
call fcn.00437969
push eax
lea ecx, [ebp - 0x458]
call fcn.00402738
push ebx
push ecx
mov byte [ebp - 4], 8
mov ecx, esp
mov dword [ebp - 0x428], esp
push 0x598e00
call fcn.00402372
lea edi, [ebp - 0x43c]
call fcn.00436d6b
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x458]
mov byte [ebp - 4], 9
call fcn.004024a4
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x43c]
add ecx, 0xfffffff0
call fcn.00402760
call fcn.00437969
push eax
lea ecx, [ebp - 0x43c]
call fcn.00402738
mov byte [ebp - 4], 0xa
push dword [ebp + 8]
lea eax, [ebp - 0x43c]
push dword [ebp - 0x458]
push dword [ebp - 0x45c]
push esi
push eax
call fcn.0040a7d8
add esp, 0x14
push dword [ebp - 0x43c]
lea ecx, [ebp - 0x450]
call fcn.0040234c
xor eax, eax
push 0x206
mov word [ebp - 0x218], ax
xor esi, esi
lea eax, [ebp - 0x216]
push esi
push eax
call fcn.00538410
lea eax, [ebp - 0x218]
push eax
call fcn.00434eea
add esp, 0x10
call fcn.00437969
push eax
lea ecx, [ebp - 0x440]
call fcn.00402738
push str.Resources
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x440]
push 0x59a49c
push eax
mov byte [ebp - 4], 0xb
call fcn.0040a7d8
add esp, 0x10
mov dword [ebp - method.CLcMgrStub.virtual_0], vtable.CLcMgrStub.0
mov dword [ebp - 0x444], esi
mov byte [ebp - 4], 0xc
mov eax, dword [ebp + 0xc]
cmp dword [eax - 0xc], esi
je 0x430d74
call fcn.00437969
push eax
lea ecx, [ebp - 0x434]
call fcn.00402738
mov byte [ebp - 4], 0xd
push dword [ebp + 0xc]
lea eax, [ebp - 0x434]
push dword [ebp - 0x440]
push str._s_s
push eax
call fcn.0040a7d8
add esp, 0xc
mov ecx, esp
mov dword [ebp - 0x428], esp
push str.string
call fcn.00402372
mov byte [ebp - 4], 0xe
mov edi, dword [ebp - 0x434]
push ecx
add edi, 0xfffffff0
mov dword [ebp - 0x430], esp
mov esi, esp
push edi
call fcn.00402446
add eax, 0x10
mov dword [esi], eax
pop ecx
lea esi, [ebp - 0x448]
mov byte [ebp - 4], 0xd
call fcn.00416f57
mov ecx, edi
mov byte [ebp - 4], 0xc
call fcn.00402760
jmp 0x430db8
push ecx
mov ecx, esp
mov dword [ebp - 0x428], esp
push str.string
call fcn.00402372
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0x440]
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x430], esp
mov esi, esp
push eax
call fcn.00402446
add eax, 0x10
mov dword [esi], eax
pop ecx
lea esi, [ebp - 0x448]
mov byte [ebp - 4], 0xc
call fcn.00416f57
call fcn.00437969
push eax
lea ecx, [ebp - 0x434]
call fcn.00402738
push 0x59e580
lea ebx, [ebp - 0x42c]
lea esi, [ebp - 0x448]
mov byte [ebp - 4], 0x10
call fcn.00416fac
push eax
lea ecx, [ebp - 0x434]
mov byte [ebp - 4], 0x11
call fcn.004024a4
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x42c]
add ecx, 0xfffffff0
call fcn.00402760
push dword [ebp - 0x450]
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
push 0x12c
push str.Resolution
mov esi, str.ScanSettings
push esi
call edi
push eax
push dword [ebp - 0x434]
lea eax, [ebp - 0x44c]
push eax
call fcn.0040a7d8
push 0x59e57c
lea eax, [ebp - 0x44c]
push eax
lea eax, [ebp - 0x42c]
push eax
call fcn.0040195d
add esp, 0x18
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x424]
push eax
call fcn.004024a4
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x42c]
add ecx, 0xfffffff0
call fcn.00402760
push dword [ebp - 0x450]
push 0
push str.ImageType
push esi
call edi
sub eax, 0
je 0x430e9e
dec eax
je 0x430e91
dec eax
je 0x430e99
dec eax
je 0x430e95
push 2
jmp 0x430ea0
xor eax, eax
jmp 0x430ea1
xor eax, eax
inc eax
jmp 0x430ea1
push 3
pop eax
lea esi, [ebp - 0x428]
call fcn.004333bb
mov byte [ebp - 4], 0x13
push dword [eax]
lea ebx, [ebp - 0x430]
lea esi, [ebp - 0x448]
call fcn.00416fac
push eax
mov byte [ebp - 4], 0x14
push dword [ebp - 0x424]
lea eax, [ebp - 0x438]
push eax
call fcn.00401906
push 0x59e57c
push eax
lea eax, [ebp - 0x42c]
push eax
mov byte [ebp - 4], 0x15
call fcn.0040195d
add esp, 0x18
mov byte [ebp - 4], 0x16
mov ecx, dword [ebp - 0x424]
push eax
call fcn.004024a4
mov ecx, dword [ebp - 0x42c]
add ecx, 0xfffffff0
call fcn.00402760
mov ecx, dword [ebp - 0x438]
add ecx, 0xfffffff0
call fcn.00402760
mov ecx, dword [ebp - 0x430]
add ecx, 0xfffffff0
call fcn.00402760
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x428]
add ecx, 0xfffffff0
call fcn.00402760
push dword [ebp - 0x450]
push 0xffffffffffffffff
push 0x59b178
push str.FileSaveSettings
call edi
dec eax
je 0x430f7c
dec eax
je 0x430f78
dec eax
je 0x430f73
dec eax
je 0x430f6f
dec eax
je 0x430f6b
sub eax, 3
jne 0x430f78
push 3
jmp 0x430f75
push 5
jmp 0x430f75
push 2
jmp 0x430f75
push 4
pop eax
jmp 0x430f7f
xor eax, eax
jmp 0x430f7f
xor eax, eax
inc eax
push eax
lea ecx, [ebp - 0x42c]
lea esi, [ebp - 0x470]
call fcn.004332d7
mov byte [ebp - 4], 0x17
push dword [eax]
lea ebx, [ebp - 0x438]
lea esi, [ebp - 0x448]
call fcn.00416fac
push eax
mov byte [ebp - 4], 0x18
push dword [ebp - 0x424]
lea eax, [ebp - 0x430]
push eax
call fcn.00401906
push 0x59e57c
push eax
lea eax, [ebp - 0x428]
push eax
mov byte [ebp - 4], 0x19
call fcn.0040195d
add esp, 0x18
mov byte [ebp - 4], 0x1a
mov ecx, dword [ebp - 0x424]
push eax
call fcn.004024a4
mov ecx, dword [ebp - 0x428]
add ecx, 0xfffffff0
call fcn.00402760
mov ecx, dword [ebp - 0x430]
add ecx, 0xfffffff0
call fcn.00402760
mov ecx, dword [ebp - 0x438]
add ecx, 0xfffffff0
call fcn.00402760
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x42c]
add ecx, 0xfffffff0
call fcn.00402760
push dword [ebp - 0x450]
push 0
push str.DocumentSource
push str.ScanSettings
call edi
cmp eax, 8
ja case.0x43103d.1064
jmp dword [eax*4 + 0x431196]
xor eax, eax
inc eax
jmp 0x431068
push 2
pop eax
jmp 0x431068
push 3
jmp 0x43104b
push 7
jmp 0x43104b
push 8
jmp 0x43104b
push 4
jmp 0x43104b
push 6
jmp 0x43104b
push 5
jmp 0x43104b
xor eax, eax
push eax
lea ecx, [ebp - 0x438]
lea esi, [ebp - 0x470]
call fcn.00433346
mov byte [ebp - 4], 0x1b
push dword [eax]
lea ebx, [ebp - 0x430]
lea esi, [ebp - 0x448]
call fcn.00416fac
push eax
mov byte [ebp - 4], 0x1c
push dword [ebp - 0x424]
lea eax, [ebp - 0x428]
push eax
call fcn.00401906
add esp, 0xc
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x424]
push eax
call fcn.004024a4
mov ecx, dword [ebp - 0x428]
add ecx, 0xfffffff0
call fcn.00402760
mov ecx, dword [ebp - 0x430]
add ecx, 0xfffffff0
call fcn.00402760
mov ecx, dword [ebp - 0x438]
add ecx, 0xfffffff0
call fcn.00402760
mov ecx, dword [ebp - 0x434]
add ecx, 0xfffffff0
call fcn.00402760
mov ecx, esi
mov byte [ebp - 4], 0xb
call fcn.00416f46
mov ecx, dword [ebp - 0x440]
add ecx, 0xfffffff0
call fcn.00402760
mov ecx, dword [ebp - 0x43c]
add ecx, 0xfffffff0
call fcn.00402760
mov ecx, dword [ebp - 0x458]
add ecx, 0xfffffff0
call fcn.00402760
mov ecx, dword [ebp - 0x45c]
add ecx, 0xfffffff0
call fcn.00402760
lea ecx, [ebp - 0x454]
call fcn.00412739
lea ecx, [ebp - 0x46c]
mov dword [ebp - method.ScanSettingManager.virtual_0], vtable.ScanSettingManager.0
call fcn.00433435
mov ecx, dword [ebp - 0x460]
add ecx, 0xfffffff0
call fcn.00402760
mov ecx, dword [ebp - 0x44c]
add ecx, 0xfffffff0
call fcn.00402760
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff0
call fcn.00402760
mov ecx, dword [ebp + 0xc]
add ecx, 0xfffffff0
call fcn.00402760
mov eax, dword [ebp - 0x424]
call fcn.0053ce0c
ret 8