Function at 0x4853f0
Capabilities:
Delete file
Get file size
Move file
Read file via mapping

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x410
push esi
push edi
lea edi, [ebp - 0x410]
mov ecx, 0x104
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
mov eax, dword [0x55370c]
mov dword [ebp - 4], eax
mov dword [ebp - 8], 0
mov dword [ebp - 0x10], 0
mov byte [ebp - 0x3f0], 0
mov ecx, 0x3f
xor eax, eax
lea edi, [ebp - 0x3ef]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x3f0]
push ecx
call sub.MSVCR71.dll_strcpy
add esp, 8
push str..dat
lea edx, [ebp - 0x3f0]
push edx
call sub.MSVCR71.dll_strcat
add esp, 8
mov esi, esp
push 0
push 0x80
push 3
push 0
push 0
push connect
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
cmp esi, esp
call fcn.004f90e1
mov dword [ebp - 0x3f8], eax
cmp dword [ebp - 0x3f8], 0xffffffff
jne 0x4854b5
mov esi, esp
push str.create_file_error_r_n
call dword [sym.imp.MSVCR71.dll_printf]
add esp, 4
cmp esi, esp
call fcn.004f90e1
xor al, al
jmp 0x48592e
mov esi, esp
push 0
mov ecx, dword [ebp - 0x3f8]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
cmp esi, esp
call fcn.004f90e1
mov dword [ebp - 0x10], eax
mov esi, esp
push 0
push 0
push 0
push 2
push 0
mov edx, dword [ebp - 0x3f8]
push edx
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
cmp esi, esp
call fcn.004f90e1
mov dword [ebp - 0x3fc], eax
cmp dword [ebp - 0x3fc], 0
jne 0x485533
mov esi, esp
push str.create_file_map_error_r_n
call dword [sym.imp.MSVCR71.dll_printf]
add esp, 4
cmp esi, esp
call fcn.004f90e1
mov esi, esp
mov eax, dword [ebp - 0x3f8]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.004f90e1
xor al, al
jmp 0x48592e
mov esi, esp
push 0
push 0
push 0
push 4
mov ecx, dword [ebp - 0x3fc]
push ecx
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
cmp esi, esp
call fcn.004f90e1
mov dword [ebp - 0x400], eax
cmp dword [ebp - 0x400], 0
jne 0x4855aa
mov esi, esp
push str.map_view_error_r_n
call dword [sym.imp.MSVCR71.dll_printf]
add esp, 4
cmp esi, esp
call fcn.004f90e1
mov esi, esp
mov edx, dword [ebp - 0x3fc]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.004f90e1
mov esi, esp
mov eax, dword [ebp - 0x3f8]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.004f90e1
xor al, al
jmp 0x48592e
mov esi, esp
lea ecx, [ebp - 0x3f0]
push ecx
call dword [sym.imp.MSVCR71.dll_printf]
add esp, 4
cmp esi, esp
call fcn.004f90e1
mov esi, esp
push 0x51acac
call dword [sym.imp.MSVCR71.dll_printf]
add esp, 4
cmp esi, esp
call fcn.004f90e1
mov esi, esp
push 0x51acb0
lea edx, [ebp - 0x3f0]
push edx
call dword [sym.imp.MSVCR71.dll_fopen]
add esp, 8
cmp esi, esp
call fcn.004f90e1
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x485661
mov esi, esp
push 0x51acb4
call dword [sym.imp.MSVCR71.dll_printf]
add esp, 4
cmp esi, esp
call fcn.004f90e1
mov esi, esp
mov eax, dword [ebp - 0x400]
push eax
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
cmp esi, esp
call fcn.004f90e1
mov esi, esp
mov ecx, dword [ebp - 0x3fc]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.004f90e1
mov esi, esp
mov edx, dword [ebp - 0x3f8]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.004f90e1
xor al, al
jmp 0x48592e
push str.Raydown
lea ecx, [ebp - 0x2e8]
call fcn.004824e0
mov eax, dword [ebp - 0x400]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
movzx edx, byte [ecx + 5]
shl edx, 0x18
mov eax, dword [ebp - 0x1c]
movzx ecx, byte [eax + 6]
shl ecx, 0x10
add edx, ecx
mov eax, dword [ebp - 0x1c]
movzx ecx, byte [eax + 7]
shl ecx, 8
add edx, ecx
mov eax, dword [ebp - 0x1c]
movzx ecx, byte [eax + 8]
lea edx, [edx + ecx + 4]
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x14]
push ecx
mov edx, dword [ebp - 0x400]
push edx
lea ecx, [ebp - 0x2e8]
call fcn.00481c40
mov esi, esp
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x14]
push ecx
push 0x51acd0
call dword [sym.imp.MSVCR71.dll_printf]
add esp, 0xc
cmp esi, esp
call fcn.004f90e1
mov edx, dword [ebp - 8]
push edx
lea ecx, [ebp - 0x2e8]
call fcn.00482580
mov dword [ebp - 0x18], eax
mov esi, esp
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.MSVCR71.dll_fclose]
add esp, 4
cmp esi, esp
call fcn.004f90e1
mov dword [ebp - 8], 0
mov esi, esp
lea ecx, [ebp - 0x3f0]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
cmp esi, esp
call fcn.004f90e1
mov esi, esp
push 0x51acf0
lea edx, [ebp - 0x3f0]
push edx
call dword [sym.imp.MSVCR71.dll_fopen]
add esp, 8
cmp esi, esp
call fcn.004f90e1
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x4857af
mov esi, esp
push str.open_output_error_r_n
call dword [sym.imp.MSVCR71.dll_printf]
add esp, 4
cmp esi, esp
call fcn.004f90e1
mov esi, esp
mov eax, dword [ebp - 0x400]
push eax
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
cmp esi, esp
call fcn.004f90e1
mov esi, esp
mov ecx, dword [ebp - 0x3fc]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.004f90e1
mov esi, esp
mov edx, dword [ebp - 0x3f8]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.004f90e1
xor al, al
jmp 0x48592e
cmp dword [ebp - 0x2e8], 1
jne 0x48583f
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x14]
push ecx
mov edx, dword [ebp - 0x400]
push edx
lea ecx, [ebp - 0x2e8]
call fcn.00481ae0
mov dword [ebp - 0xc], 0
jmp 0x4857e8
mov eax, dword [ebp - 0xc]
add eax, 1
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0xc]
cmp ecx, dword [ebp - 0x240]
jae 0x485829
mov edx, dword [ebp - 0x18]
add edx, 0xd
mov dword [ebp - 0x408], edx
mov dword [ebp - 0x404], 0
fild qword [ebp - 0x408]
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x23c]
fadd qword [ecx + eax*8]
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x23c]
fstp qword [eax + edx*8]
jmp 0x4857df
mov ecx, dword [ebp - 0x240]
mov edx, dword [ebp - 0x23c]
fld qword [edx + ecx*8 - 8]
fstp qword [ebp - 0x248]
mov eax, dword [ebp - 0x18]
add eax, 0xd
mov dword [ebp - 0x410], eax
mov dword [ebp - 0x40c], 0
fild qword [ebp - 0x410]
fadd qword [ebp - 0x278]
fstp qword [ebp - 0x260]
mov esi, esp
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [ebp - 0x14]
push edx
push str.streamops__d___filesize__d_r_n
call dword [sym.imp.MSVCR71.dll_printf]
add esp, 0xc
cmp esi, esp
call fcn.004f90e1
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x14]
push ecx
mov edx, dword [ebp - 0x400]
push edx
mov eax, dword [ebp - 8]
push eax
lea ecx, [ebp - 0x2e8]
call fcn.004818d0
mov esi, esp
mov ecx, dword [ebp - 0x400]
push ecx
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
cmp esi, esp
call fcn.004f90e1
mov esi, esp
mov edx, dword [ebp - 0x3fc]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.004f90e1
mov esi, esp
mov eax, dword [ebp - 0x3f8]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.004f90e1
mov esi, esp
mov ecx, dword [ebp - 8]
push ecx
call dword [sym.imp.MSVCR71.dll_fclose]
add esp, 4
cmp esi, esp
call fcn.004f90e1
mov esi, esp
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
cmp esi, esp
call fcn.004f90e1
mov esi, esp
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x3f0]
push ecx
call dword [sym.imp.MSVCR71.dll_rename]
add esp, 8
cmp esi, esp
call fcn.004f90e1
mov al, 1
push edx
mov ecx, ebp
push eax
lea edx, [0x48595a]
call fcn.004f9104
pop eax
pop edx
mov ecx, dword [ebp - 4]
call fcn.004f90d3
pop edi
pop esi
add esp, 0x410
cmp ebp, esp
call fcn.004f90e1
mov esp, ebp
pop ebp
ret