Didn't your sysmsg give you the line#? If you're using an older OS you'll have to use the OFFSET addr in sysmsg.
Here's one way:
If you haven't used LIST as a compiler option, add LIST,NOOFF to the option list. Recompile pgm. Assuming there were no pgm changes since the abend, use the OFFSET by searching for it in the compiler listing:
do a "f MVC" then do a find using the OFFSET addr. This will point you to the assembler instruction that caused the 0C7. Then scan back up the page to find the offending verb. The COBOL stmt# will be shown to the left.
If you used OFFSET as a compiler option you use a similar approach to that above (no need to recompile). Since OFFSET doesn't list the assem instrs and their addresses you must find the closest COBOL stmt address that is less than (or equal to) the OFFSET addr in your sysmsg. Use the COBOL stmt line# to the left to find the offending COBOL stmt.
The advantage to the 1st approach is that when using COBOL stmts that execute compound arithmetic operations you can find the part of the compound stmt that is causing the problem. But you need basic assembler skills to understand the meaning of the instructions.