Function at 0x42d95f
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x5664a7
mov eax, dword fs:[0]
push eax
sub esp, 0x120
mov eax, dword [0x5c9030]
xor eax, esp
mov dword [esp + 0x118], eax
push ebx
push esi
push edi
mov eax, dword [0x5c9030]
xor eax, esp
push eax
lea eax, [esp + 0x130]
mov dword fs:[0], eax
push 0x2f
mov ebx, str...CommonScanProject.cpp
push ebx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x34], 0x59e0a0
mov dword [esp + 0x38], str.Gray
mov dword [esp + 0x3c], str.Color
mov dword [esp + 0x40], str.Auto
mov dword [esp + 0x44], str.Document_Table
mov dword [esp + 0x48], 0x59e0ec
mov dword [esp + 0x4c], str.ADF_Duplex
mov dword [esp + 0x50], str.Magazine
mov dword [esp + 0x54], str.Newspaper
mov dword [esp + 0x58], str.Text
mov dword [esp + 0x5c], str.Photo
mov dword [esp + 0x60], str.Custom
mov dword [esp + 0x64], str.Epson_Scan_Setting
mov dword [esp + 0x68], 0x59e184
mov dword [esp + 0x6c], str.LETTER
mov dword [esp + 0x70], str.LEGAL
mov dword [esp + 0x74], 0x59e1a8
mov dword [esp + 0x78], 0x59e1b0
mov dword [esp + 0x7c], str.TABLOID
mov dword [esp + 0x80], 0x59e1c8
mov dword [esp + 0x84], 0x59e1d0
mov dword [esp + 0x88], 0x59e1d8
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42da73
push 0x2f
jmp 0x42da83
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42da8e
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x42da90
mov eax, ebx
push 1
push 0x41
push eax
lea esi, [esp + 0x90]
call fcn.00404b01
and dword [esp + 0x138], 0
push str.Scan_Structure___
push 0
mov ecx, eax
call fcn.00404bdf
mov edi, eax
call fcn.00402776
or dword [esp + 0x13c], 0xffffffff
pop ecx
mov ecx, esi
call fcn.00404b6d
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42dae0
push 0x2f
jmp 0x42daf0
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42dafb
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x42dafd
mov eax, ebx
xor edi, edi
inc edi
push edi
push 0x42
push eax
lea esi, [esp + 0x90]
call fcn.00404b01
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x138], edi
push dword [ecx + 0x88]
mov ecx, eax
push str.ADE:__d
push 0
call fcn.00404bdf
mov edi, eax
call fcn.00402776
or dword [esp + 0x140], 0xffffffff
pop ecx
pop ecx
mov ecx, esi
call fcn.00404b6d
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42db59
push 0x2f
jmp 0x42db69
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42db74
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x42db76
mov eax, ebx
push 1
push 0x43
push eax
lea esi, [esp + 0x90]
call fcn.00404b01
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x138], 2
push dword [ecx + 0x90]
mov ecx, eax
push str.Descreen:__d
push 0
call fcn.00404bdf
mov edi, eax
call fcn.00402776
or dword [esp + 0x140], 0xffffffff
pop ecx
pop ecx
mov ecx, esi
call fcn.00404b6d
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42dbd4
push 0x2f
jmp 0x42dbe4
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42dbef
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x42dbf1
mov eax, ebx
push 1
push 0x44
push eax
lea esi, [esp + 0x90]
call fcn.00404b01
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x138], 3
push dword [ecx + 0x84]
mov ecx, eax
push str.PIM:__d
push 0
call fcn.00404bdf
mov edi, eax
call fcn.00402776
or dword [esp + 0x140], 0xffffffff
pop ecx
pop ecx
mov ecx, esi
call fcn.00404b6d
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42dc4f
push 0x2f
jmp 0x42dc5f
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42dc6a
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x42dc6c
mov eax, ebx
push 1
push 0x45
push eax
lea esi, [esp + 0x90]
call fcn.00404b01
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x138], 4
push dword [ecx + 0x5c]
mov ecx, eax
push str.Show_UI:__d
push 0
call fcn.00404bdf
mov edi, eax
call fcn.00402776
or dword [esp + 0x140], 0xffffffff
pop ecx
pop ecx
mov ecx, esi
call fcn.00404b6d
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42dcc7
push 0x2f
jmp 0x42dcd7
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42dce2
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x42dce4
mov eax, ebx
push 1
push 0x46
push eax
lea esi, [esp + 0x90]
call fcn.00404b01
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x138], 5
push dword [ecx + 0x8c]
mov ecx, eax
push str.Unsharp:__d
push 0
call fcn.00404bdf
mov edi, eax
call fcn.00402776
or dword [esp + 0x140], 0xffffffff
pop ecx
pop ecx
mov ecx, esi
call fcn.00404b6d
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42dd42
push 0x2f
jmp 0x42dd52
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42dd5d
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x42dd5f
mov eax, ebx
push 1
push 0x47
push eax
lea esi, [esp + 0x90]
call fcn.00404b01
mov ecx, dword [esp + 0x14]
push ecx
push ecx
mov dword [esp + 0x140], 6
fld dword [ecx + 0x78]
fstp qword [esp]
push str.Width:__lf
push 0
mov ecx, eax
call fcn.00404bdf
mov edi, eax
call fcn.00402776
or dword [esp + 0x144], 0xffffffff
add esp, 0xc
mov ecx, esi
call fcn.00404b6d
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42ddc0
push 0x2f
jmp 0x42ddd0
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42dddb
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x42dddd
mov eax, ebx
push 1
push 0x48
push eax
lea esi, [esp + 0x90]
call fcn.00404b01
mov ecx, dword [esp + 0x14]
push ecx
push ecx
mov dword [esp + 0x140], 7
fld dword [ecx + 0x7c]
fstp qword [esp]
push str.Height:__lf
push 0
mov ecx, eax
call fcn.00404bdf
mov edi, eax
call fcn.00402776
or dword [esp + 0x144], 0xffffffff
add esp, 0xc
mov ecx, esi
call fcn.00404b6d
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x74]
test eax, eax
js 0x42de42
cmp eax, 9
jae 0x42de42
mov eax, dword [esp + eax*4 + 0x60]
jmp 0x42de47
mov eax, str.Unknown
push eax
lea ecx, [esp + 0x24]
call fcn.0040235d
push 0x2f
push ebx
mov dword [esp + 0x140], 8
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42de6e
push 0x2f
jmp 0x42de7e
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42de8b
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
lea esi, [eax + 1]
jmp 0x42de8d
mov esi, ebx
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x20]
push str.DocSize:
push eax
call fcn.0040f116
add esp, 0xc
mov edi, eax
push 1
push 0x4a
push esi
lea esi, [esp + 0x90]
mov byte [esp + 0x144], 9
call fcn.00404b01
mov byte [esp + 0x138], 0xa
push dword [edi]
mov ecx, eax
push 0
call fcn.00404bdf
mov edi, eax
call fcn.0040cbe5
pop ecx
mov ecx, esi
mov byte [esp + 0x138], 9
call fcn.00404b6d
mov byte [esp + 0x138], 8
mov ecx, dword [esp + 0x1c]
add ecx, 0xfffffff0
call fcn.00402722
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x9c]
test eax, eax
js 0x42df16
cmp eax, 4
jae 0x42df16
mov eax, dword [esp + eax*4 + 0x38]
jmp 0x42df1b
mov eax, str.Unknown
push eax
lea ecx, [esp + 0x28]
call fcn.0040235d
push 0x2f
push ebx
mov byte [esp + 0x140], 0xb
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42df3f
push 0x2f
jmp 0x42df4f
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42df5c
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
lea esi, [eax + 1]
jmp 0x42df5e
mov esi, ebx
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x20]
push str.Doc_Source:
push eax
call fcn.0040f116
add esp, 0xc
mov edi, eax
push 1
push 0x4c
push esi
lea esi, [esp + 0x90]
mov byte [esp + 0x144], 0xc
call fcn.00404b01
mov byte [esp + 0x138], 0xd
push dword [edi]
mov ecx, eax
push 0
call fcn.00404bdf
mov edi, eax
call fcn.0040cbe5
pop ecx
mov ecx, esi
mov byte [esp + 0x138], 0xc
call fcn.00404b6d
mov byte [esp + 0x138], 0xb
mov ecx, dword [esp + 0x1c]
add ecx, 0xfffffff0
call fcn.00402722
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42dfe0
push 0x2f
jmp 0x42dff0
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42dffd
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
lea esi, [eax + 1]
jmp 0x42dfff
mov esi, ebx
mov ecx, dword [esp + 0x14]
call fcn.0042e89a
push dword [esp + eax*4 + 0x48]
lea ecx, [esp + 0x1c]
call fcn.0040235d
push eax
lea eax, [esp + 0x20]
push str.DocType:
push eax
mov byte [esp + 0x144], 0xe
call fcn.0040f116
add esp, 0xc
mov edi, eax
push 1
push 0x4d
push esi
lea esi, [esp + 0x90]
mov byte [esp + 0x144], 0xf
call fcn.00404b01
mov byte [esp + 0x138], 0x10
push dword [edi]
mov ecx, eax
push 0
call fcn.00404bdf
mov edi, eax
call fcn.0040cbe5
pop ecx
mov ecx, esi
mov byte [esp + 0x138], 0xf
call fcn.00404b6d
mov ecx, dword [esp + 0x1c]
add ecx, 0xfffffff0
call fcn.00402722
mov byte [esp + 0x138], 0xb
mov ecx, dword [esp + 0x18]
add ecx, 0xfffffff0
call fcn.00402722
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x80]
test eax, eax
js 0x42e0ae
cmp eax, 3
jae 0x42e0ae
mov eax, dword [esp + eax*4 + 0x2c]
jmp 0x42e0b3
mov eax, str.Unknown
push eax
lea ecx, [esp + 0x2c]
call fcn.0040235d
push 0x2f
push ebx
mov byte [esp + 0x140], 0x11
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e0d7
push 0x2f
jmp 0x42e0e7
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e0f4
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
lea esi, [eax + 1]
jmp 0x42e0f6
mov esi, ebx
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x1c]
push str.ImageType:
push eax
call fcn.0040f116
add esp, 0xc
mov edi, eax
push 1
push 0x4f
push esi
lea esi, [esp + 0x90]
mov byte [esp + 0x144], 0x12
call fcn.00404b01
mov byte [esp + 0x138], 0x13
push dword [edi]
mov ecx, eax
push 0
call fcn.00404bdf
mov edi, eax
call fcn.0040cbe5
pop ecx
mov ecx, esi
mov byte [esp + 0x138], 0x12
call fcn.00404b6d
mov byte [esp + 0x138], 0x11
mov ecx, dword [esp + 0x18]
add ecx, 0xfffffff0
call fcn.00402722
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e178
push 0x2f
jmp 0x42e188
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e193
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x42e195
mov eax, ebx
push 1
push 0x50
push eax
lea esi, [esp + 0x90]
call fcn.00404b01
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x138], 0x14
push dword [ecx + 0x98]
mov ecx, eax
push str.Orientation:__d
push 0
call fcn.00404bdf
mov edi, eax
call fcn.00402776
pop ecx
pop ecx
mov ecx, esi
mov byte [esp + 0x138], 0x11
call fcn.00404b6d
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e1f0
push 0x2f
jmp 0x42e200
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e20b
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x42e20d
mov eax, ebx
push 1
push 0x51
push eax
lea esi, [esp + 0x90]
call fcn.00404b01
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x138], 0x15
push dword [ecx + 0x6c]
mov ecx, eax
push str.QualityIndex:__d
push 0
call fcn.00404bdf
mov edi, eax
call fcn.00402776
pop ecx
pop ecx
mov ecx, esi
mov byte [esp + 0x138], 0x11
call fcn.00404b6d
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e265
push 0x2f
jmp 0x42e275
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e280
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x42e282
mov eax, ebx
push 1
push 0x52
push eax
lea esi, [esp + 0x90]
call fcn.00404b01
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x138], 0x16
push dword [ecx + 0x70]
mov ecx, eax
push str.Resolution:__d
push 0
call fcn.00404bdf
mov edi, eax
call fcn.00402776
pop ecx
pop ecx
mov ecx, esi
mov byte [esp + 0x138], 0x11
call fcn.00404b6d
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e2da
push 0x2f
jmp 0x42e2ea
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e2f5
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x42e2f7
mov eax, ebx
push 1
push 0x53
push eax
lea esi, [esp + 0x90]
call fcn.00404b01
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x138], 0x17
push dword [ecx + 0xa0]
mov ecx, eax
push str.ScanMode:__d
push 0
call fcn.00404bdf
mov edi, eax
call fcn.00402776
pop ecx
pop ecx
mov ecx, esi
mov byte [esp + 0x138], 0x11
call fcn.00404b6d
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e352
push 0x2f
jmp 0x42e362
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e36d
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x42e36f
mov eax, ebx
push 1
push 0x54
push eax
lea esi, [esp + 0x90]
call fcn.00404b01
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x138], 0x18
push dword [ecx + 0x94]
mov ecx, eax
push str.UIMode:__d
push 0
call fcn.00404bdf
mov edi, eax
call fcn.00402776
pop ecx
pop ecx
mov ecx, esi
mov byte [esp + 0x138], 0x11
call fcn.00404b6d
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e3ca
push 0x2f
jmp 0x42e3da
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e3e5
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x42e3e7
mov eax, ebx
push 1
push 0x55
push eax
lea esi, [esp + 0x90]
call fcn.00404b01
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x138], 0x19
push dword [ecx + 0xa4]
mov ecx, eax
push str.Save_Format:__d
push 0
call fcn.00404bdf
mov edi, eax
call fcn.00402776
pop ecx
pop ecx
mov ecx, esi
mov byte [esp + 0x138], 0x11
call fcn.00404b6d
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e442
push 0x2f
jmp 0x42e452
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e45f
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
lea esi, [eax + 1]
jmp 0x42e461
mov esi, ebx
mov eax, dword [esp + 0x14]
add eax, 0xa8
push eax
lea eax, [esp + 0x1c]
push str.File_prefix:
push eax
call fcn.0040f116
add esp, 0xc
mov edi, eax
push 1
push 0x56
push esi
lea esi, [esp + 0x90]
mov byte [esp + 0x144], 0x1a
call fcn.00404b01
mov byte [esp + 0x138], 0x1b
push dword [edi]
mov ecx, eax
push 0
call fcn.00404bdf
mov edi, eax
call fcn.0040cbe5
pop ecx
mov ecx, esi
mov byte [esp + 0x138], 0x1a
call fcn.00404b6d
mov byte [esp + 0x138], 0x11
mov ecx, dword [esp + 0x18]
add ecx, 0xfffffff0
call fcn.00402722
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e4e8
push 0x2f
jmp 0x42e4f8
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e505
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
lea esi, [eax + 1]
jmp 0x42e507
mov esi, ebx
mov eax, dword [esp + 0x14]
add eax, 0xb0
push eax
lea eax, [esp + 0x1c]
push str.Target_folder:
push eax
call fcn.0040f116
add esp, 0xc
mov edi, eax
push 1
push 0x57
push esi
lea esi, [esp + 0x90]
mov byte [esp + 0x144], 0x1c
call fcn.00404b01
mov byte [esp + 0x138], 0x1d
push dword [edi]
mov ecx, eax
push 0
call fcn.00404bdf
mov edi, eax
call fcn.0040cbe5
pop ecx
mov ecx, esi
mov byte [esp + 0x138], 0x1c
call fcn.00404b6d
mov byte [esp + 0x138], 0x11
mov ecx, dword [esp + 0x18]
add ecx, 0xfffffff0
call fcn.00402722
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e58e
push 0x2f
jmp 0x42e59e
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e5ab
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
lea esi, [eax + 1]
jmp 0x42e5ad
mov esi, ebx
mov eax, dword [esp + 0x14]
add eax, 0xb4
push eax
lea eax, [esp + 0x1c]
push str.User_target_folder:
push eax
call fcn.0040f116
add esp, 0xc
mov edi, eax
push 1
push 0x58
push esi
lea esi, [esp + 0x90]
mov byte [esp + 0x144], 0x1e
call fcn.00404b01
mov byte [esp + 0x138], 0x1f
push dword [edi]
mov ecx, eax
push 0
call fcn.00404bdf
mov edi, eax
call fcn.0040cbe5
pop ecx
mov ecx, esi
mov byte [esp + 0x138], 0x1e
call fcn.00404b6d
mov byte [esp + 0x138], 0x11
mov ecx, dword [esp + 0x18]
add ecx, 0xfffffff0
call fcn.00402722
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e634
push 0x2f
jmp 0x42e644
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e651
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
lea esi, [eax + 1]
jmp 0x42e653
mov esi, ebx
mov eax, dword [esp + 0x14]
add eax, 0x60
push eax
lea eax, [esp + 0x1c]
push str.Device_Name:
push eax
call fcn.0040f116
add esp, 0xc
mov edi, eax
push 1
push 0x59
push esi
lea esi, [esp + 0x90]
mov byte [esp + 0x144], 0x20
call fcn.00404b01
mov byte [esp + 0x138], 0x21
push dword [edi]
mov ecx, eax
push 0
call fcn.00404bdf
mov edi, eax
call fcn.0040cbe5
pop ecx
mov ecx, esi
mov byte [esp + 0x138], 0x20
call fcn.00404b6d
mov byte [esp + 0x138], 0x11
mov ecx, dword [esp + 0x18]
add ecx, 0xfffffff0
call fcn.00402722
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e6d8
push 0x2f
jmp 0x42e6e8
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e6f5
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
lea esi, [eax + 1]
jmp 0x42e6f7
mov esi, ebx
mov eax, dword [esp + 0x14]
add eax, 0x68
push eax
lea eax, [esp + 0x1c]
push str.Doc_type_string:
push eax
call fcn.0040f116
add esp, 0xc
mov edi, eax
push 1
push 0x5a
push esi
lea esi, [esp + 0x90]
mov byte [esp + 0x144], 0x22
call fcn.00404b01
mov byte [esp + 0x138], 0x23
push dword [edi]
mov ecx, eax
push 0
call fcn.00404bdf
mov edi, eax
call fcn.0040cbe5
pop ecx
mov ecx, esi
mov byte [esp + 0x138], 0x22
call fcn.00404b6d
mov byte [esp + 0x138], 0x11
mov ecx, dword [esp + 0x18]
add ecx, 0xfffffff0
call fcn.00402722
push 0x2f
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e77c
push 0x2f
jmp 0x42e78c
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
test eax, eax
je 0x42e797
push 0x5c
push ebx
call fcn.005392c0
pop ecx
pop ecx
inc eax
jmp 0x42e799
mov eax, ebx
push 1
push 0x5b
push eax
lea esi, [esp + 0xe0]
call fcn.00404b01
push str.__Scan_Structure
push 0
mov ecx, eax
mov byte [esp + 0x140], 0x24
call fcn.00404bdf
mov edi, eax
call fcn.00402776
pop ecx
mov ecx, esi
mov byte [esp + 0x138], 0x11
call fcn.00404b6d
mov ecx, dword [esp + 0x28]
add ecx, 0xfffffff0
call fcn.00402722
mov ecx, dword [esp + 0x24]
add ecx, 0xfffffff0
call fcn.00402722
mov ecx, dword [esp + 0x20]
add ecx, 0xfffffff0
call fcn.00402722
mov ecx, dword [esp + 0x130]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x118]
xor ecx, esp
call fcn.005384ff
mov esp, ebp
pop ebp
ret