Function at 0x140004c40
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x20
mov rcx, qword [0x140011d70]
xor r12d, r12d
mov ebx, 7
mov ebp, r12d
mov qword [rsp + 0x50], r12
mov edi, r12d
lea rsi, str.dbname
test rcx, rcx
je 0x140004d82
lea rdx, [rsp + 0x50]
call sub.LIBPQ.dll_Ordinal_152
mov rbp, rax
test rax, rax
jne 0x140004cbe
call qword [sym.imp.MSVCR120.dll___iob_func]
mov r9, qword [rsp + 0x50]
mov r8, qword [0x1400123d8]
lea rcx, [rax + 0x60]
lea rdx, str._s:__s
call fcn.140007ec0
lea ecx, [rbx - 6]
call qword [sym.imp.MSVCR120.dll_exit]
int3
mov rdx, rax
cmp qword [rax], rdi
je 0x140004d01
mov rax, qword [rdx + 0x18]
test rax, rax
je 0x140004cf8
cmp byte [rax], dil
je 0x140004cf8
mov r8, qword [rdx]
mov rax, r12
nop word [rax + rax]
movzx ecx, byte [r8 + rax]
inc rax
cmp cl, byte [rsi + rax - 1]
jne 0x140004cf6
cmp rax, 7
jne 0x140004ce0
jmp 0x140004cf8
inc ebx
add rdx, 0x38
cmp qword [rdx], rdi
jne 0x140004cc6
lea eax, [rbx + 1]
movsxd rbx, eax
shl rbx, 3
mov rcx, rbx
call fcn.140006930
mov rcx, rbx
mov r15, rax
call fcn.140006930
mov rdx, rbp
mov r14, rax
cmp qword [rbp], rdi
je 0x140004d9c
mov r10, r15
mov r9, rax
sub r10, rax
mov rcx, qword [rdx + 0x18]
test rcx, rcx
je 0x140004d77
cmp byte [rcx], r12b
je 0x140004d77
mov r8, qword [rdx]
mov rcx, r12
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
inc rcx
cmp al, byte [rsi + rcx - 1]
jne 0x140004d66
cmp rcx, 7
jne 0x140004d50
jmp 0x140004d77
mov qword [r10 + r9], r8
mov rax, qword [rdx + 0x18]
inc edi
mov qword [r9], rax
add r9, 8
add rdx, 0x38
cmp qword [rdx], r12
jne 0x140004d33
jmp 0x140004d9c
mov ecx, Ordinal_65
call fcn.140006930
mov ecx, Ordinal_65
mov r15, rax
call fcn.140006930
mov r14, rax
movsxd rax, edi
lea rdx, str.replication
mov qword [rsp + 0x58], r13
lea rcx, [rax*8]
mov qword [rcx + r15], rsi
mov rax, qword [0x140011d90]
test rax, rax
cmove rax, rdx
inc edi
mov qword [rcx + r14], rax
movsxd rax, edi
lea rcx, [rax*8]
lea rax, str.database
mov qword [rcx + r15], rdx
cmp qword [0x140011d90], r12
lea rdx, str.true
cmove rax, rdx
inc edi
mov qword [rcx + r14], rax
movsxd rax, edi
inc edi
lea rcx, [rax*8]
lea rax, str.fallback_application_name
mov qword [rcx + r15], rax
mov rax, qword [0x1400123d8]
mov qword [rcx + r14], rax
cmp qword [0x140011d78], r12
je 0x140004e48
movsxd rax, edi
inc edi
lea rcx, [rax*8]
lea rax, str.host
mov qword [rcx + r15], rax
mov rax, qword [0x140011d78]
mov qword [rcx + r14], rax
cmp qword [0x140011d80], r12
je 0x140004e74
movsxd rax, edi
inc edi
lea rcx, [rax*8]
lea rax, str.user
mov qword [rcx + r15], rax
mov rax, qword [0x140011d80]
mov qword [rcx + r14], rax
cmp qword [0x140011d88], r12
je 0x140004ea0
movsxd rax, edi
inc edi
lea rcx, [rax*8]
lea rax, str.port
mov qword [rcx + r15], rax
mov rax, qword [0x140011d88]
mov qword [rcx + r14], rax
cmp dword [0x140011d98], 1
mov rax, qword [0x140011db0]
jne 0x140004eb9
test rax, rax
jne 0x140004eb9
mov bl, 1
jmp 0x140004ebb
xor bl, bl
movsxd rdi, edi
lea r13, str.password
test bl, bl
je 0x140004efc
test rax, rax
je 0x140004ed7
mov rcx, rax
call qword [sym.imp.MSVCR120.dll_free]
lea rcx, str.Password:
call qword [sym.imp.libintl.dll_libintl_gettext]
xor r8d, r8d
lea edx, [r8 + 0x64]
mov rcx, rax
call fcn.14000a130
xor bl, bl
mov qword [0x140011db0], rax
test rax, rax
je 0x140004f0b
mov qword [r15 + rdi*8], r13
mov qword [r14 + rdi*8], rax
jmp 0x140004f13
mov qword [r15 + rdi*8], r12
mov qword [r14 + rdi*8], r12
mov r8d, 1
mov rdx, r14
mov rcx, r15
call sub.LIBPQ.dll_Ordinal_156
mov rsi, rax
test rax, rax
je 0x140005171
mov rcx, rax
call sub.LIBPQ.dll_Ordinal_14
cmp eax, 1
jne 0x140004f68
mov rcx, rsi
call sub.LIBPQ.dll_Ordinal_140
test eax, eax
je 0x140004f68
cmp dword [0x140011d98], 0xffffffff
je 0x140004f68
mov rcx, rsi
call sub.LIBPQ.dll_Ordinal_4
mov rax, qword [0x140011db0]
mov bl, 1
jmp 0x140004ec5
test bl, bl
je 0x140004f78
mov rax, qword [0x140011db0]
jmp 0x140004ec5
mov rcx, rsi
call sub.LIBPQ.dll_Ordinal_14
test eax, eax
je 0x140005000
mov rcx, rsi
call sub.LIBPQ.dll_Ordinal_15
lea rcx, str._s:__s
mov rdi, rax
call qword [sym.imp.libintl.dll_libintl_gettext]
mov rbx, rax
call qword [sym.imp.MSVCR120.dll___iob_func]
mov r8, qword [0x1400123d8]
lea rcx, [rax + 0x60]
mov r9, rdi
mov rdx, rbx
call fcn.140007ec0
mov rcx, rsi
call sub.LIBPQ.dll_Ordinal_4
mov rcx, r14
call qword [sym.imp.MSVCR120.dll_free]
mov rcx, r15
call qword [sym.imp.MSVCR120.dll_free]
test rbp, rbp
je 0x140004fe2
mov rcx, rbp
call sub.LIBPQ.dll_Ordinal_78
xor eax, eax
mov r13, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
add rsp, 0x20
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
mov rcx, r14
call qword [sym.imp.MSVCR120.dll_free]
mov rcx, r15
call qword [sym.imp.MSVCR120.dll_free]
test rbp, rbp
je 0x14000501f
mov rcx, rbp
call sub.LIBPQ.dll_Ordinal_78
cmp qword [0x140011d90], r12
je 0x1400050b5
mov rcx, rsi
call sub.LIBPQ.dll_Ordinal_113
cmp eax, 0x186a0
jl 0x1400050b5
lea rdx, str.SELECT_pg_catalog.set_config_search_path____false_
mov rcx, rsi
call sub.LIBPQ.dll_Ordinal_21
mov rcx, rax
mov rbp, rax
call sub.LIBPQ.dll_Ordinal_33
cmp eax, 2
je 0x1400050ad
mov rcx, rsi
call sub.LIBPQ.dll_Ordinal_15
lea rcx, str._s:_could_not_clear_search_path:__s
mov rdi, rax
call qword [sym.imp.libintl.dll_libintl_gettext]
mov rbx, rax
call qword [sym.imp.MSVCR120.dll___iob_func]
mov r8, qword [0x1400123d8]
lea rcx, [rax + 0x60]
mov r9, rdi
mov rdx, rbx
call fcn.140007ec0
mov rcx, rbp
call sub.LIBPQ.dll_Ordinal_48
mov rcx, rsi
call sub.LIBPQ.dll_Ordinal_4
mov ecx, 1
call qword [sym.imp.MSVCR120.dll_exit]
int3
mov rcx, rbp
call sub.LIBPQ.dll_Ordinal_48
lea rdx, str.integer_datetimes
mov rcx, rsi
call sub.LIBPQ.dll_Ordinal_97
mov rcx, rax
test rax, rax
jne 0x140005109
lea rcx, str._s:_could_not_determine_server_setting_for_integer_datetimes_n
call qword [sym.imp.libintl.dll_libintl_gettext]
mov rbx, rax
call qword [sym.imp.MSVCR120.dll___iob_func]
mov r8, qword [0x1400123d8]
lea rcx, [rax + 0x60]
mov rdx, rbx
call fcn.140007ec0
mov rcx, rsi
call sub.LIBPQ.dll_Ordinal_4
mov ecx, 1
call qword [sym.imp.MSVCR120.dll_exit]
int3
movzx eax, byte [rax]
cmp al, byte [0x14000dfa0]
jne 0x140005134
movzx eax, byte [rcx + 1]
cmp al, byte [0x14000dfa1]
jne 0x140005134
movzx eax, byte [rcx + 2]
cmp al, byte [0x14000dfa2]
jne 0x140005134
mov rax, rsi
jmp 0x140004fe4
lea rcx, str._s:_integer_datetimes_compile_flag_does_not_match_server_n
call qword [sym.imp.libintl.dll_libintl_gettext]
mov rbx, rax
call qword [sym.imp.MSVCR120.dll___iob_func]
mov r8, qword [0x1400123d8]
lea rcx, [rax + 0x60]
mov rdx, rbx
call fcn.140007ec0
mov rcx, rsi
call sub.LIBPQ.dll_Ordinal_4
mov ecx, 1
call qword [sym.imp.MSVCR120.dll_exit]
int3
lea rcx, str._s:_could_not_connect_to_server_n
call qword [sym.imp.libintl.dll_libintl_gettext]
mov rbx, rax
call qword [sym.imp.MSVCR120.dll___iob_func]
mov r8, qword [0x1400123d8]
lea rcx, [rax + 0x60]
mov rdx, rbx
call fcn.140007ec0
mov ecx, 1
call qword [sym.imp.MSVCR120.dll_exit]
int3