[Samsung Galaxy J3 (2016) Questions & Answers] lolden:
I did it on my own. I will now describe the process of how I did it.

My power button was dirty as hell so it was useless. I took out the battery and then I poured just a little bit of alcohol over power button. After that I kept pressing and fiddling with power button (with battery still out of course). This cleaned the grime and dirt under the button. Then I used a hair dryer and evaporated all the remaining isopropyl alcohol.

Next step, I already had ADB installed. There is a great guide over here for this particular model on this very forum but it does not let me post the link for some reason, it is easy to find, really.

So I assume by this point you have Odin, ADB installed and TWRP recovery downloaded like that link said that I posted.

I tried to flash TWRP again. Fire up Odin, click AP, find TWRP, set the phone to download mode by holding home+power+volume down. When there is something on screen press volume up which will bring you to download mode. Then press Start in Odin. Note, I had my bootloader unlocked previously so be sure that yours is unlocked too.

Now that I flashed a completely new TWRP I now turned off my phone by pulling battery out. Then I pressed home+volume down+power button for like 2 seconds then I would let go the power button and I would keep home and volume down pressed for like next 3-4 seconds.

I plugged in USB cable and waited for Windows to play that "connected" sound. At first times when I would connect it, it wouldn't register anything. That meant I didn't boot it at all. Then I tried it two-three more times and I finally booted the thing in recovery.

While in recovery mode I connected the phone to PC and then I ran ADB. I entered "adb devices" and instead of "unauthorized" it said "recovery". Ok, now we are making some progress :)

While I was in recovery I first copied this code into ADB.

Adb shell

echo "persist.service.adb.enable=1" >>/system/build.prop

echo "persist.service.debuggable=1" >>/system/build.prop

echo "persist.sys.usb.config=mass_storage,adb" >>/system/build.prop"

reboot﻿

You type in ADB shell first and then copy all three lines by simply right clicking and pressing copy and then you right click into ADB window and pressing right click and then paste and ENTER. I am not sure if it did something but it was worth a try. It seemed to be stuck after that but better to do it.

While still in recovery mode I did one more thing. I found "adbkey.pub" file. It is located in C:\Users\USERNAME\.android copy it from there and paste it into directory where your ADB is. Then run ADB again and be sure to type first "adb devices" to check if your phone is still in recovery mode. Then type this "adb push adbkey.pub /data/misc/adb/adb_keys" without qutation marks.

This placed an RSA key into the phone that authorized my phone and PC to communicate. As a result when you run something on the phone from PC, that popup to accept a key won't appear anymore, you can do now with your phone as you wish.

They I typed in "adb reboot" which booted my phone normally. I tried running scrcpy program first (last link in my post) and it displayed my phone screen. You can now use mouse to touch your phone screen and use right click to go back and wake up your phone when it turns off the screen and you can use scroll like you would your finger. From this point on it was very simple to take what I needed.

I hope this helps somebody.