Function at 0x4133f0
Capabilities:
Delete file

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x429dee
push eax
mov dword fs:[0], esp
sub esp, 0x110
push ebx
push ebp
push esi
push edi
mov edi, ecx
push 0x44
call fcn.00415250
mov ecx, edi
call fcn.0041b390
test al, al
je 0x41378f
lea esi, [edi + 0x2e0]
mov ecx, esi
call fcn.00421100
test eax, eax
jne 0x413448
push 0x58
push 0x6a
mov ecx, edi
call fcn.00406e80
jmp 0x41378f
mov ecx, esi
call fcn.00420f00
test eax, eax
jne 0x413463
push 0x46
push 0x6a
mov ecx, edi
call fcn.00406e80
jmp 0x41378f
mov ecx, esi
call fcn.004233b0
test eax, eax
jne 0x41347e
push 0x29
push 0x6a
mov ecx, edi
call fcn.00406e80
jmp 0x41378f
lea eax, [esp + 0x20]
mov ecx, esi
push eax
push 0x80
call fcn.004237d0
test eax, eax
jne 0x41349f
push eax
push eax
push str.Error_1_:_Read_boot_version_failed
jmp 0x41378a
mov al, byte [esp + 0x20]
mov bl, 0x52
cmp al, bl
je 0x4134ef
mov ecx, esi
call fcn.004233b0
test eax, eax
jne 0x4134c4
push 0x2a
push 0x6a
mov ecx, edi
call fcn.00406e80
jmp 0x41378f
lea ecx, [esp + 0x20]
push ecx
push 0x80
mov ecx, esi
call fcn.004237d0
test eax, eax
jne 0x4134e5
push eax
push eax
push str.Error_2_:_Read_boot_version_failed
jmp 0x41378a
cmp byte [esp + 0x20], bl
jne 0x413781
cmp byte [esp + 0x21], 3
jne 0x413781
mov al, byte [esp + 0x22]
mov ebx, 2
test al, al
je 0x413527
cmp al, 1
je 0x413527
cmp al, bl
je 0x413527
cmp al, 3
je 0x413527
cmp al, 4
je 0x413527
cmp al, 5
je 0x413527
cmp al, 6
je 0x413527
cmp al, 7
jne 0x413781
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 0x432f60
call sub.MFC42.DLL_CString::CString_2
mov ecx, edi
call fcn.0040c920
xor esi, esi
cmp eax, esi
je 0x41378f
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 0x432f5c
call sub.MFC42.DLL_CString::CString_2
mov ecx, edi
call fcn.0040ced0
cmp eax, esi
je 0x41378f
push str.shengji_soft_boot33_
lea edx, [esp + 0x1c]
push 0x434a44
push edx
call sub.MFC42.DLL_operator_1
push str.xiaboot.bin
push eax
lea eax, [esp + 0x24]
mov dword [esp + 0x130], esi
push eax
call sub.MFC42.DLL_operator_1
push eax
lea ecx, [edi + 0x32c]
mov byte [esp + 0x12c], 1
call fcn.00426e04
lea ecx, [esp + 0x1c]
mov byte [esp + 0x128], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x18]
mov dword [esp + 0x128], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov ecx, edi
call fcn.00409530
test al, al
je 0x41378f
lea eax, [edi + 0x330]
lea ecx, [esp + 0x10]
push eax
call sub.MFC42.DLL_CString::CString_3
push 0x10
mov dword [esp + 0x12c], ebx
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [esp + 0x14], eax
cmp eax, esi
mov byte [esp + 0x128], 3
je 0x41361c
mov ecx, dword [esp + 0x10]
push esi
push ecx
mov ecx, eax
call fcn.0042707a
mov esi, eax
mov edx, dword [esi]
mov ecx, esi
mov byte [esp + 0x128], bl
call dword [edx + 0x38]
mov ebp, eax
push ebp
call sub.MFC42.DLL_operatornew
add esp, 4
mov ebx, eax
mov eax, dword [esi]
mov ecx, esi
push ebp
push ebx
call dword [eax + 0x3c]
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x54]
test esi, esi
je 0x413654
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 4]
mov eax, dword [edi + 0x330]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov ecx, dword [edi + 0x374]
lea esi, [edi + 0x2e0]
add ecx, ebx
push ecx
mov ecx, esi
call fcn.00420480
test al, al
jne 0x41368d
push ebx
call sub.MFC42.DLL_operatordelete
add esp, 4
push 9
push 0xd
jmp 0x41373c
add ebp, 0xfffffd00
lea edx, [ebx + 0x300]
push ebp
push edx
push 0x17
mov ecx, esi
call fcn.00420d20
test al, al
mov ecx, esi
je 0x41372f
call fcn.00421100
test eax, eax
jne 0x4136bb
push 0x57
jmp 0x41373a
mov ax, word [edi + 0x21a]
push 1
sub esp, 0x44
lea edx, [edi + 0x298]
mov ecx, esp
mov dword [esp + 0x5c], esp
push edx
mov word [edi + 0x2a2], ax
call fcn.004065e0
mov ecx, esi
call fcn.00424490
mov ecx, edi
call fcn.0041b390
test al, al
jne 0x41370b
lea ecx, [esp + 0x10]
mov dword [esp + 0x128], 0xffffffff
call sub.MFC42.DLL_CString::CString
jmp 0x41378f
push 0x45
mov ecx, edi
call fcn.00415250
lea ecx, [esp + 0x10]
mov dword [esp + 0x128], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 1
jmp 0x413791
call fcn.00421100
test eax, eax
jne 0x413759
push 0x56
push 0x6a
mov ecx, edi
call fcn.00406e80
lea ecx, [esp + 0x10]
mov dword [esp + 0x128], 0xffffffff
call sub.MFC42.DLL_CString::CString
jmp 0x41378f
push 0x46
mov ecx, edi
call fcn.00415250
push ebx
call sub.MFC42.DLL_operatordelete
add esp, 4
lea ecx, [esp + 0x10]
mov dword [esp + 0x128], 0xffffffff
call sub.MFC42.DLL_CString::CString
jmp 0x41378f
push 0
push 0
push str.Unknown_Version_for_application
call sub.MFC42.DLL_AfxMessageBox
xor eax, eax
mov ecx, dword [esp + 0x120]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x11c
ret