APIを変えなくてはいけないのは、GetWindowLongの代わりにGetWindowLongPtrを、SetWindowLongの代わりにSetWindowLongPtrを使い、GWL_WNDPROCなどはGWLP_WNDPROCに置き換えるというあたりでしょうか。
後はひたすら警告をつぶしていきます。ほとんどの警告がsize_tが32bitであることを前提に書いている部分に関してでした。特にポインタの引き算がsize_tで64bitになるくせに、バッファの長さをDWORDでとるAPIなどは扱いに困ります。本来はバッファの長さが0xffffffffを超えるかどうかでループを回すなりして処理をしなくてはいけないのでしょうが、そんなに大きなサイズのバッファを取ることもないので、とりあえずキャストしてしまうことにします。その他にも、UI周りのAPIはいろいろなサイズを32bitで取るので、内部的にsize_tで管理しているデータをUI周りのAPIに渡すときにも対処が必要です。
というわけで、そもそもsize_tであるべきところがunsigned intになっていたようなところはsize_tで扱うように直し、後は必要に応じてキャストするようにしました。これで一応x64版ができたようです。
でも、動かすPCがありません^^;。試してみたい方はツッコミを。