Function at 0x469360
Capabilities:
Write file on windows

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x484fcc
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x1388
call fcn.00465b80
mov eax, dword [0x4b6018]
xor eax, ebp
mov dword [ebp - 0x30], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x1340], ecx
mov dword [ebp - 4], 3
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x12cc], eax
push 0x4a99cc
mov ecx, dword [ebp - 0x12cc]
push ecx
call dword [sym.imp.MSVCR90.dll_fopen]
add esp, 8
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jne 0x469431
push 0
mov edx, dword [0x4c8c00]
push edx
push str.can_not_open_file_to_save__please_change_the_save_directory.
push 0
call dword [sym.imp.BCGCBPRO120090.dll_int___cdecl_BCGPMessageBox_struct_HWND_____char_const___char_const___unsigned_int_]
add esp, 0x10
mov dword [ebp - 0x1280], 0
mov byte [ebp - 4], 2
lea ecx, [ebp + 0xc]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [ebp - 4], 1
lea ecx, [ebp + 0x10]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x14]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x20]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov eax, dword [ebp - 0x1280]
jmp 0x469bd4
mov eax, dword [ebp - 0x1340]
cmp dword [eax + 0x10], 0
jne 0x4694b5
mov ecx, dword [ebp + 0x18]
push ecx
mov ecx, dword [ebp - 0x1340]
call fcn.00468b80
test eax, eax
jne 0x4694b5
push 0
mov edx, dword [0x4c8c00]
push edx
push str.init_network_error.
push 0
call dword [sym.imp.BCGCBPRO120090.dll_int___cdecl_BCGPMessageBox_struct_HWND_____char_const___char_const___unsigned_int_]
add esp, 0x10
mov dword [ebp - 0x1284], 0
mov byte [ebp - 4], 2
lea ecx, [ebp + 0xc]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [ebp - 4], 1
lea ecx, [ebp + 0x10]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x14]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x20]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov eax, dword [ebp - 0x1284]
jmp 0x469bd4
cmp dword [ebp + 0x1c], 0
je 0x4694c7
mov eax, dword [ebp - 0x1340]
mov ecx, dword [ebp + 0x1c]
mov dword [eax + 0x1c], ecx
mov ecx, dword [ebp - 0x1340]
call fcn.00468d10
push ecx
mov ecx, esp
mov dword [ebp - 0x1288], esp
lea edx, [ebp + 0x10]
push edx
call dword [sym.imp.mfc90.dll_Ordinal_300]
mov dword [ebp - 0x1344], eax
mov ecx, dword [ebp - 0x1340]
call fcn.004690c0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov byte [ebp - 4], 4
mov dword [ebp - 0x2c], 2
mov eax, dword [ebp - 0x1340]
movzx ecx, byte [eax + 0x18]
test ecx, ecx
je 0x469529
mov edx, dword [ebp - 0x2c]
or edx, 0x80000000
mov dword [ebp - 0x2c], edx
push 0
push 0
mov eax, dword [ebp - 0x2c]
push eax
push 1
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 0x1340]
mov ecx, dword [edx + 0x10]
call sub.mfc90.dll_Ordinal_5544
mov dword [ebp - 0x1348], eax
mov eax, dword [ebp - 0x1348]
mov dword [ebp - 0x14], eax
jmp 0x4695f4
mov dword [ebp - 4], 3
jmp 0x46963f
push 0
call dword [sym.imp.MSVCR90.dll__time64]
add esp, 4
mov dword [ebp - 0x12ec], eax
mov dword [ebp - 0x12e8], edx
movsd xmm0, qword [0x4adce0]
movsd qword [ebp - 0x28], xmm0
mov dword [ebp - 0x20], 0
lea ecx, [ebp - 0x12ec]
push ecx
lea ecx, [ebp - 0x28]
call fcn.00408020
cmp dword [ebp - 0x14], 0
je 0x469b69
mov byte [ebp - 4], 6
mov dword [ebp - 0x113c], 0
mov dword [ebp - 0x18], 0
push 0xfff
lea edx, [ebp - 0x1138]
push edx
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x14]
mov eax, dword [edx + 0x3c]
call eax
mov dword [ebp - 0x1350], eax
mov ecx, dword [ebp - 0x1350]
mov dword [ebp - 0x113c], ecx
cmp dword [ebp - 0x113c], 0
jbe 0x4699f0
mov edx, dword [ebp - 0x1c]
push edx
push 1
mov eax, dword [ebp - 0x113c]
push eax
lea ecx, [ebp - 0x1138]
push ecx
call dword [sym.imp.MSVCR90.dll_fwrite]
add esp, 0x10
mov edx, dword [ebp - 0x18]
add edx, dword [ebp - 0x113c]
mov dword [ebp - 0x18], edx
push 0
call dword [sym.imp.MSVCR90.dll__time64]
add esp, 4
mov dword [ebp - 0x130c], eax
mov dword [ebp - 0x1308], edx
movsd xmm0, qword [0x4adce0]
movsd qword [ebp - 0x12a0], xmm0
mov dword [ebp - 0x1298], 0
lea eax, [ebp - 0x130c]
push eax
lea ecx, [ebp - 0x12a0]
call fcn.00408020
lea ecx, [ebp - 0x28]
push ecx
lea edx, [ebp - 0x1154]
push edx
lea ecx, [ebp - 0x12a0]
call fcn.00407d10
movsd xmm0, qword [0x4adce0]
comisd xmm0, xmmword [ebp - 0x1154]
jbe 0x46977e
movsd xmm0, qword [0x4acb00]
xorpd xmm0, xmmword [0x4add00]
movsd qword [ebp - 0x1358], xmm0
jmp 0x46978e
movsd xmm0, qword [0x4acb00]
movsd qword [ebp - 0x1358], xmm0
fld qword [ebp - 0x1154]
fadd qword [ebp - 0x1358]
fmul qword [0x4adcf8]
call fcn.00465c36
mov dword [ebp - 0x1360], eax
mov dword [ebp - 0x135c], edx
fild qword [ebp - 0x1360]
fstp qword [ebp - 0x1148]
movsd xmm0, qword [ebp - 0x1148]
comisd xmm0, xmmword [0x4adce0]
jbe 0x469966
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x1368], eax
mov dword [ebp - 0x1364], 0
fild qword [ebp - 0x1368]
fdiv qword [0x4add28]
fdiv qword [ebp - 0x1148]
mov ecx, dword [ebp - 0x1340]
fstp qword [ecx + 0x58]
cmp dword [ebp - 0x18], 0x100000
jae 0x4698b7
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x1370], edx
mov dword [ebp - 0x136c], 0
fild qword [ebp - 0x1370]
fdiv qword [0x4add28]
fstp qword [ebp - 0x1160]
lea ecx, [ebp - 0x1164]
call dword [sym.imp.mfc90.dll_Ordinal_316]
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x1340]
sub esp, 8
fld qword [eax + 0x58]
fstp qword [esp]
sub esp, 8
fld qword [ebp - 0x1160]
fstp qword [esp]
mov ecx, dword [ebp + 0x20]
push ecx
push str._s..___Read__0.01f_KBytes___0.1f_KB_s_
lea edx, [ebp - 0x1164]
push edx
call dword [sym.imp.mfc90.dll_Ordinal_2539]
add esp, 0x1c
mov eax, dword [ebp - 0x18]
push eax
push ecx
mov ecx, esp
mov dword [ebp - 0x12a4], esp
lea edx, [ebp - 0x1164]
push edx
call dword [sym.imp.mfc90.dll_Ordinal_300]
mov dword [ebp - 0x1374], eax
mov ecx, dword [ebp - 0x1340]
call fcn.00468f50
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1164]
call dword [sym.imp.mfc90.dll_Ordinal_601]
jmp 0x469961
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x137c], eax
mov dword [ebp - 0x1378], 0
fild qword [ebp - 0x137c]
fdiv qword [0x4add28]
fdiv qword [0x4add28]
fstp qword [ebp - 0x1170]
lea ecx, [ebp - 0x1174]
call dword [sym.imp.mfc90.dll_Ordinal_316]
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x1340]
sub esp, 8
fld qword [ecx + 0x58]
fstp qword [esp]
sub esp, 8
fld qword [ebp - 0x1170]
fstp qword [esp]
mov edx, dword [ebp + 0x20]
push edx
push str._s..___Read__0.01f_MBytes___0.1f_KB_s_
lea eax, [ebp - 0x1174]
push eax
call dword [sym.imp.mfc90.dll_Ordinal_2539]
add esp, 0x1c
mov ecx, dword [ebp - 0x18]
push ecx
push ecx
mov ecx, esp
mov dword [ebp - 0x12a8], esp
lea edx, [ebp - 0x1174]
push edx
call dword [sym.imp.mfc90.dll_Ordinal_300]
mov dword [ebp - 0x1380], eax
mov ecx, dword [ebp - 0x1340]
call fcn.00468f50
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1174]
call dword [sym.imp.mfc90.dll_Ordinal_601]
jmp 0x4699f0
lea ecx, [ebp - 0x1178]
call dword [sym.imp.mfc90.dll_Ordinal_316]
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x18]
push eax
mov ecx, dword [ebp + 0x20]
push ecx
push str._s..___Read__d_Bytes
lea edx, [ebp - 0x1178]
push edx
call dword [sym.imp.mfc90.dll_Ordinal_2539]
add esp, 0x10
mov eax, dword [ebp - 0x18]
push eax
push ecx
mov ecx, esp
mov dword [ebp - 0x12ac], esp
lea edx, [ebp - 0x1178]
push edx
call dword [sym.imp.mfc90.dll_Ordinal_300]
mov dword [ebp - 0x1384], eax
mov ecx, dword [ebp - 0x1340]
call fcn.00468f50
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x138c], eax
mov dword [ebp - 0x1388], 0
fild qword [ebp - 0x138c]
mov ecx, dword [ebp - 0x1340]
fstp qword [ecx + 0x58]
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1178]
call dword [sym.imp.mfc90.dll_Ordinal_601]
cmp dword [ebp - 0x113c], 0
jbe 0x469a09
mov edx, dword [ebp - 0x1340]
cmp dword [edx + 4], 0
je 0x469698
jmp 0x469abf
mov dword [ebp - 4], 3
jmp 0x469b0a
mov edx, dword [ebp - 0x14]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x14]
mov edx, dword [eax + 0x54]
call edx
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x12c0], eax
mov ecx, dword [ebp - 0x12c0]
mov dword [ebp - 0x12bc], ecx
cmp dword [ebp - 0x12bc], 0
je 0x469b52
push 1
mov edx, dword [ebp - 0x12bc]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x12bc]
mov edx, dword [eax + 4]
call edx
mov dword [ebp - 0x1394], eax
jmp 0x469b5c
mov dword [ebp - 0x1394], 0
mov eax, dword [ebp - 0x1c]
push eax
call dword [sym.imp.MSVCR90.dll_fclose]
add esp, 4
push ecx
mov ecx, esp
mov dword [ebp - 0x12c4], esp
lea edx, [ebp + 0x14]
push edx
call dword [sym.imp.mfc90.dll_Ordinal_300]
mov dword [ebp - 0x1398], eax
mov ecx, dword [ebp - 0x1340]
call fcn.004690c0
mov dword [ebp - 0x12c8], 1
mov byte [ebp - 4], 2
lea ecx, [ebp + 0xc]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [ebp - 4], 1
lea ecx, [ebp + 0x10]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [ebp - 4], 0
lea ecx, [ebp + 0x14]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x20]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov eax, dword [ebp - 0x12c8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x30]
xor ecx, ebp
call fcn.00408de6
mov esp, ebp
pop ebp
ret 0x1c