Function at 0x40f393
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x42c
push ebx
mov ebx, dword [ebp + 8]
cmp byte [ebx + 0x8249], 0
push esi
push edi
jne 0x40f755
lea edi, [ebx + 0x25f6]
mov byte [ebx + 0x8249], 1
call fcn.0041fa77
push 0x65
mov eax, ebx
call fcn.004864fc
mov eax, ebx
call fcn.0047b886
mov eax, ebx
call fcn.00411118
mov esi, dword [ebp + 0xc]
push 0
push ebx
mov eax, esi
call fcn.0040f32f
test al, al
jne 0x40f418
push 3
mov byte [ebx + 0x8249], al
pop eax
push eax
push str.DefaultDataType
lea esi, [ebx + 0x239b]
push str.Settings
mov dword [esi], eax
call fcn.004248a7
push dword [esi]
mov eax, ebx
call fcn.0040eae1
jmp 0x40f755
cmp esi, 0xffffffff
je 0x40f445
cmp esi, 2
jle 0x40f439
cmp esi, 0x13
jg 0x40f439
push esi
push str.DefaultDataType
push str.Settings
call fcn.004248a7
jmp 0x40f459
mov byte [ebx + 0x8249], 0
jmp 0x40f755
push 3
push str.DefaultDataType
push str.Settings
call fcn.004248dd
mov dword [ebp + 0xc], eax
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push 0x8c
push dword [ebx + 4]
call esi
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
push eax
call edi
push 0
push 0x8d
push dword [ebx + 4]
call esi
push eax
call edi
push 0
push 0x8e
push dword [ebx + 4]
call esi
push eax
call edi
push 0
push 0x8f
push dword [ebx + 4]
call esi
push eax
call edi
push 0
push 0x93
push dword [ebx + 4]
call esi
push eax
call edi
lea eax, [ebp - 0x220]
push eax
push 0xcd
mov eax, ebx
call fcn.0047a9c3
mov ecx, str.File_System:
lea eax, [ebp - 0x220]
call fcn.00401031
test eax, eax
je 0x40f4e6
push 0
push 0xcd
push dword [ebx + 4]
call esi
push eax
call edi
push str.File_System:
push 0xcd
mov edi, ebx
call fcn.0047aac6
push 0x92
push ebx
xor al, al
call fcn.00402b8f
xor edi, edi
push edi
push 0x91
push dword [ebx + 4]
call esi
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
push edi
push 0x90
push dword [ebx + 4]
call esi
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
lea eax, [ebx + 0x239b]
mov ecx, dword [eax]
mov dword [ebp + 8], ecx
mov ecx, dword [ebp + 0xc]
mov dword [eax], ecx
push ecx
mov eax, ebx
call fcn.0040eae1
mov ecx, dword [ebp + 8]
call fcn.0041afc8
test al, al
je 0x40f67c
lea esi, [ebp - 0x14]
mov dword [ebx + 0x25ad], edi
mov dword [ebx + 0x25b1], edi
call fcn.004e6c81
push 0x66
mov eax, ebx
call fcn.00402f5b
mov dword [ebp - 8], eax
test edi, edi
jl 0x40f5d2
cmp edi, dword [ebp - 8]
jge 0x40f5d2
mov eax, dword [ebp + 8]
call fcn.0041afb4
test al, al
mov eax, edi
je 0x40f5a5
push 1
push ebx
lea esi, [ebp - 0x428]
call fcn.00402f18
mov eax, esi
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.0041d610
jmp 0x40f5cf
push 0x66
push ebx
call fcn.00402ee0
mov esi, eax
test esi, esi
je 0x40f5cf
push esi
lea eax, [ebp - 0x14]
push eax
call fcn.0041d610
push esi
call fcn.0040b855
push 0
push 0x66
push ebx
mov eax, edi
call fcn.00403099
inc edi
jmp 0x40f572
lea esi, [ebx + 0x25a9]
call fcn.00421cba
mov esi, ebx
call fcn.0040c232
push 0x65
mov eax, ebx
call fcn.0040348b
cmp eax, 0xffff0000
je 0x40f5fe
push eax
push 0x65
mov eax, ebx
call fcn.00403411
push 0x66
mov eax, ebx
mov byte [ebx + 0x23a0], 0
call fcn.00402f5b
mov dword [ebp - 8], eax
xor esi, esi
test esi, esi
jl 0x40f62c
cmp esi, dword [ebp - 8]
jge 0x40f62c
mov eax, dword [ebp - 0x14]
push dword [eax + esi*4]
mov edi, ebx
call fcn.0040c7ee
inc esi
jmp 0x40f613
push 0x65
mov eax, ebx
call fcn.0040348b
push eax
push 0x65
mov eax, ebx
call fcn.00403601
lea esi, [ebx + 0x237e]
push esi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push 0
push 0
push 0x1009
push 0x66
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SendDlgItemMessageW]
push esi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea esi, [ebp - 0x14]
call fcn.004e6ca2
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
xor edi, edi
jmp 0x40f700
cmp byte [ebx + 0x7e01], 0
jne 0x40f68e
cmp byte [ebx + 0x7e02], 0
je 0x40f700
lea eax, [ebp - 8]
push eax
lea eax, [ebp + 0xf]
push eax
push dword [ebx + 0x7979]
mov ecx, ebx
mov byte [ebp + 0xf], 0
mov dword [ebp - 8], edi
mov dword [ebp - 4], edi
call fcn.0040e8ae
cmp byte [ebp + 0xf], 0
je 0x40f700
push 0x40
push 0x549180
push str.Files_were_present_that_exceed_the_maximum_file_size_for_the_ISO_Filesystem__4.3GB_._These_have_been_removed_from_the_compilation.
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_MessageBoxW]
mov eax, dword [ebx + 0x25b1]
cmp dword [ebp - 4], eax
mov ecx, dword [ebx + 0x25ad]
jb 0x40f6ee
ja 0x40f6e0
cmp dword [ebp - 8], ecx
jbe 0x40f6ee
mov dword [ebx + 0x25ad], edi
mov dword [ebx + 0x25b1], edi
jmp 0x40f700
sub ecx, dword [ebp - 8]
sbb eax, dword [ebp - 4]
mov dword [ebx + 0x25ad], ecx
mov dword [ebx + 0x25b1], eax
push ebx
call fcn.004144f7
push edi
push 0x84
push dword [ebx + 4]
call esi
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
mov esi, ebx
call fcn.0041b0bb
lea edi, [ebx + 0x41]
call fcn.00404079
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x18]
mov edi, ebx
mov byte [ebx + 0x8249], 0
call fcn.0041b068
push 0x65
mov eax, ebx
lea esi, [ebx + 0x7771]
call fcn.0040348b
mov ecx, eax
push ebx
mov eax, esi
call fcn.00403572
pop edi
pop esi
pop ebx
leave
ret 8