Hey everyone,

I'm sifting through the blackops release and I've reached a hurdle. In COD4:MW there was a function used by the game to toggle the full console (with the output screen): Con_ToggleConsoleOutput().

This was triggered using shift + ~.

It seems that almost all functions in black ops were obfuscated. Stuff like BG_WeaponFireRecoil(...) in COD4, is now sub_d870a. All functions are sub_pointer. So I've been finding most functions by finding a constant or set of constants I know are found in only that function, for example "CG_EntityEvent:%s\n" would bring me here:
Code:
00297a5d         mov        dword [ss:esp+0x4], 0x63c4f4                        ; "CG_EntityEvent:%s\\n", argument #2 for method sub_40c00b
00297a65         mov        dword [ss:esp], 0x15                                ; argument #1 for method sub_40c00b
00297a6c         call       sub_40c00b
With sub_40c00b being a function I could be looking for. Does anybody know how I can find the offset of the function I can use to toggle the full console output?

In COD4, Con_ToggleConsoleOutput() doesn't have any strings within it:
Code:
             __Z23Con_ToggleConsoleOutputv:        // Con_ToggleConsoleOutput()
000a4fc0         push       ebp                                                 ; XREF=__Z11CL_KeyEventiiij+712
000a4fc1         mov        ebp, esp
000a4fc3         cmp        byte [ds:0xe4], 0x0                                 ; 0x4577e4
000a4fca         sete       byte [ds:0xe4]                                      ; 0x4577e4
000a4fd1         leave      
000a4fd2         ret        
000a4fd3         nop        word [ds:eax+eax]
000a4fd9         nop        dword [ds:eax]
And the cross-referenced CL_KeyEvent function here is absolutely massive, making it difficult to pin down the console toggle call in the obfuscated version of it.

Thanks for any tips you guys may have!

- - - Updated - - -

Sure enough, shortly after I post this I find the function....

Sorry mods, you can close this thread.