Function at 0x466ec0
Capabilities:
Delete file
Set file attributes

Disassembly:
push ebp
mov eax, 0x2730
mov ebp, esp
push edi
push esi
push ebx
call fcn.0057e5f0
sub esp, eax
mov dword [esp + 4], pe_nt_image_headers32
mov dword [esp], 0x76d020
call dword [sym.imp.kernel32.dll_SetFileAttributesA]
mov eax, dword [sym.imp.kernel32.dll_DeleteFileA]
sub esp, 8
mov dword [esp], 0x76d020
mov dword [ebp - 0x2728], eax
call eax
sub esp, 4
mov dword [esp + 4], 0
mov dword [esp], 0x76d020
call dword [sym.imp.kernel32.dll__lcreat]
sub esp, 8
cmp eax, 0xffffffff
je 0x4671ea
mov ebx, eax
lea esi, [ebp - 0x271c]
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x8a
mov dword [esp], ebx
mov dword [esp + 8], 0x2b8
mov dword [esp + 4], str.en_larvig_liten_text_dx_e_gx_hej_84_hej_4484__
call dword [sym.imp.kernel32.dll__hwrite]
sub esp, 0xc
cmp eax, 0xffffffff
setne al
mov dword [esp + 4], str._hwrite_complains_n
movzx eax, al
mov dword [esp], eax
call fcn.0045bef0
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x8c
mov eax, dword [sym.imp.kernel32.dll__lclose]
mov dword [esp], ebx
mov dword [ebp - 0x272c], eax
call eax
sub esp, 4
cmp eax, 0xffffffff
setne al
mov dword [esp + 4], str._lclose_complains_n
movzx eax, al
mov dword [esp], eax
call fcn.0045bef0
mov dword [esp + 4], 0
mov dword [esp], 0x76d020
call dword [sym.imp.kernel32.dll__lopen]
sub esp, 8
mov ebx, eax
mov dword [ebp - 0x2720], eax
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x90
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x34]
mov dword [esp + 8], 0x76d020
mov dword [esp + 4], str.couldnt_open_file___s__again__err_ld__n
mov dword [esp + 0xc], eax
xor eax, eax
cmp ebx, 0xffffffff
setne al
mov dword [esp], eax
call fcn.0045bef0
mov eax, dword [sym.imp.kernel32.dll__hread]
mov dword [esp], ebx
mov dword [esp + 8], 0x570
mov dword [esp + 4], esi
mov dword [ebp - 0x2724], eax
call eax
sub esp, 0xc
mov ebx, eax
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x94
xor eax, eax
cmp ebx, 0x2b8
sete al
mov dword [esp + 4], str.file_read_size_error_n
xor ebx, ebx
mov dword [esp], eax
call fcn.0045bef0
nop
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x98
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov edi, dword [ebp - 0x2720]
mov dword [esp], edi
call dword [sym.imp.kernel32.dll__llseek]
sub esp, 0xc
test eax, eax
sete al
mov dword [esp + 4], str._llseek_complains_n
movzx eax, al
mov dword [esp], eax
call fcn.0045bef0
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x99
mov dword [esp + 8], ebx
mov dword [esp + 4], esi
mov dword [esp], edi
mov eax, dword [ebp - 0x2724]
call eax
sub esp, 0xc
cmp eax, ebx
sete al
mov dword [esp + 4], str.erratic__hread_return_value_n
movzx eax, al
mov dword [esp], eax
call fcn.0045bef0
test ebx, ebx
je 0x4671e0
xor edi, edi
lea esi, [esi]
lea esi, [esi]
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x9c
movzx eax, byte [edi + str.en_larvig_liten_text_dx_e_gx_hej_84_hej_4484__]
mov dword [esp + 4], str.thats_not_whats_written_n
cmp byte [esi + edi], al
sete al
add edi, 1
movzx eax, al
mov dword [esp], eax
call fcn.0045bef0
cmp edi, ebx
jne 0x467100
lea ebx, [edi + 1]
cmp edi, 0x2b7
jne 0x467060
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0xa0
mov eax, dword [ebp - 0x2720]
mov dword [esp], eax
mov eax, dword [ebp - 0x272c]
call eax
sub esp, 4
cmp eax, 0xffffffff
setne al
mov dword [esp + 4], str._lclose_complains_n
movzx eax, al
mov dword [esp], eax
call fcn.0045bef0
mov dword [esp], 0x76d020
mov eax, dword [ebp - 0x2728]
call eax
sub esp, 4
mov ebx, eax
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0xa3
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x34]
mov dword [esp + 4], str.DeleteFile_failed___ld__n
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
setne al
mov dword [esp], eax
call fcn.0045bef0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov ebx, 1
jmp 0x467060
mov eax, 0x86
call fcn.0045b740
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x34]
mov dword [esp + 8], 0x76d020
mov dword [esp + 4], str.couldnt_create_file___s___err_ld__n
mov dword [esp + 0xc], eax
mov dword [esp], 0
call fcn.0045bef0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret