Function at 0x42d0f2
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x565747
mov eax, dword fs:[0]
push eax
sub esp, 0x100
mov eax, dword [0x5c9030]
xor eax, esp
mov dword [esp + 0xf8], eax
push ebx
push esi
push edi
mov eax, dword [0x5c9030]
xor eax, esp
push eax
lea eax, [esp + 0x110]
mov dword fs:[0], eax
push 0x2f
mov ebx, str...CommonScanProject.cpp
push ebx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x2c], 0x59e098
mov dword [esp + 0x30], str.Gray
mov dword [esp + 0x34], str.Color
mov dword [esp + 0x38], str.Auto
mov dword [esp + 0x3c], str.Document_Table
mov dword [esp + 0x40], 0x59e0e4
mov dword [esp + 0x44], str.ADF_Duplex
mov dword [esp + 0x48], 0x59e104
mov dword [esp + 0x4c], str.LETTER
mov dword [esp + 0x50], str.LEGAL
mov dword [esp + 0x54], 0x59e128
mov dword [esp + 0x58], 0x59e130
mov dword [esp + 0x5c], str.TABLOID
mov dword [esp + 0x60], 0x59e148
mov dword [esp + 0x64], 0x59e150
mov dword [esp + 0x68], 0x59e158
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d1cd
push 0x2f
jmp 0x42d1dd
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d1e8
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42d1ea
mov eax, ebx
push 1
push 0x41
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
and dword [esp + 0x118], 0
push str.Scan_Structure___
push 0
mov ecx, eax
call fcn.00404c1a
mov edi, eax
call fcn.004027b4
or dword [esp + 0x11c], 0xffffffff
pop ecx
mov ecx, esi
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d237
push 0x2f
jmp 0x42d247
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d252
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42d254
mov eax, ebx
xor edi, edi
inc edi
push edi
push 0x42
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x118], edi
push dword [ecx + 0x88]
mov ecx, eax
push str.ADE:__d
push 0
call fcn.00404c1a
mov edi, eax
call fcn.004027b4
or dword [esp + 0x120], 0xffffffff
pop ecx
pop ecx
mov ecx, esi
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d2ad
push 0x2f
jmp 0x42d2bd
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d2c8
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42d2ca
mov eax, ebx
push 1
push 0x43
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x118], 2
push dword [ecx + 0x90]
mov ecx, eax
push str.Descreen:__d
push 0
call fcn.00404c1a
mov edi, eax
call fcn.004027b4
or dword [esp + 0x120], 0xffffffff
pop ecx
pop ecx
mov ecx, esi
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d325
push 0x2f
jmp 0x42d335
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d340
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42d342
mov eax, ebx
push 1
push 0x44
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x118], 3
push dword [ecx + 0x84]
mov ecx, eax
push str.PIM:__d
push 0
call fcn.00404c1a
mov edi, eax
call fcn.004027b4
or dword [esp + 0x120], 0xffffffff
pop ecx
pop ecx
mov ecx, esi
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d39d
push 0x2f
jmp 0x42d3ad
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d3b8
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42d3ba
mov eax, ebx
push 1
push 0x45
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x118], 4
push dword [ecx + 0x5c]
mov ecx, eax
push str.Show_UI:__d
push 0
call fcn.00404c1a
mov edi, eax
call fcn.004027b4
or dword [esp + 0x120], 0xffffffff
pop ecx
pop ecx
mov ecx, esi
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d412
push 0x2f
jmp 0x42d422
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d42d
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42d42f
mov eax, ebx
push 1
push 0x46
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x118], 5
push dword [ecx + 0x8c]
mov ecx, eax
push str.Unsharp:__d
push 0
call fcn.00404c1a
mov edi, eax
call fcn.004027b4
or dword [esp + 0x120], 0xffffffff
pop ecx
pop ecx
mov ecx, esi
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d48a
push 0x2f
jmp 0x42d49a
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d4a5
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42d4a7
mov eax, ebx
push 1
push 0x47
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
mov ecx, dword [esp + 0x14]
push ecx
push ecx
mov dword [esp + 0x120], 6
fld dword [ecx + 0x78]
fstp qword [esp]
push str.Width:__lf
push 0
mov ecx, eax
call fcn.00404c1a
mov edi, eax
call fcn.004027b4
or dword [esp + 0x124], 0xffffffff
add esp, 0xc
mov ecx, esi
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d505
push 0x2f
jmp 0x42d515
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d520
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42d522
mov eax, ebx
push 1
push 0x48
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
mov ecx, dword [esp + 0x14]
push ecx
push ecx
mov dword [esp + 0x120], 7
fld dword [ecx + 0x7c]
fstp qword [esp]
push str.Height:__lf
push 0
mov ecx, eax
call fcn.00404c1a
mov edi, eax
call fcn.004027b4
or dword [esp + 0x124], 0xffffffff
add esp, 0xc
mov ecx, esi
call fcn.00404ba8
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x74]
test eax, eax
js 0x42d584
cmp eax, 9
jae 0x42d584
mov eax, dword [esp + eax*4 + 0x40]
jmp 0x42d589
mov eax, str.Unknown
push eax
lea ecx, [esp + 0x24]
call fcn.00402372
push 0x2f
push ebx
mov dword [esp + 0x120], 8
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d5b0
push 0x2f
jmp 0x42d5c0
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d5cb
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42d5cd
mov eax, ebx
push 1
push 0x4a
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
push str.DocSize:
push 0
mov ecx, eax
mov byte [esp + 0x120], 9
call fcn.00404c1a
mov edi, eax
call fcn.0040cbfa
pop ecx
mov ecx, esi
mov byte [esp + 0x118], 8
call fcn.00404ba8
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x9c]
test eax, eax
js 0x42d621
cmp eax, 4
jae 0x42d621
mov eax, dword [esp + eax*4 + 0x30]
jmp 0x42d626
mov eax, str.Unknown
push eax
lea ecx, [esp + 0x20]
call fcn.00402372
push 0x2f
push ebx
mov byte [esp + 0x120], 0xa
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d64a
push 0x2f
jmp 0x42d65a
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d665
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42d667
mov eax, ebx
push 1
push 0x4c
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
push str.Doc_Source:
push 0
mov ecx, eax
mov byte [esp + 0x120], 0xb
call fcn.00404c1a
mov edi, eax
call fcn.0040cbfa
pop ecx
mov ecx, esi
mov byte [esp + 0x118], 0xa
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d6b4
push 0x2f
jmp 0x42d6c4
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d6cf
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42d6d1
mov eax, ebx
push 1
push 0x4d
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
push str.DocType:
push 0
mov ecx, eax
mov byte [esp + 0x120], 0xc
call fcn.00404c1a
mov edi, eax
call fcn.0040cbfa
pop ecx
mov ecx, esi
mov byte [esp + 0x118], 0xa
call fcn.00404ba8
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x80]
test eax, eax
js 0x42d725
cmp eax, 3
jae 0x42d725
mov eax, dword [esp + eax*4 + 0x24]
jmp 0x42d72a
mov eax, str.Unknown
push eax
lea ecx, [esp + 0x1c]
call fcn.00402372
push 0x2f
push ebx
mov byte [esp + 0x120], 0xd
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d74e
push 0x2f
jmp 0x42d75e
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d769
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42d76b
mov eax, ebx
push 1
push 0x4f
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
push str.ImageType:
push 0
mov ecx, eax
mov byte [esp + 0x120], 0xe
call fcn.00404c1a
mov edi, eax
call fcn.0040cbfa
pop ecx
mov ecx, esi
mov byte [esp + 0x118], 0xd
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d7b8
push 0x2f
jmp 0x42d7c8
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d7d3
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42d7d5
mov eax, ebx
push 1
push 0x50
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x118], 0xf
push dword [ecx + 0x98]
mov ecx, eax
push str.Orientation:__d
push 0
call fcn.00404c1a
mov edi, eax
call fcn.004027b4
pop ecx
pop ecx
mov ecx, esi
mov byte [esp + 0x118], 0xd
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d82d
push 0x2f
jmp 0x42d83d
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d848
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42d84a
mov eax, ebx
push 1
push 0x51
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x118], 0x10
push dword [ecx + 0x6c]
mov ecx, eax
push str.QualityIndex:__d
push 0
call fcn.00404c1a
mov edi, eax
call fcn.004027b4
pop ecx
pop ecx
mov ecx, esi
mov byte [esp + 0x118], 0xd
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d89f
push 0x2f
jmp 0x42d8af
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d8ba
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42d8bc
mov eax, ebx
push 1
push 0x52
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x118], 0x11
push dword [ecx + 0x70]
mov ecx, eax
push str.Resolution:__d
push 0
call fcn.00404c1a
mov edi, eax
call fcn.004027b4
pop ecx
pop ecx
mov ecx, esi
mov byte [esp + 0x118], 0xd
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d911
push 0x2f
jmp 0x42d921
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d92c
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42d92e
mov eax, ebx
push 1
push 0x53
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x118], 0x12
push dword [ecx + 0xa0]
mov ecx, eax
push str.ScanMode:__d
push 0
call fcn.00404c1a
mov edi, eax
call fcn.004027b4
pop ecx
pop ecx
mov ecx, esi
mov byte [esp + 0x118], 0xd
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d986
push 0x2f
jmp 0x42d996
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d9a1
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42d9a3
mov eax, ebx
push 1
push 0x54
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x118], 0x13
push dword [ecx + 0x94]
mov ecx, eax
push str.UIMode:__d
push 0
call fcn.00404c1a
mov edi, eax
call fcn.004027b4
pop ecx
pop ecx
mov ecx, esi
mov byte [esp + 0x118], 0xd
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42d9fb
push 0x2f
jmp 0x42da0b
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42da16
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42da18
mov eax, ebx
push 1
push 0x55
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x118], 0x14
push dword [ecx + 0xa4]
mov ecx, eax
push str.Save_Format:__d
push 0
call fcn.00404c1a
mov edi, eax
call fcn.004027b4
pop ecx
pop ecx
mov ecx, esi
mov byte [esp + 0x118], 0xd
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42da70
push 0x2f
jmp 0x42da80
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42da8b
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42da8d
mov eax, ebx
push 1
push 0x56
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
push str.File_prefix:
push 0
mov ecx, eax
mov byte [esp + 0x120], 0x15
call fcn.00404c1a
mov edi, eax
call fcn.0040cbfa
pop ecx
mov ecx, esi
mov byte [esp + 0x118], 0xd
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42dada
push 0x2f
jmp 0x42daea
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42daf5
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42daf7
mov eax, ebx
push 1
push 0x57
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
push str.Target_folder:
push 0
mov ecx, eax
mov byte [esp + 0x120], 0x16
call fcn.00404c1a
mov edi, eax
call fcn.0040cbfa
pop ecx
mov ecx, esi
mov byte [esp + 0x118], 0xd
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42db44
push 0x2f
jmp 0x42db54
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42db5f
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42db61
mov eax, ebx
push 1
push 0x58
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
push str.User_target_folder:
push 0
mov ecx, eax
mov byte [esp + 0x120], 0x17
call fcn.00404c1a
mov edi, eax
call fcn.0040cbfa
pop ecx
mov ecx, esi
mov byte [esp + 0x118], 0xd
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42dbae
push 0x2f
jmp 0x42dbbe
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42dbc9
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42dbcb
mov eax, ebx
push 1
push 0x59
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
push str.Device_Name:
push 0
mov ecx, eax
mov byte [esp + 0x120], 0x18
call fcn.00404c1a
mov edi, eax
call fcn.0040cbfa
pop ecx
mov ecx, esi
mov byte [esp + 0x118], 0xd
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42dc18
push 0x2f
jmp 0x42dc28
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42dc33
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42dc35
mov eax, ebx
push 1
push 0x5a
push eax
lea esi, [esp + 0x70]
call fcn.00404b3c
push str.Doc_type_string:
push 0
mov ecx, eax
mov byte [esp + 0x120], 0x19
call fcn.00404c1a
mov edi, eax
call fcn.0040cbfa
pop ecx
mov ecx, esi
mov byte [esp + 0x118], 0xd
call fcn.00404ba8
push 0x2f
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42dc82
push 0x2f
jmp 0x42dc92
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
test eax, eax
je 0x42dc9d
push 0x5c
push ebx
call fcn.005385d0
pop ecx
pop ecx
inc eax
jmp 0x42dc9f
mov eax, ebx
push 1
push 0x5b
push eax
lea esi, [esp + 0xc0]
call fcn.00404b3c
push str.__Scan_Structure
push 0
mov ecx, eax
mov byte [esp + 0x120], 0x1a
call fcn.00404c1a
mov edi, eax
call fcn.004027b4
pop ecx
mov ecx, esi
mov byte [esp + 0x118], 0xd
call fcn.00404ba8
mov ecx, dword [esp + 0x18]
add ecx, 0xfffffff0
call fcn.00402760
mov ecx, dword [esp + 0x1c]
add ecx, 0xfffffff0
call fcn.00402760
mov ecx, dword [esp + 0x20]
add ecx, 0xfffffff0
call fcn.00402760
mov ecx, dword [esp + 0x110]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xf8]
xor ecx, esp
call fcn.0053780e
mov esp, ebp
pop ebp
ret