Function at 0x467230
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
mov ebx, 0x190
sub esp, 0x18
mov dword [esp + 4], 0
mov dword [esp], 0x76d020
call dword [sym.imp.kernel32.dll__lcreat]
mov edi, dword [sym.imp.kernel32.dll__hwrite]
sub esp, 8
mov esi, eax
cmp eax, 0xffffffff
je 0x46752e
lea esi, [esi]
nop
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x1e7
mov dword [esp + 8], 0x2b8
mov dword [esp + 4], str.en_larvig_liten_text_dx_e_gx_hej_84_hej_4484__
mov dword [esp], esi
call edi
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
sub ebx, 1
jne 0x467270
call fcn.0057d110
mov ebx, dword [sym.imp.kernel32.dll__llseek]
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x1e9
mov dword [esp], esi
mov dword [esp + 8], 1
mov dword [esp + 4], 0x43f80
call ebx
sub esp, 0xc
cmp eax, 0xffffffff
setne al
mov dword [esp + 4], str.should_be_able_to_seek_n
movzx eax, al
mov dword [esp], eax
call fcn.0045bef0
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x1ea
mov dword [esp], esi
mov dword [esp + 8], 0
mov dword [esp + 4], 0x5f43
call ebx
sub esp, 0xc
cmp eax, 0xffffffff
setne al
mov dword [esp + 4], str.should_be_able_to_seek_n
movzx eax, al
mov dword [esp], eax
call fcn.0045bef0
lea ecx, [ebp - 0xd]
mov dword [esp], esi
mov edi, dword [sym.imp.kernel32.dll__hread]
mov dword [esp + 4], ecx
mov dword [esp + 8], 1
call edi
sub esp, 0xc
mov dword [ebp - 0x14], eax
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x1ed
xor eax, eax
mov dword [esp + 4], str.file_read_size_error_n
cmp dword [ebp - 0x14], 1
sete al
mov dword [esp], eax
call fcn.0045bef0
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x1ee
xor eax, eax
mov dword [esp + 4], str._llseek_error__it_got_lost_seeking_n
cmp byte [ebp - 0xd], 0x78
sete al
mov dword [esp], eax
call fcn.0045bef0
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x1ef
mov dword [esp], esi
mov dword [esp + 8], 2
mov dword [esp + 4], 0xfffbc080
call ebx
sub esp, 0xc
cmp eax, 0xffffffff
setne al
mov dword [esp + 4], str.should_be_able_to_seek_n
movzx eax, al
mov dword [esp], eax
call fcn.0045bef0
lea ecx, [ebp - 0xd]
mov dword [esp], esi
mov dword [esp + 4], ecx
mov dword [esp + 8], 1
call edi
sub esp, 0xc
mov edi, eax
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x1f2
xor eax, eax
cmp edi, 1
sete al
mov dword [esp + 4], str.file_read_size_error_n
mov dword [esp], eax
call fcn.0045bef0
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x1f3
xor eax, eax
mov dword [esp + 4], str._llseek_error__it_got_lost_seeking_n
cmp byte [ebp - 0xd], 0x65
sete al
mov dword [esp], eax
call fcn.0045bef0
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x1f4
mov dword [esp], esi
mov dword [esp + 8], 2
mov dword [esp + 4], 0xf4240
call ebx
sub esp, 0xc
cmp eax, 0xffffffff
setne al
mov dword [esp + 4], str.should_be_able_to_seek_past_file__poor__poor_Windows_programmers_n
movzx eax, al
mov dword [esp], eax
call fcn.0045bef0
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x1f5
mov dword [esp], esi
call dword [sym.imp.kernel32.dll__lclose]
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
call dword [sym.imp.kernel32.dll_DeleteFileA]
sub esp, 4
mov ebx, eax
call fcn.0057d110
mov dword [eax], 0x597dfd
mov dword [eax + 4], 0x1f8
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x34]
mov dword [esp], ebx
mov dword [esp + 4], str.DeleteFile_failed___ld__n
mov dword [esp + 8], eax
call fcn.0045bef0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, 0x1e1
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