Function at 0x44c970
Capabilities:
Encode data using xor
Hash data with crc32
Read file on windows

Disassembly:
push esi
push 0x180
push 0x8002
push str.global_pg_control
call sym.postgres.exe_BasicOpenFile
mov esi, eax
add esp, 0xc
test esi, esi
jns 0x44c9ce
push 0
push str.ReadControlFile
push 0x1386
push str.src_backend_access_transamxlog.c
push 0x16
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44c9ce
push str.global_pg_control
push str.could_not_open_control_file___s_:__m
call sym.postgres.exe_errmsg
add esp, 8
push eax
call sym.postgres.exe_errcode_for_file_access
push eax
call sym.postgres.exe_errfinish
add esp, 8
mov eax, dword [0x833510]
push 0xd0
push eax
push esi
call dword [sym.imp.MSVCR100.dll__read]
add esp, 0xc
cmp eax, 0xd0
je 0x44ca25
push 0
push str.ReadControlFile
push 0x138b
push str.src_backend_access_transamxlog.c
push 0x16
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44ca25
push str.could_not_read_from_control_file:__m
call sym.postgres.exe_errmsg
add esp, 4
push eax
call sym.postgres.exe_errcode_for_file_access
push eax
call sym.postgres.exe_errfinish
add esp, 8
push esi
call dword [sym.imp.MSVCR100.dll__close]
mov ecx, dword [0x833510]
mov eax, dword [ecx + 8]
add esp, 4
cmp eax, 0x39a
je 0x44cab0
test ax, ax
jne 0x44cab0
test eax, 0xffff0000
je 0x44cab0
push 0
push str.ReadControlFile
push 0x139d
push str.src_backend_access_transamxlog.c
push 0x15
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44cab0
mov eax, dword [0x833510]
mov esi, dword [eax + 8]
push str.This_could_be_a_problem_of_mismatched_byte_ordering.__It_looks_like_you_need_to_initdb.
call sym.postgres.exe_errhint
add esp, 4
push eax
push 0x39a
push 0x39a
push esi
push esi
push str.The_database_cluster_was_initialized_with_PG_CONTROL_VERSION__d__0x_08x___but_the_server_was_compiled_with_PG_CONTROL_VERSION__d__0x_08x_.
call sym.postgres.exe_errdetail
add esp, 0x14
push eax
push str.database_files_are_incompatible_with_server
call sym.postgres.exe_errmsg
add esp, 4
push eax
call sym.postgres.exe_errfinish
add esp, 0xc
mov ecx, dword [0x833510]
cmp dword [ecx + 8], 0x39a
je 0x44cb1f
push 0
push str.ReadControlFile
push 0x13a5
push str.src_backend_access_transamxlog.c
push 0x15
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44cb1f
push str.It_looks_like_you_need_to_initdb.
call sym.postgres.exe_errhint
mov edx, dword [0x833510]
add esp, 4
push eax
mov eax, dword [edx + 8]
push 0x39a
push eax
push str.The_database_cluster_was_initialized_with_PG_CONTROL_VERSION__d__but_the_server_was_compiled_with_PG_CONTROL_VERSION__d.
call sym.postgres.exe_errdetail
add esp, 0xc
push eax
push str.database_files_are_incompatible_with_server
call sym.postgres.exe_errmsg
add esp, 4
push eax
call sym.postgres.exe_errfinish
add esp, 0xc
mov esi, dword [0x833510]
or ecx, 0xffffffff
mov edx, 0xc8
push edi
mov edi, edi
movzx edi, byte [esi]
mov eax, ecx
shr eax, 0x18
xor eax, edi
and eax, 0xff
shl ecx, 8
xor ecx, dword [eax*4 + sym.postgres.exe_pg_crc32_table]
inc esi
dec edx
jne 0x44cb30
mov edx, dword [0x833510]
not ecx
pop edi
cmp ecx, dword [edx + 0xc8]
je 0x44cb90
push 0
push str.ReadControlFile
push 0x13b0
push str.src_backend_access_transamxlog.c
push 0x15
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44cb90
push str.incorrect_checksum_in_control_file
call sym.postgres.exe_errmsg
push eax
call sym.postgres.exe_errfinish
add esp, 8
mov eax, dword [0x833510]
cmp dword [eax + 0xc], 0xbfe224d
je 0x44cbfe
push 0
push str.ReadControlFile
push 0x13bd
push str.src_backend_access_transamxlog.c
push 0x15
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44cbfe
push str.It_looks_like_you_need_to_initdb.
call sym.postgres.exe_errhint
mov ecx, dword [0x833510]
mov edx, dword [ecx + 0xc]
add esp, 4
push eax
push 0xbfe224d
push edx
push str.The_database_cluster_was_initialized_with_CATALOG_VERSION_NO__d__but_the_server_was_compiled_with_CATALOG_VERSION_NO__d.
call sym.postgres.exe_errdetail
add esp, 0xc
push eax
push str.database_files_are_incompatible_with_server
call sym.postgres.exe_errmsg
add esp, 4
push eax
call sym.postgres.exe_errfinish
add esp, 0xc
mov eax, dword [0x833510]
cmp dword [eax + 0x9c], 8
je 0x44cc6c
push 0
push str.ReadControlFile
push 0x13c4
push str.src_backend_access_transamxlog.c
push 0x15
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44cc6c
push str.It_looks_like_you_need_to_initdb.
call sym.postgres.exe_errhint
mov ecx, dword [0x833510]
mov edx, dword [ecx + 0x9c]
add esp, 4
push eax
push 8
push edx
push str.The_database_cluster_was_initialized_with_MAXALIGN__d__but_the_server_was_compiled_with_MAXALIGN__d.
call sym.postgres.exe_errdetail
add esp, 0xc
push eax
push str.database_files_are_incompatible_with_server
call sym.postgres.exe_errmsg
add esp, 4
push eax
call sym.postgres.exe_errfinish
add esp, 0xc
mov eax, dword [0x833510]
fld qword [eax + 0xa0]
fld qword [0x6b2900]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x44ccd7
push 0
push str.ReadControlFile
push 0x13c9
push str.src_backend_access_transamxlog.c
push 0x15
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44ccd7
push str.It_looks_like_you_need_to_initdb.
call sym.postgres.exe_errhint
add esp, 4
push eax
push str.The_database_cluster_appears_to_use_a_different_floating_point_number_format_than_the_server_executable.
call sym.postgres.exe_errdetail
add esp, 4
push eax
push str.database_files_are_incompatible_with_server
call sym.postgres.exe_errmsg
add esp, 4
push eax
call sym.postgres.exe_errfinish
add esp, 0xc
mov ecx, dword [0x833510]
mov esi, 0x2000
cmp dword [ecx + 0xa8], esi
je 0x44cd49
push 0
push str.ReadControlFile
push 0x13d0
push str.src_backend_access_transamxlog.c
push 0x15
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44cd49
push str.It_looks_like_you_need_to_recompile_or_initdb.
call sym.postgres.exe_errhint
mov edx, dword [0x833510]
add esp, 4
push eax
mov eax, dword [edx + 0xa8]
push esi
push eax
push str.The_database_cluster_was_initialized_with_BLCKSZ__d__but_the_server_was_compiled_with_BLCKSZ__d.
call sym.postgres.exe_errdetail
add esp, 0xc
push eax
push str.database_files_are_incompatible_with_server
call sym.postgres.exe_errmsg
add esp, 4
push eax
call sym.postgres.exe_errfinish
add esp, 0xc
mov ecx, dword [0x833510]
cmp dword [ecx + 0xac], 0x20000
je 0x44cdbe
push 0
push str.ReadControlFile
push 0x13d7
push str.src_backend_access_transamxlog.c
push 0x15
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44cdbe
push str.It_looks_like_you_need_to_recompile_or_initdb.
call sym.postgres.exe_errhint
mov edx, dword [0x833510]
add esp, 4
push eax
mov eax, dword [edx + 0xac]
push 0x20000
push eax
push str.The_database_cluster_was_initialized_with_RELSEG_SIZE__d__but_the_server_was_compiled_with_RELSEG_SIZE__d.
call sym.postgres.exe_errdetail
add esp, 0xc
push eax
push str.database_files_are_incompatible_with_server
call sym.postgres.exe_errmsg
add esp, 4
push eax
call sym.postgres.exe_errfinish
add esp, 0xc
mov ecx, dword [0x833510]
cmp dword [ecx + 0xb0], esi
je 0x44ce2b
push 0
push str.ReadControlFile
push 0x13de
push str.src_backend_access_transamxlog.c
push 0x15
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44ce2b
push str.It_looks_like_you_need_to_recompile_or_initdb.
call sym.postgres.exe_errhint
mov edx, dword [0x833510]
add esp, 4
push eax
mov eax, dword [edx + 0xb0]
push esi
push eax
push str.The_database_cluster_was_initialized_with_XLOG_BLCKSZ__d__but_the_server_was_compiled_with_XLOG_BLCKSZ__d.
call sym.postgres.exe_errdetail
add esp, 0xc
push eax
push str.database_files_are_incompatible_with_server
call sym.postgres.exe_errmsg
add esp, 4
push eax
call sym.postgres.exe_errfinish
add esp, 0xc
mov ecx, dword [0x833510]
cmp dword [ecx + 0xb4], 0x1000000
pop esi
je 0x44cea1
push 0
push str.ReadControlFile
push 0x13e5
push str.src_backend_access_transamxlog.c
push 0x15
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44cea1
push str.It_looks_like_you_need_to_recompile_or_initdb.
call sym.postgres.exe_errhint
mov edx, dword [0x833510]
add esp, 4
push eax
mov eax, dword [edx + 0xb4]
push 0x1000000
push eax
push str.The_database_cluster_was_initialized_with_XLOG_SEG_SIZE__d__but_the_server_was_compiled_with_XLOG_SEG_SIZE__d.
call sym.postgres.exe_errdetail
add esp, 0xc
push eax
push str.database_files_are_incompatible_with_server
call sym.postgres.exe_errmsg
add esp, 4
push eax
call sym.postgres.exe_errfinish
add esp, 0xc
mov ecx, dword [0x833510]
cmp dword [ecx + 0xb8], 0x40
je 0x44cf10
push 0
push str.ReadControlFile
push 0x13ec
push str.src_backend_access_transamxlog.c
push 0x15
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44cf10
push str.It_looks_like_you_need_to_recompile_or_initdb.
call sym.postgres.exe_errhint
mov edx, dword [0x833510]
add esp, 4
push eax
mov eax, dword [edx + 0xb8]
push 0x40
push eax
push str.The_database_cluster_was_initialized_with_NAMEDATALEN__d__but_the_server_was_compiled_with_NAMEDATALEN__d.
call sym.postgres.exe_errdetail
add esp, 0xc
push eax
push str.database_files_are_incompatible_with_server
call sym.postgres.exe_errmsg
add esp, 4
push eax
call sym.postgres.exe_errfinish
add esp, 0xc
mov ecx, dword [0x833510]
cmp dword [ecx + 0xbc], 0x20
je 0x44cf7f
push 0
push str.ReadControlFile
push 0x13f3
push str.src_backend_access_transamxlog.c
push 0x15
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44cf7f
push str.It_looks_like_you_need_to_recompile_or_initdb.
call sym.postgres.exe_errhint
mov edx, dword [0x833510]
add esp, 4
push eax
mov eax, dword [edx + 0xbc]
push 0x20
push eax
push str.The_database_cluster_was_initialized_with_INDEX_MAX_KEYS__d__but_the_server_was_compiled_with_INDEX_MAX_KEYS__d.
call sym.postgres.exe_errdetail
add esp, 0xc
push eax
push str.database_files_are_incompatible_with_server
call sym.postgres.exe_errmsg
add esp, 4
push eax
call sym.postgres.exe_errfinish
add esp, 0xc
mov ecx, dword [0x833510]
cmp dword [ecx + 0xc0], 0x7cc
je 0x44cff4
push 0
push str.ReadControlFile
push 0x13fa
push str.src_backend_access_transamxlog.c
push 0x15
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44cff4
push str.It_looks_like_you_need_to_recompile_or_initdb.
call sym.postgres.exe_errhint
mov edx, dword [0x833510]
add esp, 4
push eax
mov eax, dword [edx + 0xc0]
push 0x7cc
push eax
push str.The_database_cluster_was_initialized_with_TOAST_MAX_CHUNK_SIZE__d__but_the_server_was_compiled_with_TOAST_MAX_CHUNK_SIZE__d.
call sym.postgres.exe_errdetail
add esp, 0xc
push eax
push str.database_files_are_incompatible_with_server
call sym.postgres.exe_errmsg
add esp, 4
push eax
call sym.postgres.exe_errfinish
add esp, 0xc
mov ecx, dword [0x833510]
cmp byte [ecx + 0xc4], 1
je 0x44d054
push 0
push str.ReadControlFile
push 0x1402
push str.src_backend_access_transamxlog.c
push 0x15
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44d054
push str.It_looks_like_you_need_to_recompile_or_initdb.
call sym.postgres.exe_errhint
add esp, 4
push eax
push str.The_database_cluster_was_initialized_without_HAVE_INT64_TIMESTAMP_but_the_server_was_compiled_with_HAVE_INT64_TIMESTAMP.
call sym.postgres.exe_errdetail
add esp, 4
push eax
push str.database_files_are_incompatible_with_server
call sym.postgres.exe_errmsg
add esp, 4
push eax
call sym.postgres.exe_errfinish
add esp, 0xc
mov edx, dword [0x833510]
cmp byte [edx + 0xc5], 1
je 0x44d0b4
push 0
push str.ReadControlFile
push 0x1412
push str.src_backend_access_transamxlog.c
push 0x15
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44d0b4
push str.It_looks_like_you_need_to_recompile_or_initdb.
call sym.postgres.exe_errhint
add esp, 4
push eax
push str.The_database_cluster_was_initialized_without_USE_FLOAT4_BYVAL_but_the_server_was_compiled_with_USE_FLOAT4_BYVAL.
call sym.postgres.exe_errdetail
add esp, 4
push eax
push str.database_files_are_incompatible_with_server
call sym.postgres.exe_errmsg
add esp, 4
push eax
call sym.postgres.exe_errfinish
add esp, 0xc
mov eax, dword [0x833510]
cmp byte [eax + 0xc6], 0
je 0x44d113
push 0
push str.ReadControlFile
push 0x1429
push str.src_backend_access_transamxlog.c
push 0x15
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x44d113
push str.It_looks_like_you_need_to_recompile_or_initdb.
call sym.postgres.exe_errhint
add esp, 4
push eax
push 0x6b2908
call sym.postgres.exe_errdetail
add esp, 4
push eax
push str.database_files_are_incompatible_with_server
call sym.postgres.exe_errmsg
add esp, 4
push eax
call sym.postgres.exe_errfinish
add esp, 0xc
ret