Function at 0x421e61
Capabilities:
Create thread

Disassembly:
lea ecx, [esp + 4]
and esp, 0xfffffff0
xor eax, eax
push dword [ecx - 4]
push ebp
mov ebp, esp
push edi
push ebx
mov ebx, 0x11
lea edi, [ebp - 0x29]
push ecx
mov ecx, ebx
sub esp, 0x6c
movups xmm0, xmmword [str.disc_image.iso]
mov dword [ebp - 0x54], 0x49f12b
rep stosb byte es:[edi], al
lea edi, [ebp - 0x39]
movups xmmword [ebp - 0x39], xmm0
mov dword [esp], 0xbdc
mov ebx, ecx
call fcn.0042291e
cmp dword [0x492a14], 0
mov dword [ebp - 0x4c], 1
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x54]
mov dword [ebp - 0x44], eax
lea eax, [ebp - 0x50]
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x40], eax
jne 0x4220d8
cmp dword [0x526ce8], 0
jne 0x4220d8
mov dword [0x513420], 1
mov dword [esp], 0x513420
call fcn.00402c4f
test eax, eax
jne 0x421f03
mov dword [esp], str.No_dumpable_optical_media_found.
call fcn.0043efa9
jmp 0x4220d8
mov edx, dword [0x513430]
mov ecx, 0x80000000
mov eax, dword [0x513434]
mov dword [0x513428], 0x2000000
cmp ecx, edx
mov ecx, ebx
sbb ecx, eax
jl 0x421f40
mov ecx, 0x40000000
cmp ecx, edx
mov edx, 0x1000000
sbb ebx, eax
mov eax, 0x800000
cmovl eax, edx
mov dword [0x513428], eax
mov eax, dword [0x513440]
test eax, eax
je 0x421f6f
cmp byte [eax], 0
je 0x421f6f
mov dword [esp + 0xc], eax
mov dword [esp + 8], str._s.iso
mov dword [esp + 4], 0x21
mov dword [esp], edi
call dword [sym.imp.msvcrt.dll__snprintf]
mov byte [ebp - 0x19], 0
xor eax, eax
mov dword [esp], 1
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x4c]
mov dword [esp + 8], eax
xor eax, eax
mov dword [esp + 4], eax
call fcn.00441be5
mov dword [0x51343c], eax
test eax, eax
je 0x4220d8
xor ebx, ebx
xor edi, edi
mov dword [esp + 0xc], ebx
mov dword [esp + 8], ebx
mov edx, dword [0x513434]
mov eax, dword [0x513430]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0043f9fb
mov dword [esp], str.ISO_media_size__s
mov dword [esp + 4], eax
call fcn.0043efa9
mov dword [esp + 0xc], edi
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
mov dword [esp + 8], edi
mov dword [esp + 4], 0x8002
mov eax, dword [0x526d5c]
mov dword [esp], eax
call ebx
xor eax, eax
sub esp, 0x10
mov dword [0x4e2900], eax
mov dword [esp + 4], eax
mov dword [esp], eax
call fcn.004330aa
mov dword [esp], 1
call fcn.0044d14d
xor eax, eax
mov dword [esp + 0xc], 0x513420
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
xor eax, eax
mov dword [esp + 8], 0x41f05e
mov dword [esp + 4], eax
mov dword [esp], eax
call dword [sym.imp.KERNEL32.DLL_CreateThread]
mov dword [0x526ce8], eax
sub esp, 0x18
test eax, eax
je 0x42208d
mov dword [esp], str._r_nSave_to_ISO_operation_started
call fcn.0043efa9
xor edx, edx
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], edx
mov dword [esp + 4], edx
mov dword [esp], 1
call fcn.00422ac2
xor ecx, ecx
mov dword [esp + 4], 0x8009
mov dword [esp + 0xc], ecx
mov dword [esp + 8], ecx
mov eax, dword [0x526d5c]
mov dword [esp], eax
call ebx
jmp 0x4220d5
mov dword [esp], str.Unable_to_start_ISO_save_thread
call fcn.0043efa9
mov eax, dword [0x51343c]
mov dword [0x4e2900], 0xe0031205
mov dword [esp], eax
call sub.msvcrt.dll_free
xor eax, eax
mov dword [0x51343c], eax
mov dword [esp + 0xc], eax
mov dword [esp + 8], eax
mov dword [esp + 4], 0x8000
mov eax, dword [0x526d5c]
mov dword [esp], eax
call dword [sym.imp.USER32.dll_PostMessageW]
sub esp, 0x10
lea esp, [ebp - 0xc]
pop ecx
pop ebx
pop edi
pop ebp
lea esp, [ecx - 4]
ret