Function at 0x40f79b
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0xfc
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x10]
mov edi, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xbc], ecx
mov ecx, dword [ebp + 0x20]
mov dword [ebp - 0xc4], edx
lea edx, [edi - 0x80]
mov esi, dword [ebp + 0x14]
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0xb4], ecx
cmp edx, 0x80
ja 0x40f7f0
cmp ax, 8
ja 0x40f7f0
test esi, esi
je 0x40f807
lea edx, [esi - 1]
test edx, esi
je 0x40f807
mov dword [0x4dfd80], 0xc0030057
xor eax, eax
mov dword [ebp - 0xb8], eax
jmp 0x4105cf
movzx edx, ax
mov dword [0x4dfd94], edx
cmp ax, 1
jne 0x40f880
xor eax, eax
cmp eax, dword [0x4df220]
mov eax, 8
sbb eax, dword [0x4df224]
jl 0x40f842
mov eax, dword [ebp - 0xb4]
and eax, 0x10000
or eax, dword [0x524108]
je 0x40f8c9
mov eax, dword [ebp - 0xb4]
mov edx, dword [ebp - 0xc4]
mov dword [ebp + 0x14], esi
mov dword [ebp + 8], edi
mov dword [ebp + 0x20], eax
mov eax, dword [ebp - 0xbc]
mov dword [ebp + 0x10], edx
mov dword [ebp + 0x1c], eax
mov eax, dword [0x489da4]
mov dword [ebp + 0x18], eax
mov eax, dword [ebp - 0xc8]
mov dword [ebp + 0xc], eax
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
jmp 0x414a14
sub eax, 6
cmp ax, 2
ja 0x40f8c9
mov eax, dword [ebp - 0xb4]
mov dword [ebp + 0x14], esi
mov dword [ebp + 8], edi
mov dword [ebp + 0x20], eax
mov eax, dword [ebp - 0xbc]
mov dword [ebp + 0x1c], eax
mov eax, dword [edx*4 + 0x489da0]
mov edx, dword [ebp - 0xc4]
mov dword [ebp + 0x18], eax
mov eax, dword [ebp - 0xc8]
mov dword [ebp + 0x10], edx
mov dword [ebp + 0xc], eax
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
jmp 0x413b39
mov eax, dword [0x5240d8]
mov ebx, dword [edx*4 + 0x489da0]
test eax, eax
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp - 0xbc]
je 0x410240
call fcn.0040e5da
mov dword [ebp - 0xc0], eax
mov eax, ebx
call fcn.0040e5da
mov dword [ebp - 0xcc], eax
mov eax, dword [0x489db0]
mov dword [esp], ebx
mov dword [esp + 4], eax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x40f953
mov eax, dword [0x52418c]
mov edx, dword [0x524188]
mov ecx, eax
or ecx, edx
je 0x40f953
mov dword [esp + 0x14], eax
xor eax, eax
mov dword [esp + 0x18], edx
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 0xc94
mov dword [esp + 8], eax
mov dword [esp + 4], eax
mov dword [esp], 1
call fcn.00422f82
jmp 0x40f975
xor eax, eax
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 0xc96
mov dword [esp + 8], eax
mov dword [esp + 4], eax
mov dword [esp], 1
call fcn.00422f82
mov dword [esp + 4], ebx
mov dword [esp], str.Formatting_to__s__using_VDS_
call fcn.0043d9e0
xor eax, eax
mov dword [esp + 4], 1
mov dword [esp + 0x18], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [esp + 8], eax
mov dword [esp + 0xc], eax
mov dword [esp], 0xffffffff
call fcn.0044a2e0
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 1
mov edx, dword [ebp - 0xc4]
mov eax, dword [ebp - 0xc8]
mov dword [esp], edi
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call fcn.0040853f
mov dword [ebp - 0xc8], eax
call fcn.0040e5da
mov edi, eax
test eax, eax
jne 0x40fa07
mov dword [esp], str.Could_not_read_volume_name
call fcn.0043d9e0
mov dword [0x4dfd80], 0xc003001f
jmp 0x40fd0b
xor eax, eax
mov dword [esp + 4], 6
xor ebx, ebx
mov dword [esp], eax
call dword [sym.imp.ole32.dll_CoInitializeEx]
xor edx, edx
xor ecx, ecx
push eax
push eax
xor eax, eax
mov dword [esp + 0xc], edx
mov dword [esp + 8], edx
mov dword [esp], ecx
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], 3
mov dword [esp + 0x10], 2
mov dword [esp + 4], 0xffffffff
call dword [sym.imp.ole32.dll_CoInitializeSecurity]
lea eax, [ebp - 0x98]
sub esp, 0x24
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0x496c98
mov dword [esp + 8], 0x14
mov dword [esp + 4], ebx
mov dword [esp], 0x496ca8
call dword [sym.imp.ole32.dll_CoCreateInstance]
sub esp, 0x14
test eax, eax
je 0x40fab7
mov dword [esp], eax
call dword [sym.imp.KERNEL32.DLL_SetLastError]
push eax
mov dword [0x4dfd80], 0xc003001f
call fcn.0043df77
mov dword [esp], str.Could_not_create_VDS_Loader_Instance:__s
mov dword [esp + 4], eax
jmp 0x40fcfb
mov eax, dword [ebp - 0x98]
lea ecx, [ebp - 0x94]
mov edx, dword [eax]
mov dword [esp + 8], ecx
mov dword [esp + 4], 0x498524
mov dword [esp], eax
call dword [edx + 0xc]
mov ebx, eax
mov eax, dword [ebp - 0x98]
sub esp, 0xc
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
push eax
test ebx, ebx
je 0x40fb18
mov dword [esp], ebx
call dword [sym.imp.KERNEL32.DLL_SetLastError]
push ecx
mov dword [0x4dfd80], 0xc003001f
call fcn.0043df77
mov dword [esp], str.Could_not_load_VDS_Service:__s
mov dword [esp + 4], eax
jmp 0x40fcfb
mov eax, dword [ebp - 0x94]
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 0x10]
push edx
test eax, eax
je 0x40fb54
mov dword [esp], eax
call dword [sym.imp.KERNEL32.DLL_SetLastError]
push eax
mov dword [0x4dfd80], 0xc003001f
call fcn.0043df77
mov dword [esp], str.VDS_Service_is_not_ready:__s
mov dword [esp + 4], eax
jmp 0x40fcfb
mov eax, dword [ebp - 0x94]
lea ecx, [ebp - 0x90]
mov edx, dword [eax]
mov dword [esp + 8], ecx
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [edx + 0x18]
sub esp, 0xc
test eax, eax
je 0x40fc62
mov dword [esp], eax
call dword [sym.imp.KERNEL32.DLL_SetLastError]
push eax
mov dword [0x4dfd80], 0xc003001f
call fcn.0043df77
mov dword [esp], str.Could_not_query_VDS_Service_Providers:__s
mov dword [esp + 4], eax
jmp 0x40fcfb
mov eax, dword [ebp - 0x5c]
lea ecx, [ebp - 0x50]
mov edx, dword [eax]
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [edx + 0xc]
push edx
push edx
test eax, eax
je 0x40fee4
cmp eax, 0x42715
je 0x40fee4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.DLL_SetLastError]
push ebx
mov eax, dword [ebp - 0x5c]
mov dword [0x4dfd80], 0xc003001f
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
push eax
call fcn.0043df77
mov dword [esp], str.Could_not_query_VDS_Volume_Properties:__s
mov dword [esp + 4], eax
call fcn.0043d9e0
mov eax, dword [ebp - 0x74]
lea ecx, [ebp - 0x9c]
mov edx, dword [eax]
mov dword [esp + 0xc], ecx
lea ecx, [ebp - 0x70]
mov dword [esp + 8], ecx
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [edx + 0xc]
sub esp, 0x10
test eax, eax
je 0x40fe7d
mov eax, dword [ebp - 0x80]
lea ecx, [ebp - 0x9c]
mov edx, dword [eax]
mov dword [esp + 0xc], ecx
lea ecx, [ebp - 0x7c]
mov dword [esp + 8], ecx
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [edx + 0xc]
sub esp, 0x10
test eax, eax
je 0x40fdce
mov eax, dword [ebp - 0x90]
lea ecx, [ebp - 0x9c]
mov edx, dword [eax]
mov dword [esp + 0xc], ecx
lea ecx, [ebp - 0x8c]
mov dword [esp + 8], ecx
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [edx + 0xc]
sub esp, 0x10
test eax, eax
jne 0x4101e7
mov eax, dword [0x4dfd80]
test eax, eax
js 0x40fd05
mov eax, dword [ebp - 0x8c]
lea ecx, [ebp - 0x88]
mov edx, dword [eax]
mov dword [esp + 8], ecx
mov dword [esp + 4], 0x496c88
mov dword [esp], eax
call dword [edx]
mov ebx, eax
mov eax, dword [ebp - 0x8c]
sub esp, 0xc
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
push eax
test ebx, ebx
je 0x40fd18
mov dword [esp], ebx
call dword [sym.imp.KERNEL32.DLL_SetLastError]
push eax
mov dword [0x4dfd80], 0xc003001f
call fcn.0043df77
mov dword [esp], str.Could_not_get_VDS_Provider:__s
mov dword [esp + 4], eax
call fcn.0043d9e0
jmp 0x4101e7
cmp ax, 0x4c7
jne 0x40fca0
xor eax, eax
mov dword [ebp - 0xb8], eax
jmp 0x410203
mov eax, dword [ebp - 0x88]
lea ecx, [ebp - 0x84]
mov edx, dword [eax]
mov dword [esp + 8], ecx
mov dword [esp + 4], 0x496c78
mov dword [esp], eax
call dword [edx]
mov ebx, eax
mov eax, dword [ebp - 0x88]
sub esp, 0xc
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
push eax
test ebx, ebx
je 0x40fd75
mov dword [esp], ebx
call dword [sym.imp.KERNEL32.DLL_SetLastError]
push ebx
mov dword [0x4dfd80], 0xc003001f
call fcn.0043df77
mov dword [esp], str.Could_not_get_VDS_Software_Provider:__s
mov dword [esp + 4], eax
jmp 0x40fcfb
mov eax, dword [ebp - 0x84]
lea ecx, [ebp - 0x80]
mov edx, dword [eax]
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [edx + 0xc]
mov ebx, eax
push edx
push edx
mov eax, dword [ebp - 0x84]
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
push ecx
test ebx, ebx
je 0x40fc33
mov dword [esp], ebx
call dword [sym.imp.KERNEL32.DLL_SetLastError]
push eax
mov dword [0x4dfd80], 0xc003001f
call fcn.0043df77
mov dword [esp], str.Could_not_get_VDS_Software_Provider_Packs:__s
mov dword [esp + 4], eax
jmp 0x40fcfb
mov eax, dword [0x4dfd80]
test eax, eax
jns 0x40fde1
cmp ax, 0x4c7
je 0x4101e7
mov eax, dword [ebp - 0x7c]
lea ecx, [ebp - 0x78]
mov edx, dword [eax]
mov dword [esp + 8], ecx
mov dword [esp + 4], 0x496c68
mov dword [esp], eax
call dword [edx]
mov ebx, eax
mov eax, dword [ebp - 0x7c]
sub esp, 0xc
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
push eax
test ebx, ebx
je 0x40fe38
mov dword [esp], ebx
call dword [sym.imp.KERNEL32.DLL_SetLastError]
push ecx
mov dword [0x4dfd80], 0xc003001f
call fcn.0043df77
mov dword [esp], str.Could_not_query_VDS_Software_Provider_Pack:__s
mov dword [esp + 4], eax
jmp 0x40fcfb
mov eax, dword [ebp - 0x78]
lea ecx, [ebp - 0x74]
mov edx, dword [eax]
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [edx + 0x14]
push edx
push edx
test eax, eax
je 0x40fc04
mov dword [esp], eax
call dword [sym.imp.KERNEL32.DLL_SetLastError]
push ebx
mov dword [0x4dfd80], 0xc003001f
call fcn.0043df77
mov dword [esp], str.Could_not_query_VDS_volumes:__s
mov dword [esp + 4], eax
jmp 0x40fcfb
mov eax, dword [0x4dfd80]
mov dword [ebp - 0x6c], 0x80004005
test eax, eax
jns 0x40fe97
cmp ax, 0x4c7
je 0x4101e7
mov eax, dword [ebp - 0x70]
lea ecx, [ebp - 0x5c]
mov edx, dword [eax]
mov dword [esp + 8], ecx
mov dword [esp + 4], 0x496c38
mov dword [esp], eax
call dword [edx]
sub esp, 0xc
test eax, eax
je 0x40fba8
mov dword [esp], eax
call dword [sym.imp.KERNEL32.DLL_SetLastError]
push ecx
mov dword [0x4dfd80], 0xc003001f
call fcn.0043df77
mov dword [esp], str.Could_not_query_VDS_Volume_Interface:__s
mov dword [esp + 4], eax
jmp 0x40fcfb
mov eax, dword [ebp - 0x20]
mov dword [esp], eax
call dword [sym.imp.ole32.dll_CoTaskMemFree]
lea ecx, [ebp - 0x54]
push edx
mov eax, dword [ebp - 0x5c]
mov edx, dword [eax]
mov dword [esp + 8], ecx
mov dword [esp + 4], 0x496c28
mov dword [esp], eax
call dword [edx]
mov ebx, eax
mov eax, dword [ebp - 0x5c]
sub esp, 0xc
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
push ecx
test ebx, ebx
je 0x40ff48
mov dword [esp], ebx
call dword [sym.imp.KERNEL32.DLL_SetLastError]
push eax
mov dword [0x4dfd80], 0xc003001f
call fcn.0043df77
mov dword [esp], str.Could_not_access_VDS_VolumeMF3_interface:__s
mov dword [esp + 4], eax
jmp 0x40fbff
mov eax, dword [ebp - 0x54]
lea ecx, [ebp - 0x60]
mov edx, dword [eax]
mov dword [esp + 8], ecx
lea ecx, [ebp - 0x68]
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [edx + 0xc]
sub esp, 0xc
test eax, eax
je 0x40ff91
mov dword [esp], eax
call dword [sym.imp.KERNEL32.DLL_SetLastError]
push eax
mov dword [0x4dfd80], 0xc003001f
call fcn.0043df77
mov dword [esp], str.Could_not_query_VDS_VolumeGuidPathnames:__s
mov dword [esp + 4], eax
jmp 0x40fbff
cmp dword [ebp - 0x60], 1
jbe 0x40ffac
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov dword [esp], str.Notice:_Volume__S_has_more_than_one_GUID...
mov dword [esp + 4], eax
call fcn.0043d9e0
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov dword [esp], edi
mov dword [esp + 4], eax
call sub.msvcrt.dll_wcscmp
mov ebx, eax
mov eax, dword [ebp - 0x68]
mov dword [esp], eax
call dword [sym.imp.ole32.dll_CoTaskMemFree]
push eax
test ebx, ebx
jne 0x40fc04
mov eax, dword [0x489dac]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xbc]
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x40fffb
mov eax, str.UseUdfVersion
call fcn.0040e86b
mov ebx, eax
cmp esi, 0x1ff
ja 0x410013
mov dword [esp], str.Using_default_cluster_size
xor esi, esi
call fcn.0043d9e0
jmp 0x410023
mov dword [esp + 4], esi
mov dword [esp], str.Using_cluster_size:__d_bytes
call fcn.0043d9e0
mov eax, dword [ebp - 0xb4]
mov edx, str.Quick
mov dword [0x4dfd9c], 0
and eax, 2
mov dword [ebp - 0xb8], eax
mov eax, str.Slow
cmovne eax, edx
mov dword [esp], str._s_format_was_selected
mov dword [esp + 4], eax
call fcn.0043d9e0
test byte [ebp - 0xb4], 4
je 0x41006e
mov dword [esp], str.NTFS_compression_is_enabled
call fcn.0043d9e0
mov eax, dword [ebp - 0x54]
lea ecx, [ebp - 0x58]
movzx ebx, bx
mov edx, dword [eax]
mov dword [esp + 0x18], ecx
mov ecx, dword [ebp - 0xb4]
mov dword [esp + 0x14], ecx
mov ecx, dword [ebp - 0xc0]
mov dword [esp + 8], ebx
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], esi
mov esi, dword [ebp - 0xcc]
mov dword [esp], eax
mov dword [esp + 4], esi
call dword [edx + 0x10]
sub esp, 0x1c
mov ebx, eax
test ebx, ebx
js 0x4105a1
mov eax, dword [ebp - 0x58]
cmp dword [0x4dfd80], 0
mov edx, dword [eax]
jns 0x4100d0
mov dword [esp], eax
call dword [edx + 0xc]
push eax
jmp 0x4101aa
lea ecx, [ebp - 0x64]
mov dword [esp], eax
mov dword [esp + 8], ecx
lea ecx, [ebp - 0x6c]
mov dword [esp + 4], ecx
call dword [edx + 0x14]
sub esp, 0xc
mov ebx, eax
test eax, eax
js 0x410197
cmp dword [ebp - 0xb8], 0
mov eax, dword [ebp - 0x64]
je 0x410154
cmp eax, 0x64
mov dword [esp + 0x14], 2
sbb eax, eax
mov dword [esp + 0xc], 0xc92
add eax, 2
mov dword [esp], 1
mov dword [esp + 0x10], eax
xor eax, eax
mov dword [esp + 8], eax
mov dword [esp + 4], eax
call fcn.00422f82
movd xmm0, dword [ebp - 0x64]
movq qword [ebp - 0xb0], xmm0
fild qword [ebp - 0xb0]
mov dword [esp], 5
fstp dword [esp + 4]
call fcn.0044a184
jmp 0x410186
xor ecx, ecx
xor ebx, ebx
xor esi, esi
mov dword [esp + 0x10], 0x64
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], esi
mov dword [esp + 4], 0xc91
mov dword [esp], 4
call fcn.0044a2e0
mov ebx, dword [ebp - 0x6c]
test ebx, ebx
je 0x4101aa
cmp ebx, 0x80042409
jne 0x410197
xor ebx, ebx
mov dword [esp], 0x1f4
call dword [sym.imp.KERNEL32.DLL_Sleep]
push edx
jmp 0x4100ae
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
push eax
mov eax, dword [ebp - 0x54]
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
push eax
cmp dword [0x4dfd80], 0
js 0x40fd0b
mov dword [esp], 0x4987a1
call fcn.0043d9e0
mov dword [ebp - 0xb8], 1
jmp 0x410203
cmp dword [0x4dfd80], 0
jne 0x40fd0b
mov dword [0x4dfd80], 0xc0030003
jmp 0x40fd0b
mov eax, dword [ebp - 0xc8]
mov dword [esp], eax
call sub.msvcrt.dll_free
mov dword [esp], edi
call sub.msvcrt.dll_free
mov eax, dword [ebp - 0xc0]
mov dword [esp], eax
call sub.msvcrt.dll_free
mov eax, dword [ebp - 0xcc]
mov dword [esp], eax
call sub.msvcrt.dll_free
call dword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x4105cf
call fcn.0040e5da
mov dword [ebp - 0xc0], eax
mov eax, ebx
call fcn.0040e5da
mov dword [ebp - 0xcc], eax
mov eax, dword [0x489db0]
mov dword [esp], ebx
mov dword [esp + 4], eax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x4102aa
mov eax, dword [0x52418c]
mov edx, dword [0x524188]
mov ecx, eax
or ecx, edx
je 0x4102aa
mov dword [esp + 0x14], eax
xor eax, eax
mov dword [esp + 0x18], edx
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 0xc94
mov dword [esp + 8], eax
mov dword [esp + 4], eax
mov dword [esp], 1
call fcn.00422f82
jmp 0x4102cc
xor eax, eax
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 0xc96
mov dword [esp + 8], eax
mov dword [esp + 4], eax
mov dword [esp], 1
call fcn.00422f82
mov dword [esp + 4], ebx
mov dword [esp], str.Formatting_to__s__using_IFS_
call fcn.0043d9e0
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 1
mov edx, dword [ebp - 0xc4]
mov eax, dword [ebp - 0xc8]
mov dword [esp], edi
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call fcn.0040853f
mov dword [ebp - 0xbc], eax
call fcn.0040e5da
mov ebx, eax
test eax, eax
jne 0x41033e
mov eax, dword [ebp - 0xbc]
mov dword [esp], str.Could_not_read_volume_name___s_
mov dword [esp + 4], eax
call fcn.0043d9e0
mov dword [0x4dfd80], 0xc003001f
jmp 0x41056d
mov dword [esp], eax
xor edi, edi
call sub.msvcrt.dll_wcslen
mov word [ebx + eax*2 - 2], 0
mov dword [esp + 4], edi
mov dword [esp], edi
call sub.msvcrt.dll_setlocale
cmp dword [0x4dfd8c], 0
mov edi, eax
jne 0x4103d6
mov eax, str.fmifs
call fcn.0040e071
mov dword [esp + 4], str.FormatEx
mov dword [esp], eax
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
push ecx
push ecx
mov dword [0x4dfd8c], eax
test eax, eax
jne 0x4103d6
call fcn.0043df77
mov dword [esp + 8], str.fmifs
mov dword [esp + 0xc], eax
mov dword [esp + 4], str.FormatEx
mov dword [esp], 0x4987ff
call fcn.0043d9e0
cmp dword [0x4dfd80], 0
js 0x41056d
call dword [sym.imp.KERNEL32.DLL_GetLastError]
movzx eax, ax
or eax, 0xc0030000
mov dword [0x4dfd80], eax
jmp 0x41056d
cmp dword [0x4dfd88], 0
jne 0x410401
mov eax, str.fmifs
call fcn.0040e071
mov dword [esp + 4], str.EnableVolumeCompression
mov dword [esp], eax
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
push edx
push edx
mov dword [0x4dfd88], eax
xor eax, eax
mov dword [esp + 4], edi
mov dword [esp], eax
call sub.msvcrt.dll_setlocale
cmp esi, 0x1ff
ja 0x410427
mov dword [esp], str.Using_default_cluster_size
xor esi, esi
call fcn.0043d9e0
jmp 0x410437
mov dword [esp + 4], esi
mov dword [esp], str.Using_cluster_size:__d_bytes
call fcn.0043d9e0
mov eax, dword [ebp - 0xb4]
xor edi, edi
mov edx, str.Quick
mov dword [0x4dfd9c], 0
mov dword [0x4dfd98], edi
mov edi, 4
and eax, 2
mov dword [ebp - 0xc8], eax
mov eax, str.Slow
cmovne eax, edx
mov dword [esp], str._s_format_was_selected
mov dword [esp + 4], eax
call fcn.0043d9e0
mov dword [esp + 0x18], 0x40dd47
mov dword [esp + 0x14], esi
mov eax, dword [ebp - 0xc8]
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0xc0]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0xcc]
mov dword [esp + 8], eax
mov eax, dword [0x4df238]
mov dword [esp], ebx
mov dword [esp + 4], eax
call dword [0x4dfd8c]
mov eax, dword [0x4dfd80]
sub esp, 0x1c
test eax, eax
jns 0x4104fb
cmp ax, 0x4c7
je 0x41056d
call fcn.0043df77
mov dword [esp], str._s___Retrying...
mov dword [esp + 4], eax
call fcn.0043d9e0
mov dword [esp], 0x1388
call dword [sym.imp.KERNEL32.DLL_Sleep]
push ecx
dec edi
jne 0x41047a
cmp dword [0x4dfd80], 0
js 0x41056d
test byte [ebp - 0xb4], 4
jne 0x41051c
mov dword [esp], 0x4987a1
call fcn.0043d9e0
mov dword [ebp - 0xb8], 1
jmp 0x41056d
mov dword [esp], ebx
call sub.msvcrt.dll_wcslen
mov word [ebx + eax*2], 0x5c
mov dword [esp + 4], 1
mov dword [esp], ebx
call dword [0x4dfd88]
push edx
push edx
test al, al
je 0x41054f
mov dword [esp], str.Enabled_NTFS_compression
call fcn.0043d9e0
jmp 0x410564
call fcn.0043df77
mov dword [esp], str.Could_not_enable_NTFS_compression:__s
mov dword [esp + 4], eax
call fcn.0043d9e0
cmp dword [0x4dfd80], 0
jns 0x410504
mov eax, dword [ebp - 0xbc]
mov dword [esp], eax
call sub.msvcrt.dll_free
mov dword [esp], ebx
call sub.msvcrt.dll_free
mov eax, dword [ebp - 0xc0]
mov dword [esp], eax
call sub.msvcrt.dll_free
mov eax, dword [ebp - 0xcc]
mov dword [esp], eax
call sub.msvcrt.dll_free
jmp 0x4105cf
mov dword [esp], ebx
call dword [sym.imp.KERNEL32.DLL_SetLastError]
push eax
mov dword [0x4dfd80], 0xc003001f
call fcn.0043df77
mov dword [esp], str.Could_not_format_drive:__s
mov dword [esp + 4], eax
call fcn.0043d9e0
jmp 0x40fd0b
mov eax, dword [ebp - 0xb8]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
push ebp
mov ecx, 0x1e
xor edx, edx
mov ebp, esp
push edi
push esi
lea edi, [ebp - 0x510]
mov esi, 0x489de0
push ebx
sub esp, 0x58c
mov dword [ebp - 0x530], edx
mov ebx, dword [ebp + 0x14]
rep movsd dword es:[edi], dword [esi]
lea edi, [ebp - 0x418]
mov dword [ebp - 0x52c], edx
mov dword [ebp - 0x540], edx
mov edx, dword [ebp + 0x10]
mov eax, ecx
mov ecx, 0x100
rep stosd dword es:[edi], eax
mov eax, dword [0x48fd20]
mov dword [ebp - 0x56c], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.00408b1d
mov dword [ebp - 0x55c], eax
mov eax, dword [ebp + 0x18]
mov dword [esp], eax
call sub.msvcrt.dll_strlen
cmp dword [ebp - 0x55c], 0
sete dl
cmp eax, 4
setne al
or dl, al
mov byte [ebp - 0x568], dl
jne 0x413beb
mov dword [esp + 8], 3
mov dword [esp + 4], 0x499c86
mov eax, dword [ebp + 0x18]
mov dword [esp], eax
call sub.msvcrt.dll_strncmp
test eax, eax
je 0x413bfa
mov dword [0x4dfd80], 0xc0030057
jmp 0x413edb
mov dword [esp + 4], 0x20
mov eax, dword [ebp - 0x55c]
mov dword [esp], eax
call sub.msvcrt.dll_strchr
test eax, eax
je 0x413c20
mov dword [esp], str.Notice:_Using_physical_device_to_access_partition_data
call fcn.0043d9e0
mov eax, dword [str.ext2]
mov dword [esp + 4], eax
mov eax, dword [ebp + 0x18]
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x413c85
mov eax, dword [str.ext3]
mov dword [esp + 4], eax
mov eax, dword [ebp + 0x18]
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x413c85
mov eax, dword [str.ext4]
mov dword [esp + 4], eax
mov eax, dword [ebp + 0x18]
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x413c71
mov dword [esp], str.ext4_file_system_is_not_supported__defaulting_to_ext3
jmp 0x413c78
mov dword [esp], str.Invalid_ext_file_system_version_requested__defaulting_to_ext3
call fcn.0043d9e0
mov eax, dword [str.ext3]
mov dword [ebp + 0x18], eax
mov eax, dword [ebp + 0x18]
mov dword [esp + 0xc], 0xc96
mov dword [esp + 4], 1
mov dword [esp + 0x10], eax
xor eax, eax
mov dword [esp + 8], eax
mov dword [esp], 1
call fcn.00422f82
xor eax, eax
mov dword [esp + 4], 1
mov dword [esp + 0x18], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [esp + 8], eax
mov dword [esp + 0xc], eax
mov dword [esp], 0xffffffff
call fcn.0044a2e0
lea eax, [ebp - 0x530]
mov dword [esp + 4], 0x400
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x55c]
mov dword [esp], eax
call fcn.0046b936
mov dword [ebp - 0x558], eax
test eax, eax
jne 0x413d16
mov edi, dword [ebp - 0x52c]
mov esi, dword [ebp - 0x530]
test edi, edi
jne 0x413d4e
test esi, esi
jne 0x413d4e
cmp dword [0x4dfd80], 0
js 0x413d30
mov dword [esp], 0x1e
call fcn.0046b83d
mov dword [0x4dfd80], eax
mov eax, dword [ebp - 0x558]
mov dword [esp], eax
call fcn.004136a0
mov dword [esp], str.Could_not_read_device_size:__s
mov dword [esp + 4], eax
jmp 0x413df7
shld edi, esi, 0xa
shl esi, 0xa
lea eax, [ebp - 0x510]
mov dword [ebp - 0x530], esi
mov dword [ebp - 0x52c], edi
cmp esi, dword [eax]
mov ecx, edi
sbb ecx, dword [eax + 4]
jb 0x413e01
inc dword [ebp - 0x558]
add eax, 0x18
cmp dword [ebp - 0x558], 5
jne 0x413d67
mov dword [esp + 8], 0x131
mov dword [esp + 4], 0x499c4e
mov dword [esp], str.i___ARRAYSIZE_ext2fs_default_
call dword [0x491228]
xor edx, edx
or dword [eax + 8], 0x12
mov dword [esp + 4], 1
mov dword [esp + 8], edx
mov eax, dword [eax + 0x2c]
mov dword [esp], eax
call fcn.0046359c
mov ebx, eax
test eax, eax
je 0x414642
cmp dword [0x4dfd80], 0
js 0x413de4
mov dword [esp], 0x1d
call fcn.0046b83d
mov dword [0x4dfd80], eax
mov dword [esp], ebx
call fcn.004136a0
mov dword [esp], str.Could_not_set_inode_bitmaps:__s
mov dword [esp + 4], eax
call fcn.0043d9e0
jmp 0x413edb
cmp ebx, 0x3ff
ja 0x413e1f
imul eax, dword [ebp - 0x558], 0x18
mov ebx, dword [ebp + eax - 0x508]
test ebx, ebx
je 0x413ee2
lea ecx, [ebx - 1]
and ecx, ebx
jne 0x413ee2
xor eax, eax
mov dword [ebp - 0x400], eax
mov eax, 0x400
cmp ecx, 7
je 0x413f10
lea edx, [ecx + 1]
mov dword [ebp - 0x560], edx
mov edx, eax
shl edx, cl
cmp edx, ebx
jne 0x413efe
cmp byte [ebp - 0x568], 0
je 0x413e64
mov dword [ebp - 0x400], ecx
xor eax, eax
mov dword [ebp - 0x3fc], ecx
mov dword [esp + 8], ebx
mov dword [esp], esi
mov dword [esp + 0xc], eax
mov dword [esp + 4], edi
call fcn.00485080
mov dword [ebp - 0x530], eax
mov esi, eax
mov eax, dword [str.ext2]
mov ebx, edx
mov dword [ebp - 0x52c], edx
mov dword [esp + 4], eax
mov eax, dword [ebp + 0x18]
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x413f41
cmp ebx, 0
jbe 0x413f5d
cmp dword [0x4dfd80], 0
js 0x413ecf
mov dword [esp], 0x1204
call fcn.0046b83d
mov dword [0x4dfd80], eax
mov dword [esp], str.Volume_size_is_too_large_for_ext2_or_ext3
call fcn.0043d9e0
xor ebx, ebx
jmp 0x4149ed
mov dword [esp + 8], 0x134
mov dword [esp + 4], 0x499c4e
mov dword [esp], str.IS_POWER_OF_2_BlockSize_
jmp 0x413d9d
mov byte [ebp - 0x568], 1
mov ecx, dword [ebp - 0x560]
jmp 0x413e37
cmp byte [ebp - 0x568], 0
jne 0x413f35
mov dword [esp + 8], 0x139
mov dword [esp + 4], 0x499c4e
mov dword [esp], str.EXT2_BLOCK_SIZE_BITS_features____EXT2_MAX_BLOCK_LOG_SIZE
jmp 0x413d9d
mov dword [ebp - 0x400], 7
jmp 0x413f19
mov eax, dword [str.ext3]
mov dword [esp + 4], eax
mov eax, dword [ebp + 0x18]
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x413eac
lea eax, [ebp - 0x418]
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp], eax
call fcn.0045ba36
cmp dword [ebp - 0x52c], 0
fild qword [ebp - 0x530]
jns 0x413f88
fadd dword [0x49a148]
fstp dword [ebp - 0x568]
fld dword [ebp - 0x568]
fmul dword [0x49a14c]
fld dword [0x49a140]
fxch st(1)
fcomi st(1)
jae 0x413fdf
fstp st(1)
fnstcw word [ebp - 0x552]
mov ax, word [ebp - 0x552]
or ah, 0xc
mov word [ebp - 0x554], ax
fldcw word [ebp - 0x554]
fistp qword [ebp - 0x568]
fldcw word [ebp - 0x552]
mov eax, dword [ebp - 0x568]
mov edx, dword [ebp - 0x564]
jmp 0x41401c
fnstcw word [ebp - 0x552]
fsubrp st(1)
mov ax, word [ebp - 0x552]
or ah, 0xc
mov word [ebp - 0x554], ax
fldcw word [ebp - 0x554]
fistp qword [ebp - 0x568]
fldcw word [ebp - 0x552]
mov edx, dword [ebp - 0x564]
mov eax, dword [ebp - 0x568]
add edx, 0x80000000
lea ebx, [ebp - 0x418]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp], ebx
call fcn.0045baa6
imul esi, dword [ebp - 0x558], 0x18
mov dword [ebp - 0x3cc], 1
mov eax, dword [ebp + esi - 0x504]
mov word [ebp - 0x3c0], ax
mov dword [esp], ebx
call fcn.0045b976
mov ecx, dword [ebp + esi - 0x500]
xor esi, esi
shr edx, cl
test cl, 0x20
cmovne edx, esi
or edi, 0xffffffff
cmp edx, 0
ja 0x414093
mov dword [ebp - 0x558], ecx
mov dword [esp], ebx
call fcn.0045b976
mov ecx, dword [ebp - 0x558]
shrd eax, edx, cl
shr edx, cl
and cl, 0x20
cmovne eax, edx
mov edi, eax
mov ecx, dword [ebp - 0x400]
mov edx, 0x400
mov dword [ebp - 0x418], edi
shl edx, cl
mov dword [esp + 0x10], edx
mov ecx, dword [ebp - 0x530]
mov ebx, dword [ebp - 0x52c]
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp], str._d_possible_inodes_out_of__lld_blocks__block_size___d_
call fcn.0043d9e0
lea eax, [ebp - 0x418]
mov dword [esp], eax
call fcn.0045ba7b
fld dword [0x49a150]
mov dword [esp], str._lld_blocks___0.1f____reserved_for_the_super_user
mov dword [esp + 4], eax
mov dword [esp + 8], edx
fstp qword [esp + 0xc]
call fcn.0043d9e0
mov eax, dword [ebp - 0x3bc]
mov edi, dword [ebp + 0x18]
or dword [ebp - 0x3b8], 2
mov edx, eax
or dword [ebp - 0x3b4], 3
or edx, 0x28
mov dword [ebp - 0x3bc], edx
cmp byte [edi + 3], 0x32
je 0x41412b
or eax, 0x2c
mov dword [ebp - 0x3bc], eax
mov dword [ebp - 0x318], 0xc
lea eax, [ebp - 0x540]
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x56c]
mov dword [esp + 4], 0x24000
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x418]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x55c]
mov dword [esp], eax
call fcn.004649b0
mov ebx, eax
test eax, eax
je 0x4141a8
cmp dword [0x4dfd80], 0
js 0x414189
mov dword [esp], 0xd
call fcn.0046b83d
mov dword [0x4dfd80], eax
mov dword [esp], ebx
call fcn.004136a0
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x18]
mov dword [esp], str.Could_not_initialize__s_features:__s
mov dword [esp + 4], eax
jmp 0x4149e3
mov eax, dword [ebp - 0x540]
mov ebx, dword [eax + 4]
mov eax, dword [ebx + 0xc]
mov dword [esp], 0x10
mov dword [esp + 4], eax
call sub.msvcrt.dll_calloc
mov esi, eax
test eax, eax
jne 0x4141e6
mov dword [esp + 8], 0x163
mov dword [esp + 4], 0x499c4e
mov dword [esp], str.buf___NULL
jmp 0x413d9d
mov dword [esp + 0x10], eax
xor eax, eax
mov dword [esp], ebx
mov dword [esp + 0xc], 0x10
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00468157
mov dword [esp], esi
mov ebx, eax
call sub.msvcrt.dll_free
test ebx, ebx
je 0x41424b
cmp dword [0x4dfd80], 0
js 0x41422c
mov dword [esp], 0x1d
call fcn.0046b83d
mov dword [0x4dfd80], eax
mov dword [esp], ebx
call fcn.004136a0
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x18]
mov dword [esp], str.Could_not_zero__s_superblock_area:__s
mov dword [esp + 4], eax
jmp 0x4149e3
mov eax, dword [ebp - 0x540]
mov ebx, dword [sym.imp.ole32.dll_CoCreateGuid]
mov eax, dword [eax + 0x10]
add eax, 0x68
mov dword [esp], eax
call ebx
push eax
mov eax, dword [ebp - 0x540]
mov dword [esp], eax
call fcn.0045e074
mov eax, dword [ebp - 0x540]
mov eax, dword [eax + 0x10]
mov byte [eax + 0xfc], 1
add eax, 0xec
mov dword [esp], eax
call ebx
push eax
mov eax, dword [ebp - 0x540]
cmp dword [ebp + 0x1c], 0
mov esi, dword [eax + 0x10]
mov word [esi + 0x36], 0xffff
mov dword [esi + 0x48], 5
mov word [esi + 0x3c], 1
je 0x4142ee
mov eax, dword [ebp + 0x1c]
mov dword [esp], eax
call sub.msvcrt.dll_strlen
lea edx, [esi + 0x78]
lea edi, [eax + 1]
mov ebx, eax
mov eax, 0x10
cmp edi, eax
cmovbe eax, edi
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x1c]
mov dword [esp], edx
mov dword [esp + 4], eax
call sub.msvcrt.dll_memmove
cmp edi, 0x10
mov eax, 0xf
cmovae ebx, eax
mov byte [esi + ebx + 0x78], 0
mov eax, dword [ebp - 0x540]
mov dword [esp], eax
call fcn.0045ae1f
mov ebx, eax
test eax, eax
je 0x41433b
cmp dword [0x4dfd80], 0
js 0x41431c
mov dword [esp], 0xd
call fcn.0046b83d
mov dword [0x4dfd80], eax
mov dword [esp], ebx
call fcn.004136a0
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x18]
mov dword [esp], str.Could_not_allocate__s_tables:__s
mov dword [esp + 4], eax
jmp 0x4149e3
mov eax, dword [ebp - 0x540]
lea edx, [eax + 0x30]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.00463f45
test eax, eax
je 0x414373
mov dword [esp], eax
call fcn.004136a0
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x18]
mov dword [esp], str.Could_not_set__s_cluster_bitmap:__s
mov dword [esp + 4], eax
jmp 0x4149e3
mov dword [0x4dfec0], 0
mov eax, dword [ebp + 0x18]
fld1
fld dword [0x49a144]
cmp byte [eax + 3], 0x32
mov eax, dword [ebp - 0x540]
fcmove st(0), st(1)
fstp st(1)
mov eax, dword [eax + 0x1c]
movd xmm0, eax
fstp dword [0x489e60]
movq qword [ebp - 0x550], xmm0
fild qword [ebp - 0x550]
fdiv dword [0x49a13c]
fld1
fxch st(1)
fcomi st(1)
fstp st(1)
jbe 0x4143c3
jmp 0x4143c7
fstp st(0)
fld1
mov dword [esp + 4], eax
xor esi, esi
xor edi, edi
mov dword [esp], str.Creating__d_inode_sets:__1_marker___0.1f_set_s__
fstp qword [esp + 8]
call fcn.0043d9e0
mov eax, dword [ebp - 0x540]
mov eax, dword [eax + 0x1c]
cmp eax, esi
jle 0x41452e
mov dword [esp + 8], eax
xor eax, eax
mov dword [esp + 0xc], eax
mov dword [esp], esi
mov dword [esp + 4], edi
call fcn.0041391d
test eax, eax
jne 0x413edb
mov dword [esp + 4], esi
mov eax, dword [ebp - 0x540]
mov ebx, 0x400
mov dword [esp], eax
call fcn.0045be1c
mov dword [ebp - 0x528], eax
mov eax, dword [ebp - 0x540]
mov dword [ebp - 0x524], edx
mov edx, dword [eax + 0x10]
mov ecx, dword [edx + 0x18]
shl ebx, cl
mov dword [ebp - 0x558], ebx
mov ebx, dword [edx + 0x28]
mov dword [esp + 4], esi
mov dword [esp], eax
call fcn.0045c02c
mov ecx, dword [ebp - 0x540]
sub ebx, eax
mov eax, pe_nt_image_headers32
mov edx, dword [ecx + 0x10]
cmp dword [edx + 0x4c], 0
je 0x41446e
movzx eax, word [edx + 0x58]
imul ebx, eax
mov dword [ebp - 0x568], ecx
mov ecx, dword [ebp - 0x558]
mov dword [esp + 4], ecx
mov dword [esp], ebx
call fcn.00465cfe
lea edx, [ebp - 0x544]
mov dword [ebp - 0x544], eax
mov dword [esp + 0x14], edx
lea edx, [ebp - 0x528]
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x528]
mov edx, dword [ebp - 0x524]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov ecx, dword [ebp - 0x568]
mov dword [esp], ecx
call fcn.00469910
add esi, 1
mov ebx, eax
adc edi, 0
test eax, eax
je 0x4143df
cmp dword [0x4dfd80], 0
js 0x4144f3
mov dword [esp], 0x1d
call fcn.0046b83d
mov dword [0x4dfd80], eax
mov dword [esp], ebx
call fcn.004136a0
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x544]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x528]
mov edx, dword [ebp - 0x524]
mov dword [esp], str._r_nCould_not_zero_inode_set_at_position__llu___d_blocks_:__s
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.0043d9e0
jmp 0x413edb
mov dword [esp], 0x499fa7
xor ebx, ebx
call fcn.0043db09
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 2
mov dword [esp + 4], 2
mov eax, dword [ebp - 0x540]
mov dword [esp], eax
call fcn.0046932c
mov ebx, eax
test eax, eax
je 0x41459d
cmp dword [0x4dfd80], 0
js 0x41457e
mov dword [esp], 0x570
call fcn.0046b83d
mov dword [0x4dfd80], eax
mov dword [esp], ebx
call fcn.004136a0
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x18]
mov dword [esp], str.Failed_to_create__s_root_dir:__s
mov dword [esp + 4], eax
jmp 0x4149e3
mov eax, dword [ebp - 0x540]
xor ecx, ecx
mov ebx, 3
mov dword [eax + 0x5c], 0x3f
mov dword [esp + 0xc], str.lostfound
mov dword [esp + 8], ecx
mov dword [esp + 4], 2
mov dword [esp], eax
call fcn.0046932c
mov esi, eax
test eax, eax
je 0x414629
cmp dword [0x4dfd80], 0
js 0x4145ed
mov dword [esp], 0x570
call fcn.0046b83d
mov dword [0x4dfd80], eax
mov dword [esp], esi
call fcn.004136a0
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x18]
mov dword [esp], str.Failed_to_create__s_lostfound_dir:__s
mov dword [esp + 4], eax
jmp 0x4149e3
cmp ebx, edx
jge 0x413da3
mov dword [esp + 4], ebx
inc ebx
mov dword [esp + 8], 1
mov dword [esp], eax
call fcn.0045a115
mov eax, dword [ebp - 0x540]
mov edx, 0xb
mov ecx, dword [eax + 0x10]
cmp dword [ecx + 0x4c], 0
je 0x41460c
mov edx, dword [ecx + 0x54]
jmp 0x41460c
mov dword [esp + 8], 1
xor edi, edi
mov dword [esp + 4], 1
mov eax, dword [ebp - 0x540]
mov dword [esp], eax
call fcn.0045a115
mov dword [esp + 4], edi
mov eax, dword [ebp - 0x540]
mov dword [esp], eax
call fcn.0045b098
mov ebx, eax
test eax, eax
je 0x4146ac
cmp dword [0x4dfd80], 0
js 0x414694
mov dword [esp], 0x1d
call fcn.0046b83d
mov dword [0x4dfd80], eax
mov dword [esp], ebx
call fcn.004136a0
mov dword [esp], str.Could_not_set_inode_stats:__s
mov dword [esp + 4], eax
jmp 0x413df7
mov eax, dword [ebp + 0x18]
cmp byte [eax + 3], 0x32
je 0x414784
mov eax, dword [ebp - 0x540]
mov dword [0x4dfec0], 0x3f000000
mov eax, dword [eax + 0x10]
mov dword [esp], eax
call fcn.0045b976
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.00469ae3
fld dword [0x49a13c]
shr eax, 1
mov dword [ebp - 0x558], eax
fidivr dword [ebp - 0x558]
fld1
fxch st(1)
mov ebx, eax
fcomi st(1)
fstp st(1)
jbe 0x414702
jmp 0x414706
fstp st(0)
fld1
mov dword [esp + 4], ebx
mov dword [esp], str.Creating__d_journal_blocks:__1_marker___0.1f_block_s__
fstp qword [esp + 8]
call fcn.0043d9e0
mov eax, dword [ebp + 0x20]
mov dword [esp + 4], ebx
and eax, 2
or eax, 4
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x540]
mov dword [esp], eax
call fcn.0046a324
mov dword [esp], 0x499fa7
mov ebx, eax
call fcn.0043db09
test ebx, ebx
je 0x414784
cmp dword [0x4dfd80], 0
js 0x414765
mov dword [esp], 0x1d
call fcn.0046b83d
mov dword [0x4dfd80], eax
mov dword [esp], ebx
call fcn.004136a0
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x18]
mov dword [esp], str.Could_not_create__s_journal:__s
mov dword [esp + 4], eax
jmp 0x4149e3
bt dword [ebp + 0x20], 0x12
jae 0x414958
xor ebx, ebx
mov byte [ebp - 0x511], 0
lea edi, [ebp - 0x496]
xor esi, esi
mov dword [ebp - 0x53c], ebx
mov dword [ebp - 0x519], 0x6e75202f
mov dword [ebp - 0x515], 0xa6e6f69
mov dword [esp], ebx
lea ebx, [ebp - 0x534]
call dword [sym.imp.msvcrt.dll_time]
mov ecx, 0x7e
mov word [ebp - 0x498], 0x81a4
mov edx, eax
xor eax, eax
rep stosb byte es:[edi], al
mov dword [ebp - 0x490], edx
mov dword [ebp - 0x48c], edx
mov dword [ebp - 0x488], edx
mov word [ebp - 0x47e], 1
mov dword [ebp - 0x494], 8
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], str.persistence.conf
mov dword [esp + 8], 2
mov dword [esp + 4], 2
mov eax, dword [ebp - 0x540]
mov dword [esp], eax
call fcn.0046a62f
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x11ed
mov dword [esp + 4], 2
mov eax, dword [ebp - 0x540]
mov dword [esp], eax
call fcn.0045926e
mov dword [esp + 0x10], 1
mov eax, dword [ebp - 0x534]
mov dword [esp + 8], str.persistence.conf
mov dword [esp + 0xc], eax
mov dword [esp + 4], 2
mov eax, dword [ebp - 0x540]
mov dword [esp], eax
call fcn.004686c4
mov dword [esp + 8], 1
mov eax, dword [ebp - 0x534]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x540]
mov dword [esp], eax
call fcn.0045a115
lea eax, [ebp - 0x498]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x534]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x540]
mov dword [esp], eax
call fcn.00467da5
lea eax, [ebp - 0x538]
mov dword [esp + 8], 1
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x534]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x540]
mov dword [esp], eax
call fcn.0046153e
lea eax, [ebp - 0x53c]
mov dword [esp + 8], 8
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x519]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x538]
mov dword [esp], eax
call fcn.00461df1
test eax, eax
jne 0x414925
cmp dword [ebp - 0x53c], 8
je 0x414936
mov dword [esp + 4], str.persistence.conf
mov dword [esp], str.Error:_Could_not_create__s_file
jmp 0x414945
mov dword [esp + 4], str.persistence.conf
mov dword [esp], str.Created__s_file
call fcn.0043d9e0
mov eax, dword [ebp - 0x538]
mov dword [esp], eax
call fcn.004617e4
mov eax, dword [ebp - 0x540]
mov dword [esp], eax
call fcn.0045dc99
mov ebx, eax
test eax, eax
jne 0x4149af
xor eax, eax
xor edx, edx
xor ecx, ecx
mov ebx, 1
mov dword [ebp - 0x540], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x10], 0x64
mov dword [esp + 0x14], edx
mov dword [esp + 8], 0x64
mov dword [esp + 0xc], ecx
mov dword [esp + 4], 0xc91
mov dword [esp], 4
call fcn.0044a2e0
jmp 0x4149ed
cmp dword [0x4dfd80], 0
js 0x4149c9
mov dword [esp], 0x1d
call fcn.0046b83d
mov dword [0x4dfd80], eax
mov dword [esp], ebx
call fcn.004136a0
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x18]
mov dword [esp], str.Could_not_create__s_volume:__s
mov dword [esp + 4], eax
call fcn.0043d9e0
jmp 0x413edb
mov eax, dword [ebp - 0x55c]
mov dword [esp], eax
call sub.msvcrt.dll_free
mov eax, dword [ebp - 0x540]
mov dword [esp], eax
call fcn.004622ee
lea esp, [ebp - 0xc]
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret
lea ecx, [esp + 4]
and esp, 0xfffffff0
push dword [ecx - 4]
push ebp
mov ebp, esp
push edi
push esi
push ebx
push ecx
sub esp, 0x278
mov eax, dword [ecx]
mov ebx, dword [ecx + 0x14]
mov dword [ebp - 0x1ec], 0x4e204f4e
mov dword [ebp - 0x1e8], 0x20454d41
mov edx, dword [ecx + 8]
mov dword [ebp - 0x248], eax
mov eax, dword [ecx + 4]
mov dword [ebp - 0x264], ebx
mov ebx, dword [ecx + 0x18]
mov dword [ebp - 0x250], eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x24c], edx
mov dword [ebp - 0x210], eax
mov eax, dword [ecx + 0x10]
mov dword [ebp - 0x268], ebx
mov dword [ebp - 0x1e4], 0x202020
test eax, eax
je 0x414aa7
mov dword [esp + 8], 3
mov dword [esp + 4], 0x49a154
mov dword [esp], eax
call sub.msvcrt.dll_strncmp
mov dword [ebp - 0x244], eax
test eax, eax
je 0x414ad8
xor eax, eax
xor ebx, ebx
xor esi, esi
xor edi, edi
mov dword [ebp - 0x200], eax
mov dword [ebp - 0x208], eax
xor eax, eax
mov dword [0x4dfd80], 0xc0030057
mov dword [ebp - 0x1fc], eax
mov dword [ebp - 0x244], eax
jmp 0x4158e8
xor eax, eax
mov dword [esp + 0x10], str.Large_FAT32
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xc96
mov dword [esp + 4], 1
mov dword [esp], 1
call fcn.00422f82
xor eax, eax
mov dword [esp + 4], 1
mov dword [esp + 0x18], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [esp + 8], eax
mov dword [esp + 0xc], eax
mov dword [esp], 0xffffffff
call fcn.0044a2e0
lea eax, [ebp - 0x118]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.DLL_GetLocalTime]
push eax
mov ax, word [ebp - 0x112]
mov bx, word [ebp - 0x116]
cmp dword [0x5240dc], 0
mov word [ebp - 0x220], ax
mov ax, word [ebp - 0x10a]
mov word [ebp - 0x22c], ax
mov eax, dword [ebp - 0x10c]
mov word [ebp - 0x238], ax
mov ax, word [ebp - 0x10e]
mov word [ebp - 0x240], ax
mov eax, dword [ebp - 0x110]
mov word [ebp - 0x258], ax
mov eax, dword [ebp - 0x118]
mov word [ebp - 0x25c], ax
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 1
mov eax, dword [ebp - 0x250]
mov edx, dword [ebp - 0x24c]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, dword [ebp - 0x248]
mov dword [esp], eax
je 0x414bd9
call fcn.004099a5
jmp 0x414bde
call fcn.0040993e
mov dword [ebp - 0x1fc], eax
mov eax, dword [ebp - 0x1fc]
dec eax
cmp dword [0x4dfd80], 0
js 0x414c0f
cmp eax, 0xfffffffd
jbe 0x414c26
mov dword [esp], str.Invalid_logical_volume_handle
call fcn.0043d9e0
mov dword [0x4dfd80], 0xc0030006
xor edi, edi
xor ebx, ebx
xor esi, esi
mov dword [ebp - 0x200], edi
mov dword [ebp - 0x208], edi
jmp 0x415042
mov eax, dword [ebp - 0x1fc]
xor esi, esi
lea edi, [ebp - 0x1f0]
mov dword [esp], eax
call fcn.0040af19
xor ecx, ecx
lea eax, [ebp - 0x1e0]
mov dword [esp + 0xc], esi
mov dword [esp + 8], esi
mov esi, dword [sym.imp.KERNEL32.DLL_DeviceIoControl]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], 0x18
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x70000
mov eax, dword [ebp - 0x1fc]
mov dword [esp], eax
call esi
sub esp, 0x20
test eax, eax
jne 0x414d0b
xor eax, eax
xor edx, edx
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], eax
lea eax, [ebp - 0x118]
mov dword [esp + 0x14], 0x100
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edx
mov dword [esp + 8], edx
mov dword [esp + 4], 0x700a0
mov eax, dword [ebp - 0x1fc]
mov dword [esp], eax
call esi
sub esp, 0x20
test eax, eax
jne 0x414ce5
call fcn.0043df77
mov dword [esp], str.IOCTL_DISK_GET_DRIVE_GEOMETRY_error:__s
mov dword [esp + 4], eax
call fcn.0043d9e0
mov dword [esp], str.Failed_to_get_device_geometry__both_regular_and__ex_
jmp 0x414dda
mov eax, dword [ebp - 0x108]
mov edx, dword [ebp - 0x104]
movups xmm0, xmmword [ebp - 0x118]
mov dword [ebp - 0x1d0], eax
mov dword [ebp - 0x1cc], edx
movups xmmword [ebp - 0x1e0], xmm0
cmp dword [ebp - 0x1cc], 0x1ff
ja 0x414d21
mov dword [ebp - 0x1cc], 0x200
cmp dword [0x4dfd80], 0
js 0x414c0f
xor eax, eax
lea edi, [ebp - 0x1f0]
mov dword [esp + 0x14], 0x20
mov esi, dword [sym.imp.KERNEL32.DLL_DeviceIoControl]
mov dword [esp + 0x1c], eax
lea eax, [ebp - 0x1c8]
mov dword [esp + 0x10], eax
xor eax, eax
mov dword [esp + 0x18], edi
mov dword [esp + 0xc], eax
mov dword [esp + 8], eax
mov dword [esp + 4], 0x74004
mov eax, dword [ebp - 0x1fc]
mov dword [esp], eax
call esi
sub esp, 0x20
test eax, eax
jne 0x414e54
xor eax, eax
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], eax
lea eax, [ebp - 0x1a8]
mov dword [esp + 0x10], eax
xor eax, eax
mov dword [esp + 0x14], 0x90
mov dword [esp + 0xc], eax
mov dword [esp + 8], eax
mov dword [esp + 4], 0x70048
mov eax, dword [ebp - 0x1fc]
mov dword [esp], eax
call esi
sub esp, 0x20
test eax, eax
jne 0x414dee
call fcn.0043df77
mov dword [esp], str.IOCTL_DISK_GET_PARTITION_INFO_error:__s
mov dword [esp + 4], eax
call fcn.0043d9e0
mov dword [esp], str.Failed_to_get_partition_info__both_regular_and__ex_
call fcn.0043d9e0
mov dword [0x4dfd80], 0xc0030032
jmp 0x414c0f
mov edi, dword [ebp - 0x194]
xor esi, esi
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x1b4], esi
mov edx, dword [ebp - 0x19c]
mov dword [ebp - 0x1b0], esi
mov ecx, dword [ebp - 0x1cc]
mov dword [ebp - 0x1ac], esi
mov esi, dword [ebp - 0x198]
mov dword [ebp - 0x1bc], edi
xor edi, edi
mov dword [ebp - 0x1c8], eax
mov dword [ebp - 0x1c4], edx
mov dword [ebp - 0x1c0], esi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edi
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.00484da0
mov dword [ebp - 0x1b8], eax
mov eax, dword [0x4dfd80]
shr eax, 0x1f
mov dword [ebp - 0x254], eax
jne 0x414c0f
mov eax, dword [ebp - 0x1c0]
mov edi, dword [ebp - 0x1cc]
xor ecx, ecx
xor edx, edx
mov dword [ebp - 0x204], ecx
mov dword [ebp - 0x230], eax
mov eax, dword [ebp - 0x1bc]
mov dword [ebp - 0x208], edi
mov dword [ebp - 0x218], eax
mov dword [esp + 8], edi
mov dword [esp + 0xc], edx
mov eax, dword [ebp - 0x230]
mov dword [esp], eax
mov eax, dword [ebp - 0x218]
mov dword [esp + 4], eax
call fcn.00484da0
mov ecx, eax
mov eax, edx
xor edx, edx
mov dword [ebp - 0x228], ecx
mov esi, dword [ebp - 0x228]
mov ecx, 0xffff
cmp ecx, esi
mov ecx, edx
sbb ecx, eax
jb 0x414ef0
mov dword [esp], str.This_drive_is_too_small_for_FAT32___there_must_be_at_least_64K_clusters
call fcn.0043d9e0
mov dword [0x4dfd80], 0xe0031203
jmp 0x414c0f
mov esi, dword [ebp - 0x228]
mov ecx, 0xfffffffe
cmp ecx, esi
sbb edx, eax
jae 0x414f1c
mov dword [esp], str.This_drive_is_too_big_for_FAT32___max_2TB_supported
call fcn.0043d9e0
mov dword [0x4dfd80], 0xe0031204
jmp 0x414c0f
cmp dword [ebp - 0x210], 0
jne 0x414fd0
mov ecx, dword [ebp - 0x230]
mov eax, 0x3ffffff
mov esi, dword [ebp - 0x218]
cmp eax, ecx
mov eax, dword [ebp - 0x210]
sbb eax, esi
jge 0x414fba
mov eax, 0x7ffffff
cmp eax, ecx
mov eax, dword [ebp - 0x210]
sbb eax, esi
jge 0x414fc6
mov eax, 0xfffffff
cmp eax, ecx
mov eax, dword [ebp - 0x210]
mov dword [ebp - 0x210], 0x800
sbb eax, esi
jge 0x414fd0
mov dword [ebp - 0x210], 0x1000
cmp esi, 1
jle 0x414fd0
mov dword [ebp - 0x210], 0x2000
cmp esi, 3
jle 0x414fd0
mov dword [ebp - 0x210], 0x4000
cmp esi, 7
jle 0x414fd0
cmp esi, 0x1ff
mov edx, 0x10000
mov eax, 0x8000
cmovg eax, edx
mov dword [ebp - 0x210], eax
jmp 0x414fd0
mov dword [ebp - 0x210], 0x200
jmp 0x414fd0
mov dword [ebp - 0x210], 0x400
mov dword [esp + 4], 1
mov dword [esp], edi
call sub.msvcrt.dll_calloc
mov dword [esp + 4], 1
mov dword [esp], edi
mov esi, eax
call sub.msvcrt.dll_calloc
mov dword [ebp - 0x208], eax
mov dword [esp + 4], 1
mov dword [esp], edi
call sub.msvcrt.dll_calloc
test esi, esi
mov dword [ebp - 0x200], eax
sete al
cmp dword [ebp - 0x208], 0
sete dl
or al, dl
jne 0x41502a
cmp dword [ebp - 0x200], 0
jne 0x415049
mov dword [esp], str.Failed_to_allocate_memory
call fcn.0043d9e0
mov eax, 0xc0030008
mov dword [0x4dfd80], eax
xor ebx, ebx
xor edi, edi
jmp 0x4158e8
mov eax, dword [ebp - 0x22c]
shl ebx, 8
xor edx, edx
mov word [esi], 0x58eb
mov ecx, ebx
mov ebx, 0xa
mov byte [esi + 2], 0x90
div bx
mov edx, dword [ebp - 0x258]
mov dword [esi + 3], 0x4957534d
mov dword [esi + 7], 0x312e344e
mov word [esi + 0xb], di
mov dword [esi + 0x10], 2
mov dword [esi + 0x14], 0xf800
shl edx, 8
xor ebx, ebx
add ecx, eax
mov eax, dword [ebp - 0x238]
add ecx, dword [ebp - 0x220]
mov dword [ebp - 0x220], edi
shl eax, 8
add ecx, eax
mov eax, dword [ebp - 0x240]
add eax, dword [ebp - 0x25c]
add eax, edx
movzx ecx, cx
xor edx, edx
shl eax, 0x10
add eax, ecx
movzx ecx, word [esi + 0xe]
mov dword [ebp - 0x25c], eax
mov eax, dword [ebp - 0x210]
div edi
xor edx, edx
mov dword [ebp - 0x21c], edx
mov edx, dword [ebp - 0x228]
sub edx, ecx
mov dword [ebp - 0x238], eax
mov al, byte [ebp - 0x238]
mov byte [esi + 0xd], al
mov eax, dword [ebp - 0x1d0]
mov word [esi + 0x18], ax
mov eax, dword [ebp - 0x1d4]
mov word [esi + 0x1a], ax
mov eax, dword [ebp - 0x1b8]
mov dword [esi + 0x1c], eax
mov eax, dword [ebp - 0x228]
mov dword [esi + 0x20], eax
movzx eax, byte [ebp - 0x238]
mov ecx, eax
add ecx, eax
adc ebx, ebx
add ecx, edx
adc ebx, 0
mul edi
shrd eax, edx, 2
shr edx, 2
add eax, 2
adc edx, 0
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov dword [esp], ecx
mov dword [esp + 4], ebx
call fcn.00485080
add eax, 1
mov dword [ebp - 0x240], eax
mov eax, dword [ebp - 0x240]
adc edx, 0
mov dword [ebp - 0x23c], edx
xor edx, edx
mov dword [ebp - 0x260], eax
lea ebx, [eax + eax]
xor eax, eax
mov dword [esp + 8], edi
mov dword [esp + 0xc], edx
mov dword [esp], 0x100000
mov dword [esp + 4], eax
call fcn.00484da0
xor edx, edx
mov byte [esi + 0x42], 0x29
mov ecx, eax
lea eax, [ebx + eax + 0x1f]
mov dword [esi + 0x2c], 2
mov dword [ebp - 0x22c], eax
div ecx
mov eax, dword [ebp - 0x22c]
mov dword [esi + 0x30], 0x60001
mov word [esi + 0x40], pe_nt_image_headers32
mov dword [esi + 0x52], 0x33544146
mov dword [esi + 0x56], 0x20202032
mov word [esi + 0x1fe], 0xaa55
sub eax, edx
xor edx, edx
mov dword [ebp - 0x258], eax
sub eax, ebx
mov dword [ebp - 0x22c], eax
mov eax, dword [ebp - 0x22c]
mov dword [esi + 0x28], edx
mov edx, dword [ebp - 0x1e8]
mov word [esi + 0xe], ax
mov eax, dword [ebp - 0x240]
mov dword [esi + 0x4b], edx
mov dword [esi + 0x24], eax
mov eax, dword [ebp - 0x25c]
mov dword [esi + 0x43], eax
mov eax, dword [ebp - 0x1ec]
mov dword [esi + 0x47], eax
mov eax, dword [ebp - 0x1e5]
mov dword [esi + 0x4e], eax
cmp edi, 0x200
je 0x41522f
mov byte [esi + edi - 2], 0x55
mov byte [esi + edi - 1], 0xaa
mov eax, dword [ebp - 0x208]
mov ebx, dword [ebp - 0x258]
mov dword [eax], 0x41615252
mov dword [eax + 0x1e4], 0x61417272
mov dword [eax + 0x1e8], 0xffffffff
mov dword [eax + 0x1ec], 0xffffffff
mov dword [eax + 0x1fc], 0xaa550000
mov eax, dword [ebp - 0x200]
mov dword [eax], 0xffffff8
mov dword [eax + 4], 0xfffffff
mov dword [eax + 8], 0xfffffff
mov eax, dword [ebp - 0x228]
sub eax, ebx
cmp dword [ebp - 0x210], edi
jae 0x4152b0
mov dword [esp + 8], 0x177
mov dword [esp + 4], str.format_fat32.c
mov dword [esp], str.SectorsPerCluster___0
call dword [0x491228]
xor edx, edx
div dword [ebp - 0x238]
mov edx, 0xfffffff
mov ebx, eax
mov dword [ebp - 0x210], eax
xor eax, eax
mov dword [ebp - 0x20c], eax
xor eax, eax
cmp edx, ebx
mov ecx, eax
sbb ecx, dword [ebp - 0x20c]
jae 0x4152f6
mov dword [esp], str.This_drive_has_more_than_228_clusters__try_to_specify_a_larger_cluster_size_or_use_the_default
call fcn.0043d9e0
mov dword [0x4dfd80], 0xc0031203
jmp 0x415040
mov edx, 0xffff
cmp edx, ebx
sbb eax, dword [ebp - 0x20c]
jb 0x41531b
mov dword [esp], str.FAT32_must_have_at_least_65536_clusters__try_to_specify_a_smaller_cluster_size_or_use_the_default
call fcn.0043d9e0
mov eax, 0xc0031203
jmp 0x41503b
mov eax, dword [ebp - 0x210]
mov edx, dword [ebp - 0x20c]
lea ecx, [edi - 1]
mov dword [esp + 8], edi
shld edx, eax, 2
shl eax, 2
add eax, ecx
adc edx, 0
mov dword [esp], eax
mov dword [esp + 4], edx
xor edx, edx
mov dword [esp + 0xc], edx
call fcn.00485080
cmp dword [ebp - 0x240], eax
mov eax, dword [ebp - 0x23c]
sbb eax, edx
jae 0x415372
mov dword [esp], str.This_drive_is_too_big_for_large_FAT32_format
call fcn.0043d9e0
mov eax, 0xe0031204
jmp 0x41503b
xor ecx, ecx
mov dword [esp + 8], 1
dec ebx
mov dword [esp + 0xc], ecx
mov eax, dword [ebp - 0x230]
mov dword [esp], eax
mov eax, dword [ebp - 0x218]
mov dword [esp + 4], eax
call fcn.0043e475
mov ecx, dword [ebp - 0x228]
mov dword [esp], str.Size_:__s__lu_sectors
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0043d9e0
mov dword [esp + 8], edi
mov eax, dword [ebp - 0x238]
mov dword [esp], str.Cluster_size__lu_bytes___lu_bytes_per_sector
imul eax, edi
mov dword [esp + 4], eax
call fcn.0043d9e0
movzx eax, word [ebp - 0x25c]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x25c]
mov dword [esp], str.Volume_ID_is__x:_x
shr eax, 0x10
mov dword [esp + 4], eax
call fcn.0043d9e0
mov dword [esp + 0xc], 2
mov eax, dword [ebp - 0x260]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp], str._lu_Reserved_sectors___lu_sectors_per_FAT___lu_FATs
mov dword [esp + 4], eax
call fcn.0043d9e0
mov edx, dword [ebp - 0x20c]
mov eax, dword [ebp - 0x210]
mov dword [esp], str._llu_Total_clusters
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call fcn.0043d9e0
mov eax, dword [ebp - 0x208]
mov dword [eax + 0x1e8], ebx
mov dword [eax + 0x1ec], 3
mov dword [esp + 4], ebx
mov dword [esp], str._lu_Free_clusters
call fcn.0043d9e0
mov ebx, dword [ebp - 0x258]
mov eax, dword [ebp - 0x238]
add eax, ebx
mov dword [ebp - 0x210], eax
mov dword [esp + 4], eax
mov dword [esp], str.Clearing_out__d_sectors_for_reserved_sectors__FATs_and_root_cluster...
call fcn.0043d9e0
mov dword [esp + 4], pe_nt_image_headers32
mov dword [esp], edi
call sub.msvcrt.dll_calloc
mov ebx, eax
test eax, eax
je 0x41502a
mov eax, edi
xor edx, edx
shl eax, 7
mov dword [ebp - 0x224], edx
xor edx, edx
mov dword [ebp - 0x228], eax
mov eax, dword [ebp - 0x210]
add eax, 0x80
adc edx, 0
mov dword [ebp - 0x238], eax
mov dword [ebp - 0x234], edx
mov eax, dword [ebp - 0x210]
add eax, 0x7f
cmp dword [ebp - 0x254], eax
jae 0x4155d0
mov eax, dword [ebp - 0x254]
mov dword [ebp - 0x218], eax
xor eax, eax
mov dword [ebp - 0x214], eax
mov dword [esp + 0x18], eax
mov eax, dword [ebp - 0x238]
mov edx, dword [ebp - 0x234]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov eax, dword [ebp - 0x218]
mov edx, dword [ebp - 0x214]
mov dword [esp + 4], 0xc91
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov dword [esp], 4
call fcn.0044a2e0
mov ecx, dword [0x4dfd80]
test ecx, ecx
jns 0x41554d
cmp cx, 0x4c7
je 0x415042
xor eax, eax
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x14], pe_nt_image_headers32
mov dword [esp + 0x18], eax
mov eax, dword [ebp - 0x218]
mov edx, dword [ebp - 0x214]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
mov eax, dword [ebp - 0x220]
mov edx, dword [ebp - 0x21c]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, dword [ebp - 0x1fc]
mov dword [esp], eax
call fcn.0047a0bc
mov edi, dword [ebp - 0x224]
cmp edx, edi
jne 0x4155a9
mov edi, dword [ebp - 0x228]
cmp eax, edi
je 0x4155c4
mov dword [esp], str.Error_clearing_reserved_sectors
call fcn.0043d9e0
mov dword [0x4dfd80], 0xc003001d
jmp 0x415042
sub dword [ebp - 0x254], 0xffffff80
jmp 0x4154cf
mov dword [esp], str.Initializing_reserved_sectors_and_FATs...
xor edi, edi
call fcn.0043d9e0
xor eax, eax
mov dword [esp + 0x1c], esi
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], eax
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x220]
mov edx, dword [ebp - 0x21c]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, dword [ebp - 0x1fc]
mov dword [esp], eax
call fcn.0047a0bc
mov eax, dword [ebp - 0x208]
mov dword [esp + 0x14], 1
mov dword [esp + 0xc], 1
mov dword [esp + 0x1c], eax
xor eax, eax
mov dword [esp + 0x18], eax
xor eax, eax
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x220]
mov edx, dword [ebp - 0x21c]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, dword [ebp - 0x1fc]
mov dword [esp], eax
call fcn.0047a0bc
xor eax, eax
xor edx, edx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], eax
mov dword [esp + 0xc], 6
mov dword [esp + 0x10], edx
mov eax, dword [ebp - 0x220]
mov edx, dword [ebp - 0x21c]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, dword [ebp - 0x1fc]
mov dword [esp], eax
call fcn.0047a0bc
mov eax, dword [ebp - 0x208]
xor ecx, ecx
mov dword [esp + 0x10], edi
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x14], 1
mov dword [esp + 0xc], 7
mov eax, dword [ebp - 0x220]
mov edx, dword [ebp - 0x21c]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, dword [ebp - 0x1fc]
mov dword [esp], eax
call fcn.0047a0bc
mov eax, dword [ebp - 0x22c]
mov dword [esp], str.FAT__d_sector_at_address:__d
mov dword [esp + 8], eax
xor eax, eax
mov dword [esp + 4], eax
call fcn.0043d9e0
mov eax, dword [ebp - 0x200]
mov dword [esp + 0x14], 1
mov dword [esp + 0x1c], eax
xor eax, eax
mov dword [esp + 0x18], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp + 0xc], eax
sar eax, 0x1f
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x220]
mov edx, dword [ebp - 0x21c]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, dword [ebp - 0x1fc]
mov dword [esp], eax
call fcn.0047a0bc
mov eax, dword [ebp - 0x22c]
mov edi, dword [ebp - 0x260]
mov dword [esp + 4], 1
mov dword [esp], str.FAT__d_sector_at_address:__d
add edi, eax
mov dword [esp + 8], edi
call fcn.0043d9e0
mov eax, dword [ebp - 0x200]
mov dword [esp + 0xc], edi
sar edi, 0x1f
mov dword [esp + 0x14], 1
mov dword [esp + 0x1c], eax
xor eax, eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x10], edi
mov eax, dword [ebp - 0x220]
mov edx, dword [ebp - 0x21c]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, dword [ebp - 0x1fc]
mov dword [esp], eax
call fcn.0047a0bc
bt dword [ebp - 0x268], 0x11
jb 0x415806
xor eax, eax
mov dword [esp + 0xc], 0xc9d
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov dword [esp], 1
call fcn.00422f82
mov eax, dword [ebp - 0x1fc]
mov dword [esp], eax
call fcn.004105dd
test eax, eax
jne 0x415806
mov dword [esp], str.Could_not_write_partition_boot_record___drive_may_not_boot...
call fcn.0043d9e0
mov dword [esp], 0xceb
call fcn.00422df0
xor ecx, ecx
mov dword [esp + 0xc], 0xc95
mov dword [esp + 0x10], eax
mov dword [esp + 8], ecx
mov dword [esp + 4], ecx
mov dword [esp], 1
call fcn.00422f82
mov dword [esp], str.Setting_label...
call fcn.0043d9e0
mov eax, dword [ebp - 0x1fc]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
push edi
cmp dword [0x5240dc], 0
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 1
mov eax, dword [ebp - 0x250]
mov edx, dword [ebp - 0x24c]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, dword [ebp - 0x248]
mov dword [esp], eax
je 0x41588d
call fcn.0040839a
jmp 0x415892
call fcn.0040853f
mov edi, eax
test eax, eax
jne 0x4158af
call fcn.0043df77
mov dword [esp], str.Could_not_set_label:__s
mov dword [esp + 4], eax
call fcn.0043d9e0
jmp 0x4158c8
mov eax, dword [ebp - 0x264]
mov dword [esp], edi
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.DLL_SetVolumeLabelA]
push edx
push edx
test eax, eax
je 0x415898
mov dword [esp], str.Format_completed.
call fcn.0043d9e0
mov dword [ebp - 0x1fc], 0xffffffff
mov dword [ebp - 0x244], 1
mov dword [esp], edi
call sub.msvcrt.dll_free
mov eax, dword [ebp - 0x1fc]
dec eax
cmp eax, 0xfffffffd
ja 0x41590c
mov eax, dword [ebp - 0x1fc]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
push eax
mov dword [esp], esi
call sub.msvcrt.dll_free
mov eax, dword [ebp - 0x208]
mov dword [esp], eax
call sub.msvcrt.dll_free
mov eax, dword [ebp - 0x200]
mov dword [esp], eax
call sub.msvcrt.dll_free
mov dword [esp], ebx
call sub.msvcrt.dll_free
mov eax, dword [ebp - 0x244]
lea esp, [ebp - 0x10]
pop ecx
pop ebx
pop esi
pop edi
pop ebp
lea esp, [ecx - 4]
ret