my english is very bad,please.
in x64 mode,i only added an import ,did not merging pe.
old:
sub rsp,28
mov rcx,qword ptr ds:[<&?cout@std@@3v?$basic_ostream@DU?$char_traits@D@std@@@1@A>] //mov rcx, qword ptr ds:[0x000000013F8E20B0]
call <x64.std::operator<<<std::char_traits >>
xor eax,eax
add rsp,28
ret
new
sub rsp,28
mov rcx,qword ptr ds:[13F8620B0]
call zzz_x64.13F861020
xor eax,eax
add rsp,28
ret
all call [import] is error!
In x86 mode, these are all relocated
In x64 mode, ff 15 is all [eip - import - 6]
So I don't know how to deal with this.
old import:
000000013F8E2000 0000000077B620C0 kernel32.GetModuleHandleW
000000013F8E2008 0000000077B8BAB0 kernel32.RtlLookupFunctionEntry
000000013F8E2010 0000000077B8BA50 kernel32.RtlVirtualUnwind
000000013F8E2018 0000000077BDBAB0 kernel32.UnhandledExceptionFilter
000000013F8E2020 0000000077B59020 kernel32.SetUnhandledExceptionFilter
000000013F8E2028 0000000077B55190 kernel32.GetCurrentProcess
000000013F8E2030 0000000077B8C140 kernel32.TerminateProcess
000000013F8E2038 0000000077B8D0D0 kernel32.IsProcessorFeaturePresent
000000013F8E2040 0000000077B559A0 kernel32.QueryPerformanceCounter
new:
000000013F8662D8 0000000077B620C0 kernel32.GetModuleHandleW
000000013F8662E0 0000000077B8BAB0 kernel32.RtlLookupFunctionEntry
000000013F8662E8 0000000077B8BA50 kernel32.RtlVirtualUnwind
000000013F8662F0 0000000077BDBAB0 kernel32.UnhandledExceptionFilter
000000013F8662F8 0000000077B59020 kernel32.SetUnhandledExceptionFilter
000000013F866300 0000000077B55190 kernel32.GetCurrentProcess
000000013F866308 0000000077B8C140 kernel32.TerminateProcess