Function at 0x598c50
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x418
mov eax, dword [0x82aea4]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, dword [sym.postgres.exe_WalRcv]
push edi
push 0
push 1
lea edi, [esi + 0x448]
push edi
call dword [sym.imp.KERNEL32.dll_InterlockedCompareExchange]
test eax, eax
je 0x598c94
push 0xbf
push str.src_backend_replicationwalreceiver.c
push edi
call sym.postgres.exe_s_lock
add esp, 0xc
mov eax, dword [esi + 4]
sub eax, 0
je 0x598cab
sub eax, 2
je 0x598fab
dec eax
jne 0x598cbb
mov dword [esi + 4], eax
push 1
mov dword [edi], 0
call sym.postgres.exe_proc_exit
add esp, 4
mov eax, dword [sym.postgres.exe_MyProcPid]
push 0x400
lea ecx, [esi + 0x48]
push ecx
lea edx, [ebp - 0x404]
mov dword [esi], eax
mov dword [esi + 4], 2
push edx
call sym.postgres.exe_strlcpy
mov ebx, dword [esi + 0x10]
mov eax, dword [esi + 0x14]
mov dword [ebp - 0x414], eax
call sym.postgres.exe_GetCurrentTimestamp
mov dword [esi + 0x40], eax
mov dword [esi + 0x44], edx
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], edx
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], edx
xor esi, esi
push esi
push 0x598800
mov dword [edi], esi
call sym.postgres.exe_on_shmem_exit
push 0x5982d0
push 1
call sym.postgres.exe_pqsignal
push 1
push 2
call sym.postgres.exe_pqsignal
push 0x5982e0
push 0xf
call sym.postgres.exe_pqsignal
push 0x598320
push 3
call sym.postgres.exe_pqsignal
push 1
push 0xe
call sym.postgres.exe_pqsignal
push 1
push 0xd
call sym.postgres.exe_pqsignal
add esp, 0x44
push 1
push 0x1e
call sym.postgres.exe_pqsignal
push 1
push 0x1f
call sym.postgres.exe_pqsignal
push esi
push 0x14
call sym.postgres.exe_pqsignal
push esi
push 0x15
call sym.postgres.exe_pqsignal
push esi
push 0x16
call sym.postgres.exe_pqsignal
push esi
push 0x13
call sym.postgres.exe_pqsignal
push esi
push 0x1c
call sym.postgres.exe_pqsignal
and dword [0x86928c], 0xfffffffb
push esi
push str.libpqwalreceiver
call sym.postgres.exe_load_file
add esp, 0x40
cmp dword [sym.postgres.exe_walrcv_connect], esi
je 0x598dc1
cmp dword [sym.postgres.exe_walrcv_receive], esi
je 0x598dc1
cmp dword [sym.postgres.exe_walrcv_send], esi
je 0x598dc1
cmp dword [sym.postgres.exe_walrcv_disconnect], esi
jne 0x598de4
push 0x737dd0
push 0x109
push str.src_backend_replicationwalreceiver.c
call sym.postgres.exe_elog_start
push str.libpqwalreceiver_didnt_initialize_correctly
push 0x14
call sym.postgres.exe_elog_finish
add esp, 0x14
push str.Wal_Receiver
push esi
call sym.postgres.exe_ResourceOwnerCreate
mov ecx, dword [0x869288]
push ecx
mov dword [sym.postgres.exe_CurrentResourceOwner], eax
call sym.postgres.exe_pqsigsetmask
mov byte [0x836e98], 1
call fcn.00598230
mov edx, dword [ebp - 0x414]
push edx
lea eax, [ebp - 0x404]
push ebx
push eax
call dword [sym.postgres.exe_walrcv_connect]
mov byte [0x836e98], 0
call fcn.00598230
push esi
call sym.postgres.exe_GetXLogReplayRecPtr
mov dword [0x836e68], eax
mov dword [0x836e60], eax
xor eax, eax
mov dword [0x836e6c], edx
mov dword [0x836e64], edx
add esp, 0x1c
mov ecx, 0x836e40
mov dword [0x836e40], eax
mov dword [0x836e44], eax
mov dword [0x836e48], eax
mov dword [0x836e4c], eax
mov dword [0x836e50], eax
mov dword [0x836e54], eax
mov dword [0x836e58], eax
mov dword [0x836e5c], eax
mov edx, 0x836e30
mov dword [0x836e30], eax
mov dword [0x836e34], eax
mov dword [0x836e38], eax
mov dword [0x836e3c], eax
call sym.postgres.exe_PostmasterIsAlive
test al, al
je 0x598fea
call sym.postgres.exe_RecoveryInProgress
test al, al
jne 0x598edb
push esi
push 0x737dd0
push 0x132
push str.src_backend_replicationwalreceiver.c
push 0x15
call sym.postgres.exe_errstart
add esp, 0x14
test al, al
je 0x598edb
push str.cannot_continue_WAL_streaming__recovery_has_already_ended
call sym.postgres.exe_errmsg
push eax
call sym.postgres.exe_errfinish
add esp, 8
call fcn.00598230
mov eax, dword [0x836e90]
test eax, eax
je 0x598ef9
push 2
mov dword [0x836e90], esi
call sym.postgres.exe_ProcessConfigFile
add esp, 4
lea ecx, [ebp - 0x410]
push ecx
lea edx, [ebp - 0x40c]
push edx
lea eax, [ebp - 0x405]
push eax
push 0x64
call dword [sym.postgres.exe_walrcv_receive]
add esp, 0x10
test al, al
je 0x598fd3
mov ecx, dword [ebp - 0x410]
mov eax, dword [ebp - 0x40c]
push ecx
mov cl, byte [ebp - 0x405]
call fcn.00598b00
lea edx, [ebp - 0x410]
push edx
lea eax, [ebp - 0x40c]
push eax
lea ecx, [ebp - 0x405]
push ecx
push esi
call dword [sym.postgres.exe_walrcv_receive]
add esp, 0x14
test al, al
je 0x598f9b
lea esp, [esp]
mov edx, dword [ebp - 0x410]
mov eax, dword [ebp - 0x40c]
mov cl, byte [ebp - 0x405]
push edx
call fcn.00598b00
lea eax, [ebp - 0x410]
push eax
lea ecx, [ebp - 0x40c]
push ecx
lea edx, [ebp - 0x405]
push edx
push esi
call dword [sym.postgres.exe_walrcv_receive]
add esp, 0x14
test al, al
jne 0x598f60
call fcn.00598340
push esi
call fcn.005986b0
add esp, 4
jmp 0x598fdd
push 0x737dd0
push 0xd3
push str.src_backend_replicationwalreceiver.c
call sym.postgres.exe_elog_start
push str.walreceiver_still_running_according_to_shared_memory_state
push 0x16
call sym.postgres.exe_elog_finish
add esp, 0x14
jmp 0x598cbb
call fcn.00598340
call fcn.00598490
call sym.postgres.exe_PostmasterIsAlive
test al, al
jne 0x598ea1
push 1
call dword [sym.imp.MSVCR100.dll_exit]
int3