Function at 0x402410
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x510
mov eax, dword [0x47b040]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x510], 0
push 0x4fecf8
push str.DIARY
push 0x4feee8
push str._s_s_s
push 0x4feb08
call fcn.00401f10
add esp, 0x14
push 0x4feb08
call fcn.00402340
add esp, 4
push 0x46f52c
push 0x4feb08
call fcn.0044745b
add esp, 8
mov dword [0x49ead0], eax
cmp dword [0x49ead0], 0
je 0x4024bb
push 0x46f52c
push 0x4feb08
call fcn.0044745b
add esp, 8
mov dword [0x49ead0], eax
mov eax, dword [0x49ead0]
push eax
push 1
push 0x1948
push 0x47c398
call fcn.0044770d
add esp, 0x10
mov ecx, dword [0x49ead0]
push ecx
call fcn.0044716d
add esp, 4
push str.TRANSFERN
push 0x4feee8
push str._s_s
push 0x4feb08
call fcn.00401f10
add esp, 0x10
push 0x4feb08
call fcn.00402340
add esp, 4
push 0x46f52c
push 0x4feb08
call fcn.0044745b
add esp, 8
mov dword [0x49ead0], eax
mov edx, dword [0x49ead0]
push edx
push 1
push 0x504
lea eax, [ebp - 0x508]
push eax
call fcn.0044770d
add esp, 0x10
cmp dword [0x49ead0], 0
je 0x402530
mov ecx, dword [0x49ead0]
push ecx
call fcn.0044716d
add esp, 4
mov dx, word [ebp - 0x4e2]
mov word [0x4b1c68], dx
mov ax, word [ebp - 0x4e8]
mov word [0x4b1c6c], ax
mov ecx, 1
mov word [ebp - 0x50c], cx
jmp 0x40256b
mov dx, word [ebp - 0x50c]
add dx, 1
mov word [ebp - 0x50c], dx
movsx eax, word [ebp - 0x50c]
movsx ecx, word [0x4b1c68]
cmp eax, ecx
jg 0x40259d
movsx edx, word [ebp - 0x50c]
movsx eax, word [ebp - 0x50c]
mov cx, word [ebp + edx*2 - 0xe0]
mov word [eax*2 + 0x4b1c2c], cx
jmp 0x402559
mov edx, 1
mov word [ebp - 0x50c], dx
jmp 0x4025bd
mov ax, word [ebp - 0x50c]
add ax, 1
mov word [ebp - 0x50c], ax
movsx ecx, word [ebp - 0x50c]
movsx edx, word [0x4b1c6c]
cmp ecx, edx
jg 0x4025ef
movsx eax, word [ebp - 0x50c]
movsx ecx, word [ebp - 0x50c]
mov dx, word [ebp + eax*2 - 0x1a8]
mov word [ecx*2 + 0x4ae200], dx
jmp 0x4025ab
push str.LOADCHARN
push 0x4feee8
push str._s_s
push 0x4fec00
call fcn.00401f10
add esp, 0x10
push 0x4fec00
call fcn.00402340
add esp, 4
push 0x46f52c
push 0x4fec00
call fcn.0044745b
add esp, 8
mov dword [0x49ead0], eax
mov eax, dword [0x49ead0]
push eax
push 1
push 0x1a70
push 0x4ae460
call fcn.0044770d
add esp, 0x10
cmp dword [0x49ead0], 0
je 0x402661
mov ecx, dword [0x49ead0]
push ecx
call fcn.0044716d
add esp, 4
mov dx, word [0x4ae462]
mov word [0x4b1c5c], dx
movsx eax, word [0x4ae464]
cmp eax, 1
jne 0x4026da
mov ecx, 1
mov word [ebp - 0x50c], cx
jmp 0x40269b
mov dx, word [ebp - 0x50c]
add dx, 1
mov word [ebp - 0x50c], dx
movsx eax, word [ebp - 0x50c]
movsx ecx, word [0x4b1c6c]
cmp eax, ecx
jg 0x4026da
movsx edx, word [ebp - 0x50c]
movzx eax, byte [edx + 0x4af938]
cmp eax, 1
jne 0x4026d8
movsx ecx, word [ebp - 0x50c]
movss xmm0, dword [0x46f958]
movss dword [ecx*4 + 0x4af488], xmm0
jmp 0x402689
mov edx, 1
mov word [ebp - 0x50c], dx
jmp 0x4026fa
mov ax, word [ebp - 0x50c]
add ax, 1
mov word [ebp - 0x50c], ax
movsx ecx, word [ebp - 0x50c]
movsx edx, word [0x4b1c6c]
cmp ecx, edx
jg 0x4027a1
movsx eax, word [ebp - 0x50c]
movsx ecx, byte [eax + 0x4ae590]
cmp ecx, 0x41
jne 0x40278e
movsx edx, word [ebp - 0x50c]
movsx eax, word [edx*2 + 0x4aec8c]
cmp eax, 1
je 0x40274b
movsx ecx, word [ebp - 0x50c]
movsx edx, word [ecx*2 + 0x4aec8c]
cmp edx, 0xc
jne 0x40277e
movsx eax, word [ebp - 0x50c]
mov byte [eax + 0x4ae90e], 0x57
mov ecx, dword [ebp - 0x510]
add ecx, 1
mov dword [ebp - 0x510], ecx
movsx edx, word [ebp - 0x50c]
mov eax, dword [ebp - 0x510]
mov dword [edx*4 + 0x4ae2c8], eax
jmp 0x40278c
movsx ecx, word [ebp - 0x50c]
mov byte [ecx + 0x4ae90e], 0x54
jmp 0x40279c
movsx edx, word [ebp - 0x50c]
mov byte [edx + 0x4ae90e], 0x4e
jmp 0x4026e8
push 0x1a70
push 0x4ae460
push 0x4afed0
call fcn.00421c60
add esp, 0xc
push 0x4fecf8
push str.PARAM00
push 0x4feee8
push str._s_s_s
push 0x4feb08
call fcn.00401f10
add esp, 0x14
push 0x4feb08
call fcn.00402340
add esp, 4
push 0x46f52c
push 0x4feb08
call fcn.0044745b
add esp, 8
mov dword [0x49ead0], eax
mov eax, dword [0x49ead0]
push eax
push 1
push 0x2e8
push 0x4b1940
call fcn.0044770d
add esp, 0x10
cmp dword [0x49ead0], 0
je 0x40282f
mov ecx, dword [0x49ead0]
push ecx
call fcn.0044716d
add esp, 4
movsx edx, word [0x4b1954]
movsx eax, word [0x4b1956]
add edx, eax
shl edx, 1
mov word [0x4b1c78], dx
movsx ecx, word [0x4b1c78]
cmp ecx, 0x1068
jle 0x402863
mov edx, 0x1068
mov word [0x4b1c78], dx
push 0x4fecf8
push 0x4feee8
push str._sEDGE_s
push 0x4feb08
call fcn.00401f10
add esp, 0x10
push 0x4feb08
call fcn.00402340
add esp, 4
push 0x46f52c
push 0x4feb08
call fcn.0044745b
add esp, 8
mov dword [0x49ead0], eax
mov eax, 1
mov word [ebp - 0x50c], ax
jmp 0x4028c3
mov cx, word [ebp - 0x50c]
add cx, 1
mov word [ebp - 0x50c], cx
movsx edx, word [ebp - 0x50c]
movsx eax, word [0x4b1944]
cmp edx, eax
jg 0x4028fa
mov ecx, dword [0x49ead0]
push ecx
push 1
push 0x68
movsx edx, word [ebp - 0x50c]
imul eax, edx, 0x68
add eax, 0x49bdb8
push eax
call fcn.0044770d
add esp, 0x10
jmp 0x4028b1
cmp dword [0x49ead0], 0
je 0x402912
mov ecx, dword [0x49ead0]
push ecx
call fcn.0044716d
add esp, 4
movsx edx, word [0x4b1982]
test edx, edx
jle 0x4029d3
push 0x4fecf8
push 0x4feee8
push str._sGIRDER_s
push 0x4feb08
call fcn.00401f10
add esp, 0x10
push 0x4feb08
call fcn.00402340
add esp, 4
push 0x46f52c
push 0x4feb08
call fcn.0044745b
add esp, 8
mov dword [0x49ead0], eax
mov eax, 1
mov word [ebp - 0x50c], ax
jmp 0x402981
mov cx, word [ebp - 0x50c]
add cx, 1
mov word [ebp - 0x50c], cx
movsx edx, word [ebp - 0x50c]
movsx eax, word [0x4b1982]
cmp edx, eax
jg 0x4029bc
mov ecx, dword [0x49ead0]
push ecx
push 1
push 0xf200
movsx edx, word [ebp - 0x50c]
shl edx, 9
add edx, 0x49f000
push edx
call fcn.0044770d
add esp, 0x10
jmp 0x40296f
cmp dword [0x49ead0], 0
je 0x4029d3
mov eax, dword [0x49ead0]
push eax
call fcn.0044716d
add esp, 4
movsx ecx, word [0x4b196a]
test ecx, ecx
jle 0x402a0d
movsx edx, word [0x4b1976]
test edx, edx
jle 0x402a0d
mov ax, word [0x4b1c68]
add ax, 1
mov word [0x4b1c68], ax
movsx ecx, word [0x4b1c68]
mov edx, 0xa
mov word [ecx*2 + 0x4b1c2c], dx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00420778
mov esp, ebp
pop ebp
ret