Function at 0x46b4a0
Capabilities:
Resolve function by parsing pe exports
Write file on windows

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0xac
mov eax, dword [esp + 0xc0]
mov esi, dword [esp + 0xc4]
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov eax, dword [eax + 4]
and eax, 1
mov dword [esp + 0x34], eax
call fcn.00495670
test eax, eax
je 0x46c1d0
mov eax, dword [esp + 0x34]
test eax, eax
je 0x46b830
mov edi, esi
shr edi, 4
and edi, 0x3ff
mov dword [esp + 0x40], edi
jne 0x46b7a4
mov dword [esp + 0x40], 0x1b5
mov ebp, esi
mov ecx, esi
shr ebp, 0x14
and ecx, 1
and ebp, 3
mov dword [esp + 0x38], ebp
je 0x46b523
test cl, cl
jne 0x46c4c0
mov eax, dword [esp + 0xc8]
mov ebx, dword [eax]
test ebx, ebx
je 0x46c260
mov eax, dword [esp + 0xc0]
and ecx, 1
mov dword [ebx + 4], 0
mov dword [ebx + 0xc], 0
mov dword [ebx], eax
mov eax, dword [esp + 0x34]
mov dword [ebx + 0x1c], ecx
xor eax, 1
mov dword [ebx + 8], eax
test esi, 2
je 0x46b567
or dword [ebx + 0x1c], 2
test esi, 8
je 0x46b573
or dword [ebx + 0x1c], 4
test esi, 0x4000
je 0x46b57f
or dword [ebx + 0x1c], 8
test esi, 0x8000
je 0x46b58b
or dword [ebx + 0x1c], 0x10
test esi, 0x20000
je 0x46b597
or dword [ebx + 0x1c], 0x20
test esi, 0x40000
je 0x46b5a3
or dword [ebx + 0x1c], 0x40
test esi, 0x800000
je 0x46b5b2
or dword [ebx + 0x1c], 0x80
test esi, 0x1000000
je 0x46b5c1
or dword [ebx + 0x1c], 0x100
mov eax, dword [esp + 0x40]
mov dword [ebx + 0x10], 0
mov dword [ebx + 0x6c], 0
mov dword [ebx + 0x14], eax
mov eax, dword [esp + 0x38]
mov dword [ebx + 0xb4], 0
mov dword [ebx + 0x18], eax
lea eax, [ebx + 0xd8]
mov dword [ebx + 0xb8], 0
mov dword [ebx + 0xcc], 0
mov dword [ebx + 0xd4], 0
mov dword [ebx + 0xd8], 0
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0
mov dword [esp + 8], 4
mov dword [esp + 4], 8
mov dword [esp], 0x20
call fcn.0042a800
mov edi, eax
mov eax, edx
mov ebp, edx
or eax, edi
jne 0x46c140
mov eax, dword [ebx + 0xdc]
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], 0
mov eax, dword [esp + 0x34]
test eax, eax
jne 0x46b6a8
mov eax, dword [esp + 0xc0]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.004153f0
mov edi, eax
mov eax, edx
mov ebp, edx
or eax, edi
jne 0x46be02
lea eax, [esp + 0x6c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
call fcn.00465f90
mov edi, eax
mov eax, edx
mov ebp, edx
or eax, edi
je 0x46b940
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.0041d490
mov esi, dword [fcn.004a1b90]
mov dword [esp], 2
mov dword [esp + 0x40], eax
call esi
mov edx, dword [esp + 0x40]
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 0x10], edx
mov dword [esp + 4], 0x547314
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call esi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call esi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov dword [esp + 0x6c], 0
mov dword [ebx + 0xc], 1
mov eax, dword [esp + 0x34]
test eax, eax
je 0x46bdd1
mov eax, dword [ebx + 0xd8]
test eax, eax
je 0x46b77d
add ebx, 0xd8
mov dword [esp], ebx
call fcn.0042b350
mov eax, dword [esp + 0x68]
test eax, eax
je 0x46b795
lea edx, [esp + 0x68]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0041d440
add esp, 0xac
mov eax, edi
mov edx, ebp
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], edi
call fcn.00429020
test eax, eax
jne 0x46b508
mov dword [esp], 2
mov ebx, dword [fcn.004a1b90]
call ebx
mov ecx, dword [esp + 0x40]
mov dword [esp + 8], 0x546ba0
mov dword [esp + 4], str.__s__Unsupported_codepage:__d
mov dword [esp + 0xc], ecx
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
mov edi, 0x16
xor ebp, ebp
call ebx
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call ebx
xor ebx, ebx
mov dword [esp], eax
call sub.msvcrt.dll_fflush
jmp 0x46c1bd
lea ebx, [esp + 0x78]
mov dword [esp + 4], 0x105
mov dword [esp + 8], ebx
mov dword [esp], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x88], 0
call fcn.00427280
mov edi, eax
mov eax, edx
mov ebp, edx
or eax, edi
jne 0x46bd55
mov eax, dword [esp + 0x78]
mov byte [eax + 0x104], 0
mov dword [esp + 0xc], eax
lea eax, [esp + 0x88]
mov dword [esp + 8], eax
lea eax, [esp + 0x7c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0x104
mov dword [esp], eax
call fcn.00415b60
mov dword [esp + 4], ebx
mov edi, eax
mov eax, dword [esp + 0x78]
mov ebp, edx
mov dword [esp], eax
call fcn.0041d440
mov eax, ebp
or eax, edi
jne 0x46c4f0
mov eax, dword [esp + 0x7c]
test eax, eax
je 0x46b4eb
mov edi, 0x10
xor ebp, ebp
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x46c2b0
lea edx, [esp + 0x6c]
mov dword [esp], eax
xor ebx, ebx
mov dword [esp + 4], edx
call fcn.0041d440
mov eax, dword [esp + 0xc0]
test byte [eax + 4], 1
jne 0x46bde2
test ebx, ebx
je 0x46b77d
mov eax, dword [ebx + 0xd8]
test eax, eax
jne 0x46b76f
jmp 0x46b77d
and esi, 4
mov ecx, dword [esp + 0x6c]
mov dword [esp + 4], 0
setne al
mov dword [esp + 0x70], 0
movzx eax, al
mov dword [esp], ecx
mov dword [esp + 8], eax
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], esi
call fcn.004732a0
mov edi, eax
mov eax, edx
mov ebp, edx
or eax, edi
jne 0x46beb3
mov esi, dword [esp + 0x40]
mov byte [ebx + 0xbc], 0
movzx eax, byte [esi + 0xc]
shl eax, 8
mov edx, eax
movzx eax, byte [esi + 0xb]
or eax, edx
mov word [ebx + 0x38], ax
movzx eax, ax
mov dword [esp], eax
call fcn.004276a0
movzx ebp, word [ebx + 0x38]
sub eax, 1
mov byte [ebx + 0x3a], al
movzx eax, byte [esi + 0xd]
imul ebp, eax
mov dword [ebx + 0x3c], ebp
test ebp, ebp
je 0x46c042
lea eax, [ebp - 1]
test eax, ebp
jne 0x46c042
mov dword [esp], ebp
call fcn.004276a0
mov dword [esp + 0x4c], 0
sub eax, 1
mov byte [ebx + 0x40], al
movzx ecx, word [esi + 0xe]
mov byte [esp + 0x5d], al
mov ebp, ecx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x48], ecx
movzx ecx, byte [esi + 0x10]
mov byte [ebx + 0x50], cl
movzx eax, byte [esi + 0x11]
movzx edx, byte [esi + 0x13]
mov byte [esp + 0x50], al
movzx eax, byte [esi + 0x12]
mov byte [esp + 0x5e], al
movzx eax, byte [esi + 0x14]
mov dword [ebx + 0x4c], 0
shl eax, 8
or eax, edx
movzx edx, ax
mov dword [ebx + 0x48], edx
test ax, ax
jne 0x46ba44
mov eax, dword [esp + 0x40]
xor edx, edx
mov eax, dword [eax + 0x20]
mov dword [ebx + 0x4c], edx
mov dword [ebx + 0x48], eax
test eax, eax
je 0x46cc7e
mov eax, dword [esp + 0x40]
mov dword [ebx + 0x2a], 0
mov dword [ebx + 0x30], 0
movzx esi, word [eax + 0x16]
mov dword [ebx + 0x54], 1
mov byte [ebx + 0x51], 0
mov eax, esi
mov byte [ebx + 0xd0], 0
mov dword [ebx + 0x34], 0x200000
test esi, esi
je 0x46ca70
mov edi, dword [esp + 0x40]
mov dword [ebx + 0x20], 1
movzx edx, byte [edi + 0x25]
mov ebp, edx
shr dl, 1
and ebp, 1
and edx, 1
cmp byte [edi + 0x26], 0x29
mov dword [esp + 0x58], ebp
mov dword [esp + 0x54], edx
jne 0x46babb
mov edx, dword [edi + 0x27]
mov dword [ebx + 0x30], 1
mov edi, edx
mov word [ebx + 0x2c], dx
shr edi, 0x10
mov word [ebx + 0x2a], di
xor edx, edx
mov edi, dword [esp + 0x48]
mov ebp, dword [esp + 0x4c]
mov dword [ebx + 0x94], 0
mov word [ebx + 0x28], dx
movzx edx, cl
movzx ecx, byte [ebx + 0x3a]
mov dword [ebx + 0x98], 0
mul edx
mov dword [ebx + 0xac], 0
mov dword [ebx + 0xc0], 0
mov dword [ebx + 0xc4], 0
add edi, eax
movzx eax, byte [esp + 0x50]
adc ebp, edx
movzx edx, word [esp + 0x5e]
mov dword [ebx + 0xa0], edi
mov dword [ebx + 0xa4], ebp
shl edx, 8
mov dword [esp + 0x50], 1
or eax, edx
movzx edx, word [ebx + 0x38]
movzx eax, ax
shl eax, 5
lea eax, [eax + edx - 1]
shr eax, cl
mov dword [ebx + 0xa8], eax
xor eax, eax
mov word [ebx + 0xc8], ax
mov edx, dword [esp + 0x58]
or edx, dword [esp + 0x54]
je 0x46bb71
movzx eax, byte [ebx + 0xd0]
mov edx, eax
or edx, 2
cmp dword [esp + 0x54], 0
cmovne eax, edx
or eax, 1
mov byte [ebx + 0xd0], al
mov eax, dword [esp + 0x38]
mov edx, dword [ebx + 0x4c]
mov dword [ebx + 0x5c], esi
movzx esi, byte [esp + 0x5d]
mov dword [ebx + 0x78], edi
mov dword [ebx + 0x58], eax
mov eax, dword [ebx + 0x48]
mov dword [ebx + 0x7c], ebp
mov dword [esp + 0x48], eax
mov eax, esi
sub eax, ecx
cmp dword [esp + 0x50], 1
mov dword [esp + 0x4c], edx
mov dword [esp + 0x38], eax
je 0x46c3f4
mov eax, edi
mov edx, ebp
shld edx, eax, cl
shl eax, cl
test cl, 0x20
je 0x46bbb9
mov edx, eax
xor eax, eax
mov dword [ebx + 0x70], eax
mov eax, dword [esp + 0x48]
mov dword [ebx + 0x74], edx
mov edx, dword [esp + 0x4c]
sub eax, edi
movzx ecx, byte [esp + 0x38]
mov byte [ebx + 0x60], 0x20
sbb edx, ebp
xor edi, edi
mov dword [ebx + 0x64], 0xffffff8
shrd eax, edx, cl
shr edx, cl
test cl, 0x20
mov dword [ebx + 0x68], 0xfffffff
cmovne eax, edx
cmovne edx, edi
cmp dword [esp + 0x50], 2
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], edx
mov dword [ebx + 0x80], eax
mov dword [ebx + 0x84], edx
jne 0x46c480
mov eax, dword [esp + 0x38]
mov ebp, dword [ebx + 0x94]
lea edi, [eax + 1]
cmp edi, ebp
jb 0x46d1fd
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
mov ecx, esi
xor edi, edi
shld edx, eax, cl
shl eax, cl
test cl, 0x20
cmovne edx, eax
cmovne eax, edi
mov dword [ebx + 0x88], eax
mov eax, dword [esp + 0x40]
mov dword [ebx + 0x8c], edx
movzx eax, byte [eax + 0x41]
mov byte [esp + 0x38], al
and eax, 1
mov edx, dword [ebx + 0xdc]
movzx eax, al
mov dword [ebx + 0x24], eax
mov dword [edx + 8], eax
lea eax, [ebx + 0x6c]
mov dword [edx + 0xc], 0
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.00484fa0
mov edi, eax
mov eax, edx
mov ebp, edx
or eax, edi
jne 0x46c9e0
cmp dword [ebx + 0x20], 2
je 0x46c890
lea eax, [esp + 0x70]
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.0048a720
mov edi, eax
mov eax, edx
mov ebp, edx
or eax, edi
jne 0x46ca24
mov eax, dword [esp + 0x70]
mov edx, dword [eax + 0xc]
lea ecx, [edx + 8]
cmp eax, ecx
je 0x46c530
mov esi, dword [fcn.004a1b90]
mov dword [esp], 2
mov edi, 6
xor ebp, ebp
call esi
mov dword [esp + 0x14], str.fat_volume_init_cached_values
mov dword [esp + 0x10], 0x605
mov dword [esp + 0xc], str.volume.c
mov dword [esp + 8], 0x54715a
mov dword [esp + 4], str.__s___s:_d___s__Root_iref_is_not_the_main_ref.
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call esi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call esi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov dword [esp + 0x38], 6
jmp 0x46bf34
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.0041d490
mov dword [esp], 2
mov ebx, dword [fcn.004a1b90]
mov esi, eax
call ebx
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 4], str.__s__Error_while_allocating_memory_for_volume_mount_point:__lu___s_
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call ebx
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call ebx
mov dword [esp], eax
call sub.msvcrt.dll_fflush
jmp 0x46b8ef
mov eax, dword [esp + 0xc0]
test byte [eax + 4], 1
je 0x46b765
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
call fcn.004155c0
mov esi, eax
mov eax, edx
or eax, esi
je 0x46b91e
jmp 0x46c2de
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.0041d490
mov dword [esp], 2
mov esi, dword [fcn.004a1b90]
mov dword [esp + 0x40], eax
call esi
mov edx, dword [esp + 0x40]
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 0x10], edx
mov dword [esp + 4], str.__s__Error_while_opening_device:__lu___s_
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call esi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call esi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov eax, dword [esp + 0x6c]
mov dword [ebx + 0xc], 1
test eax, eax
je 0x46b759
lea edx, [esp + 0x6c]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0041d440
mov eax, dword [esp + 0x34]
test eax, eax
jne 0x46b91e
jmp 0x46b90d
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.0041d490
mov dword [esp + 0x38], edi
mov esi, dword [fcn.004a1b90]
mov dword [esp + 0x40], eax
mov dword [esp], 2
call esi
mov edx, dword [esp + 0x40]
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 0x10], edx
mov dword [esp + 4], str.__s__fat_check_validate_boot_sector_returned_error:__lu___s_
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call esi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call esi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov eax, dword [ebx + 0xdc]
mov edx, dword [eax + 0x1c]
test edx, edx
je 0x46bf56
add eax, 0x1c
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.0041d440
mov eax, dword [ebx + 0xdc]
mov edx, dword [eax + 0x18]
test edx, edx
je 0x46bf6c
add eax, 0x18
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.0041d440
mov eax, dword [ebx + 0xb8]
test eax, eax
je 0x46bf88
lea edx, [ebx + 0xb8]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0041d440
mov eax, dword [esp + 0x70]
test eax, eax
je 0x46bfa8
lea eax, [esp + 0x70]
mov dword [esp], eax
call fcn.00488210
mov ecx, eax
mov eax, edx
or eax, ecx
jne 0x46c370
mov eax, dword [ebx + 0x10]
test eax, eax
je 0x46bfbe
lea edx, [ebx + 0x10]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0041d440
mov eax, dword [ebx + 0xcc]
test eax, eax
je 0x46bfda
lea edx, [ebx + 0xcc]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0041d440
mov eax, dword [ebx + 0xb4]
test eax, eax
je 0x46bff2
lea eax, [ebx + 0xb4]
mov dword [esp], eax
call fcn.0046e710
mov eax, dword [ebx + 0x6c]
test eax, eax
je 0x46c004
lea eax, [ebx + 0x6c]
mov dword [esp], eax
call fcn.00485420
mov dword [esp], edi
mov dword [esp + 4], ebp
call fcn.0041d490
mov dword [esp], 2
mov dword [esp + 0x40], eax
call esi
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x38]
mov dword [esp + 8], 0x546ba0
mov dword [esp + 4], str.__s__Initializing_cached_values_failed:__lu___s_
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], ecx
jmp 0x46be3d
mov dword [esp], 2
mov esi, dword [fcn.004a1b90]
call esi
mov dword [esp + 0xc], ebp
mov dword [esp + 8], 0x546ba0
mov dword [esp + 4], str.__s__Invalid_cluster_size_in_boot_sector:__lu
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call esi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call esi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov dword [esp], 0x16
xor ebp, ebp
mov dword [esp + 4], 0
call fcn.0041d490
mov dword [esp], 2
mov edi, eax
call esi
mov dword [esp + 0x10], edi
mov edi, 0x16
mov dword [esp + 0xc], 0x16
mov dword [esp + 8], 0x546ba0
mov dword [esp + 4], str.__s__fat_volume_parse_boot_sector_returned_error:__lu___s_
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call esi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call esi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov dword [esp + 0x38], 0x16
jmp 0x46bf34
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.0041d490
mov dword [esp], 2
mov esi, dword [fcn.004a1b90]
mov dword [esp + 0x40], eax
call esi
mov edx, dword [esp + 0x40]
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 0x10], edx
mov dword [esp + 4], str.__s__Error_while_creating_iref_cache:__lu___s_
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call esi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call esi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov eax, dword [esp + 0x6c]
test eax, eax
jne 0x46be92
jmp 0x46bea2
mov ebx, dword [fcn.004a1b90]
mov dword [esp], 2
mov edi, 6
xor ebp, ebp
call ebx
mov dword [esp + 0x14], str.fat_volume_create
mov dword [esp + 0x10], 0x88a
mov dword [esp + 0xc], str.volume.c
mov dword [esp + 8], 0x54715a
mov dword [esp + 4], str.__s___s:_d___s__Invalid_on_disk_struct_layout__Check_your_compiler_settings...
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call ebx
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call ebx
xor ebx, ebx
mov dword [esp], eax
call sub.msvcrt.dll_fflush
jmp 0x46c1bd
lea eax, [esp + 0x68]
mov dword [esp + 4], 0x128
mov dword [esp + 8], eax
mov dword [esp], 0
mov byte [esp + 0x44], cl
call fcn.00427280
movzx ecx, byte [esp + 0x44]
mov edi, eax
mov eax, edx
mov ebp, edx
or eax, edi
jne 0x46c990
mov ebx, dword [esp + 0x68]
lea eax, [ebx + 0xe0]
mov dword [ebx + 0xe0], ebx
mov dword [ebx + 0xdc], eax
jmp 0x46b534
mov eax, dword [esp + 0xc0]
test byte [eax + 4], 1
je 0x46b77d
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
call fcn.004155c0
mov esi, eax
mov eax, edx
or eax, esi
je 0x46b77d
xor ebx, ebx
mov dword [esp + 4], edx
mov dword [esp], esi
call fcn.0041d490
mov ecx, dword [fcn.004a1b90]
mov dword [esp], 2
mov dword [esp + 0x40], eax
mov dword [esp + 0x34], ecx
call ecx
mov edx, dword [esp + 0x40]
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 0x10], edx
mov dword [esp + 4], str.__s__Error_while_closing_device:__lu___s_
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov ecx, dword [esp + 0x34]
mov dword [esp], 2
call ecx
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
mov ecx, dword [esp + 0x34]
call ecx
mov dword [esp], eax
call sub.msvcrt.dll_fflush
jmp 0x46b91e
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 0x44], ecx
call fcn.0041d490
mov dword [esp], 2
mov dword [esp + 0x40], eax
call esi
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
mov dword [esp + 8], 0x546ba0
mov dword [esp + 4], str.__s__Error_while_releasing_root_directory_inode:__lu___s_
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], ecx
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call esi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call esi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
jmp 0x46bfa8
add edi, dword [ebx + 0xa8]
adc ebp, dword [ebx + 0xac]
mov eax, edi
mov edx, ebp
mov dword [ebx + 0x78], edi
shld edx, eax, cl
mov dword [ebx + 0x7c], ebp
shl eax, cl
test cl, 0x20
je 0x46c418
mov edx, eax
xor eax, eax
mov dword [ebx + 0x70], eax
mov eax, dword [esp + 0x48]
mov dword [ebx + 0x74], edx
mov edx, dword [esp + 0x4c]
sub eax, edi
movzx ecx, byte [esp + 0x38]
sbb edx, ebp
xor edi, edi
shrd eax, edx, cl
shr edx, cl
test cl, 0x20
mov ecx, 0xff5
cmovne eax, edx
cmovne edx, edi
cmp ecx, eax
mov ecx, 0
mov dword [esp + 0x38], eax
sbb ecx, edx
mov dword [esp + 0x3c], edx
mov dword [ebx + 0x80], eax
mov dword [ebx + 0x84], edx
jb 0x46cf20
mov byte [ebx + 0x60], 0xc
mov dword [ebx + 0x20], 0
mov dword [ebx + 0x64], 0xff8
mov dword [ebx + 0x68], 0xfff
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
mov ecx, esi
xor esi, esi
shld edx, eax, cl
shl eax, cl
test cl, 0x20
cmovne edx, eax
cmovne eax, esi
mov dword [ebx + 0x88], eax
mov eax, dword [esp + 0x40]
mov dword [ebx + 0x8c], edx
movzx eax, byte [eax + 0x25]
mov byte [esp + 0x38], al
and eax, 1
jmp 0x46bc5b
mov dword [esp], 2
mov ebx, dword [fcn.004a1b90]
call ebx
mov dword [esp + 8], 0x546ba0
mov dword [esp + 4], str.__s__Invalid_time_mode_for_read_only_volume.
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x46b7e3
mov dword [esp], edi
mov dword [esp + 4], ebp
call fcn.0041d490
mov dword [esp], 2
mov ebx, dword [fcn.004a1b90]
mov esi, eax
call ebx
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 4], str.__s__Error_while_checking_if_the_device_is_already_mounted:__lu___s_
jmp 0x46bd8a
mov eax, dword [ebx + 0xdc]
mov dword [ebx + 0xd4], edx
mov dword [esp], edx
mov dword [esp + 0x8c], 0
add eax, 0x28
mov dword [esp + 0x88], eax
movzx eax, byte [esp + 0x90]
and eax, 0xfffffffc
or eax, 1
mov byte [esp + 0x90], al
lea eax, [esp + 0x88]
mov dword [esp + 4], eax
call fcn.00494880
mov edi, eax
mov ebp, edx
or edx, eax
jne 0x46cc89
movzx eax, byte [esp + 0x90]
mov ecx, edx
mov edx, dword [ebx + 0xdc]
test al, 2
cmovne ecx, dword [esp + 0x8c]
shr al, 1
and eax, 1
mov dword [edx + 0x20], eax
lea eax, [ebx + 0xb4]
mov dword [edx + 0x24], ecx
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.0046e610
mov edi, eax
mov eax, edx
mov ebp, edx
or eax, edi
jne 0x46cc3a
mov eax, dword [ebx + 0x80]
mov edx, dword [ebx + 0x84]
mov dword [esp], 0
add eax, 0x7fff
adc edx, 0
shrd eax, edx, 3
and eax, 0x1ffff000
mov ecx, eax
mov dword [esp + 0x44], eax
lea eax, [ebx + 0xcc]
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
call fcn.00427280
mov edi, eax
mov eax, edx
mov ebp, edx
or eax, edi
jne 0x46ce83
mov eax, dword [esp + 0x44]
mov dword [esp + 4], 0xff
mov dword [esp + 8], eax
mov eax, dword [ebx + 0xcc]
mov dword [esp], eax
call sub.msvcrt.dll_memset
mov dword [ebx + 0x90], 0
test byte [ebx + 0x1c], 0x10
je 0x46cf58
mov eax, dword [esp + 0x44]
mov dword [ebx + 0xb0], eax
mov eax, dword [ebx + 0xdc]
mov edx, dword [eax + 0x20]
test edx, edx
je 0x46ce37
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov edx, dword [eax + 0x28]
mov dword [esp + 0x7c], edx
mov edx, dword [eax + 0x2c]
cmp byte [esp + 0x7c], 5
mov dword [esp + 0x80], edx
movzx edx, word [eax + 0x30]
mov word [esp + 0x84], dx
movzx eax, byte [eax + 0x32]
mov byte [esp + 0x86], al
jne 0x46c6a6
mov byte [esp + 0x7c], 0xe5
mov edx, 0xb
lea eax, [esp + 0x7c]
nop
cmp byte [eax + edx - 1], 0x20
lea ecx, [edx - 1]
jne 0x46c6c0
mov edx, ecx
test ecx, ecx
jne 0x46c6b0
lea ecx, [esp + 0x74]
mov dword [esp + 8], edx
mov dword [esp + 0x14], ecx
lea ecx, [esp + 0x88]
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], 0
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x14]
mov dword [esp], eax
call fcn.00429040
lea eax, [esp + 0x78]
mov dword [ebx + 0x10], 0
mov dword [esp + 0xc], eax
lea eax, [ebx + 0x10]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 4], eax
lea eax, [esp + 0x88]
mov dword [esp], eax
call fcn.00428940
mov edi, eax
mov eax, edx
mov ebp, edx
or eax, edi
jne 0x46cccd
lea eax, [ebx + 0xb8]
mov dword [esp], eax
call fcn.00495ff0
mov edi, eax
mov eax, edx
mov ebp, edx
or eax, edi
jne 0x46cfb2
mov eax, dword [ebx + 0xdc]
add eax, 0x18
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00465f90
mov esi, eax
mov eax, edx
or eax, esi
jne 0x46d0f9
mov edx, dword [ebx + 0xc4]
mov eax, dword [ebx + 0xc0]
mov ecx, edx
or ecx, eax
je 0x46c7ad
movzx ecx, byte [ebx + 0x3a]
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov eax, dword [ebx + 0xdc]
add eax, 0x1c
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00466110
mov esi, eax
mov eax, edx
or eax, esi
jne 0x46d2bd
test byte [ebx + 0x1c], 5
jne 0x46c7ba
mov eax, dword [ebx + 0x24]
test eax, eax
je 0x46c7f1
mov eax, dword [esp + 0x6c]
mov dword [ebx + 0xc], 1
test eax, eax
je 0x46c7d9
lea ecx, [esp + 0x6c]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0041d440
mov eax, dword [esp + 0xc8]
mov edx, ebp
mov dword [eax], ebx
add esp, 0xac
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], ebx
call fcn.0046b3b0
mov esi, eax
mov eax, edx
or eax, esi
je 0x46c7ba
mov dword [esp + 4], edx
mov dword [esp], esi
mov dword [esp + 0x40], edx
call fcn.0041d490
mov ebp, dword [fcn.004a1b90]
mov dword [esp], 2
mov edi, eax
call ebp
mov dword [esp + 0x10], edi
mov edi, esi
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 4], str.__s__fat_volume_set_dirty_returned_with_error:__lu___s_
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call ebp
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call ebp
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x6c]
mov ebp, edx
jmp 0x46be83
lea eax, [ebx + 0x98]
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x80]
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x94]
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x6c]
mov dword [esp], eax
call fcn.00486380
mov edi, eax
mov eax, edx
mov ebp, edx
or eax, edi
je 0x46bc98
mov esi, dword [esp + 0x44]
mov dword [esp + 0x38], edi
mov dword [esp], edi
test esi, esi
mov dword [esp + 4], edx
je 0x46ced7
call fcn.0041d490
mov esi, dword [fcn.004a1b90]
mov dword [esp], 2
mov ebp, eax
call esi
mov dword [esp + 0x14], ebp
mov dword [esp + 0x10], edi
mov dword [esp + 0xc], str.Error_while_calculating_cluster_count_for_root_directory
mov dword [esp + 8], 0x546be0
mov dword [esp + 4], str.__s___s:__lu___s_
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call esi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call esi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov dword [ebx + 0x98], 0
jmp 0x46bc98
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.0041d490
mov dword [esp], 2
mov esi, dword [fcn.004a1b90]
mov dword [esp + 0x40], eax
call esi
mov edx, dword [esp + 0x40]
mov dword [esp + 0x10], edi
mov dword [esp + 0xc], 0x128
mov dword [esp + 0x14], edx
mov dword [esp + 8], 0x546ba0
mov dword [esp + 4], str.__s__Failed_to_malloc__Iu_bytes:__lu___s_
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x46c183
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.0041d490
mov dword [esp + 0x38], edi
mov esi, dword [fcn.004a1b90]
mov dword [esp + 0x40], eax
mov dword [esp], 2
call esi
mov edx, dword [esp + 0x40]
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 0x10], edx
mov dword [esp + 4], str.__s__Failed_to_create_FAT_object:__lu___s_
jmp 0x46bef2
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.0041d490
mov dword [esp + 0x38], edi
mov esi, dword [fcn.004a1b90]
mov dword [esp + 0x40], eax
mov dword [esp], 2
call esi
mov edx, dword [esp + 0x40]
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 0x10], edx
mov dword [esp + 4], str.__s__Error_while_creating_root_directory_inode:__lu___s_
jmp 0x46bef2
mov eax, dword [esp + 0x40]
mov dword [ebx + 0x20], 2
mov esi, dword [eax + 0x24]
test esi, esi
je 0x46cc7e
mov eax, dword [esp + 0x40]
movzx edx, byte [eax + 0x41]
mov edi, edx
shr dl, 1
and edi, 1
and edx, 1
mov dword [esp + 0x58], edi
mov edi, eax
movzx eax, byte [eax + 0x2a]
mov dword [esp + 0x54], edx
mov edx, 0
mov byte [ebx + 0x29], al
movzx eax, byte [edi + 0x2b]
mov byte [ebx + 0x28], al
mov eax, dword [edi + 0x2c]
mov dword [ebx + 0x98], 0
mov dword [ebx + 0x94], eax
movzx eax, word [edi + 0x30]
mov dword [ebx + 0xa0], 0
mov dword [ebx + 0xa4], 0
cmp bp, ax
mov dword [ebx + 0xa8], 0
cmovb eax, edx
xor ebp, ebp
movzx edx, byte [ebx + 0xbc]
mov dword [ebx + 0xac], 0
mov word [ebx + 0xc8], ax
movzx eax, word [edi + 0x32]
mov dword [ebx + 0xc4], ebp
mov edi, eax
mov dword [ebx + 0xc0], eax
cmp eax, edx
je 0x46cf37
cmp dword [esp + 0x38], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x50], 2
sbb eax, ebp
jae 0x46cbd8
mov edx, dword [fcn.004a1b90]
mov dword [esp], 2
mov dword [esp + 0x50], edx
call edx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebp
mov dword [esp + 8], 0x546be0
mov dword [esp + 4], str.__s__Bogus_backup_boot_sector_number__I64u__disabling_use_of_backup_boot_sector.
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov edx, dword [esp + 0x50]
mov dword [esp], 2
call edx
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov edx, dword [esp + 0x50]
mov dword [esp], 2
call edx
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov eax, dword [ebx + 0x20]
movzx ecx, byte [ebx + 0x50]
mov dword [ebx + 0xc0], 0
mov dword [ebx + 0xc4], 0
mov dword [esp + 0x50], eax
movzx eax, byte [ebx + 0x40]
mov byte [esp + 0x5d], al
mov eax, dword [esp + 0x40]
cmp byte [eax + 0x42], 0x29
jne 0x46cbf9
mov eax, dword [eax + 0x43]
mov dword [ebx + 0x30], 1
mov edx, eax
mov word [ebx + 0x2c], ax
shr edx, 0x10
mov word [ebx + 0x2a], dx
mov eax, dword [esp + 0x40]
mov edi, dword [esp + 0x48]
mov ebp, dword [esp + 0x4c]
movzx eax, word [eax + 0x28]
mov word [esp + 0x5e], ax
movzx eax, cl
movzx ecx, byte [ebx + 0x3a]
mul esi
add edi, eax
movzx eax, word [esp + 0x5e]
adc ebp, edx
test al, 0x80
je 0x46bb4a
and eax, 0xf
mov dword [ebx + 0x54], 0
mov byte [ebx + 0x51], al
jmp 0x46bb4a
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.0041d490
mov dword [esp + 0x38], edi
mov esi, dword [fcn.004a1b90]
mov dword [esp + 0x40], eax
mov dword [esp], 2
call esi
mov edx, dword [esp + 0x40]
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 0x10], edx
mov dword [esp + 4], str.__s__Failed_to_create_bitmap_object:__lu___s_
jmp 0x46bef2
mov esi, dword [fcn.004a1b90]
jmp 0x46c0a7
mov dword [esp], edi
mov dword [esp + 4], ebp
call fcn.0041d490
mov dword [esp + 0x38], edi
mov esi, dword [fcn.004a1b90]
mov dword [esp + 0x40], eax
mov dword [esp], 2
call esi
mov edx, dword [esp + 0x40]
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 0x10], edx
mov dword [esp + 4], str.__s__Error_while_reading_root_directory_metadata:__lu___s_
jmp 0x46bef2
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.0041d490
mov esi, dword [fcn.004a1b90]
mov dword [esp + 0x38], edi
mov dword [esp + 0x44], eax
mov dword [esp], 2
call esi
mov edx, dword [esp + 0x44]
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 0x10], edx
mov dword [esp + 4], str.__s__Error_while_decoding_volume_label:__lu___s_
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call esi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call esi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov eax, edi
xor eax, 2
or eax, ebp
je 0x46ce37
mov dword [esp], edi
mov dword [esp + 4], ebp
call fcn.0041d490
mov dword [esp], 2
mov dword [esp + 0x44], eax
call esi
mov edx, dword [esp + 0x44]
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 0x10], edx
mov dword [esp + 4], str.__s__Error_while_reading_volume_name:__lu___s_
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call esi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call esi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
test byte [ebx + 0x1c], 1
je 0x46bf34
mov dword [esp], 2
call esi
mov dword [esp + 8], 0x546be0
mov dword [esp + 4], str.__s__Read_only___Continuing_despite_error_when_reading_root_directory.
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call esi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call esi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
cmp dword [ebx + 0x20], 2
mov eax, dword [esp + 0x40]
je 0x46d042
cmp byte [eax + 0x26], 0x29
je 0x46d231
lea eax, [ebx + 0x10]
mov dword [esp + 4], 1
mov dword [esp + 8], eax
mov dword [esp], 0
call fcn.00427280
mov edi, eax
mov eax, edx
mov ebp, edx
or eax, edi
jne 0x46d23b
mov eax, dword [ebx + 0x10]
mov byte [eax], 0
jmp 0x46c729
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.0041d490
mov dword [esp + 0x38], edi
mov esi, dword [fcn.004a1b90]
mov dword [esp + 0x40], eax
mov dword [esp], 2
call esi
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x10], edi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 0x14], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 4], str.__s__Error_while_allocating__Iu_byte_volume_bitmap_buffer:__lu___s_
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x46befa
call fcn.0041d490
mov dword [esp], 2
mov esi, dword [fcn.004a1b90]
mov dword [esp + 0x40], eax
call esi
mov edx, dword [esp + 0x40]
mov dword [esp + 0x10], edi
mov dword [esp + 0xc], str.Error_while_calculating_cluster_count_for_root_directory
mov dword [esp + 0x14], edx
mov dword [esp + 8], 0x546ba0
mov dword [esp + 4], str.__s___s:__lu___s_
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x46befa
mov byte [ebx + 0x60], 0x10
mov dword [ebx + 0x64], 0xfff8
mov dword [ebx + 0x68], 0xffff
jmp 0x46c480
mov dword [ebx + 0xc0], 0
mov dword [ebx + 0xc4], 0
mov dword [esp + 0x50], 2
jmp 0x46cbd8
mov dword [esp], ebx
call fcn.004854a0
mov edi, eax
mov eax, edx
mov ebp, edx
or eax, edi
je 0x46c647
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.0041d490
mov dword [esp + 0x38], edi
mov esi, dword [fcn.004a1b90]
mov dword [esp + 0x40], eax
mov dword [esp], 2
call esi
mov edx, dword [esp + 0x40]
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 0x10], edx
mov dword [esp + 4], str.__s__Error_while_building_virtual_bitmap:__lu___s_
jmp 0x46bef2
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.0041d490
mov esi, dword [fcn.004a1b90]
mov dword [esp + 0x38], edi
mov dword [esp + 0x40], eax
mov dword [esp], 2
call esi
mov edx, dword [esp + 0x40]
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 0x10], edx
mov dword [esp + 4], str.__s__Error_while_decompressing_default_upcase_table:__lu___s_
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call esi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call esi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov dword [ebx + 0xb8], 0
jmp 0x46bf34
mov edi, eax
add edi, 0x47
cmp byte [eax + 0x42], 0x29
jne 0x46ce4f
cmp dword [edi], 0x4e204f4e
je 0x46d295
mov dword [esp + 0x74], 0
mov eax, 0xb
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
cmp byte [edi + eax - 1], 0x20
lea edx, [eax - 1]
jne 0x46d08a
mov eax, edx
test edx, edx
jne 0x46d07a
lea edx, [esp + 0x74]
lea ecx, [esp + 0x88]
mov dword [esp + 4], edi
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], 0
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x14]
mov dword [esp], eax
call fcn.00429040
lea eax, [esp + 0x7c]
mov dword [esp + 0xc], eax
lea eax, [esp + 0x78]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 4], eax
lea eax, [esp + 0x88]
mov dword [esp], eax
call fcn.00428940
mov edi, eax
mov eax, edx
mov ebp, edx
or eax, edi
jne 0x46d3c1
mov eax, dword [esp + 0x78]
mov dword [ebx + 0x10], eax
jmp 0x46c729
mov dword [esp + 4], edx
mov dword [esp], esi
mov dword [esp + 0x44], edx
call fcn.0041d490
mov dword [esp + 0x38], esi
mov esi, dword [fcn.004a1b90]
mov dword [esp + 0x40], eax
mov dword [esp], 2
call esi
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x40]
mov dword [esp + 8], 0x546ba0
mov dword [esp + 4], str.__s__Could_not_read_boot_region_for_volume:__lu___s_
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call esi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call esi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov eax, dword [ebx + 0xdc]
test byte [ebx + 0x1c], 1
mov ecx, dword [esp + 0x44]
mov dword [eax + 0x18], 0
je 0x46d27f
mov dword [esp], 2
call esi
mov dword [esp + 8], 0x546be0
mov dword [esp + 4], str.__s__Read_only___Continuing_despite_error_when_reading_boot_region.
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call esi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call esi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
jmp 0x46c768
mov dword [esp], 2
mov esi, dword [fcn.004a1b90]
call esi
mov dword [esp + 0x10], edi
mov dword [esp + 0xc], ebp
mov dword [esp + 8], 0x546ba0
mov dword [esp + 4], str.__s__Root_directory_cluster_0x_lX_is_outside_the_volume__max_FAT_entry_0x_lX_.
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x46c06d
mov edi, eax
add edi, 0x2b
jmp 0x46d051
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.0041d490
mov dword [esp + 0x38], edi
mov esi, dword [fcn.004a1b90]
mov dword [esp + 0x40], eax
mov dword [esp], 2
call esi
mov edx, dword [esp + 0x40]
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 0x10], edx
mov dword [esp + 4], str.__s__Failed_to_allocate_memory_for_NULL_volume_name:__lu___s_
jmp 0x46bef2
mov edx, dword [eax + 0x1c]
mov edi, dword [esp + 0x38]
mov ebp, ecx
test edx, edx
jne 0x46bf41
jmp 0x46bf6c
cmp dword [edi + 4], 0x20454d41
jne 0x46d05d
cmp word [edi + 8], 0x2020
jne 0x46d05d
cmp byte [edi + 0xa], 0x20
jne 0x46d05d
jmp 0x46ce4f
mov dword [esp + 4], edx
mov dword [esp], esi
mov dword [esp + 0x44], edx
call fcn.0041d490
mov dword [esp + 0x38], esi
mov esi, dword [fcn.004a1b90]
mov dword [esp + 0x40], eax
mov dword [esp], 2
call esi
mov ecx, dword [esp + 0x40]
mov dword [esp + 8], 0x546ba0
mov dword [esp + 4], str.__s__Could_not_read_backup_boot_region_for_volume:__lu___s_
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x38]
mov dword [esp], eax
mov dword [esp + 0xc], ecx
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call esi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call esi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov eax, dword [ebx + 0xdc]
test byte [ebx + 0x1c], 1
mov edx, dword [esp + 0x44]
mov dword [eax + 0x1c], 0
je 0x46d405
mov dword [esp], 2
call esi
mov dword [esp + 8], 0x546be0
mov dword [esp + 4], str.__s__Read_only___Continuing_despite_error_when_reading_backup_boot_region.
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call esi
mov dword [esp + 8], 2
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], 0x546bdd
call sub.msvcrt.dll_fwrite
mov dword [esp], 2
call esi
mov dword [esp], eax
call sub.msvcrt.dll_fflush
jmp 0x46c7ad
mov dword [esp + 4], edx
mov dword [esp], edi
call fcn.0041d490
mov dword [esp + 0x38], edi
mov esi, dword [fcn.004a1b90]
mov dword [esp + 0x40], eax
mov dword [esp], 2
call esi
mov edx, dword [esp + 0x40]
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0x546ba0
mov dword [esp + 0x10], edx
mov dword [esp + 4], str.__s__Error_while_decoding_boot_sector_volume_label:__lu___s_
jmp 0x46bef2
mov edi, dword [esp + 0x38]
mov ebp, edx
jmp 0x46bf56