Commit Graph

25 Commits

Author SHA1 Message Date
Rairii
54404a1fa6 asm: fix the case for non-exported function that returns a value 2025-04-11 13:04:58 +01:00
Rairii
301c583ce2 asm: fix referencing arguments where function is not exported and argument list may be unknown 2025-04-11 12:59:29 +01:00
Rairii
2dca25d95b lib: fix creating an argument variable where function is not exported therefore arguments are unknown 2025-04-11 12:58:44 +01:00
Rairii
7202da81ea asm: fix culture issues by setting current thread culture when inside the assembler 2025-04-11 12:29:37 +01:00
Rairii
0f6e7a5bcb lib: use single static cultureinfo instead of allocating every time 2025-04-11 12:28:50 +01:00
Rairii
056cd7a9a1 tests: add test for extended floating point variables 2025-04-11 12:05:47 +01:00
Rairii
1767aeec9f tests: fix compilation with vs2022 2025-04-11 11:59:42 +01:00
Rairii
82ddafd61e ifpslib: fix extended float for certain regions
ExtF80 always uses '.' for number decimal separator, ensure that english culture info is used to match it.
2025-04-06 19:47:12 +01:00
zc
adc9a2dde1 cc: add timer for each stage (via compile time config)
cc: optimise lexer for speed (~10x speed improvement)
cc: implement OperatorParser class as per TODO in original codebase (seems refactoring chains of parser-combinators leads to at least SOME speed improvement)
2023-07-11 17:57:57 +01:00
zc
b20d5d88b5 libifps: allow Instruction.Create(OpCode, Operand, Operand, Operand) to be used for InlineCmpValueType too
libasm: allow generic operand to be used for InlineCmpValueType op2, as well as type
tests: refactor and fix
tests: add test for InlineCmpValueType on type and variable
2023-03-31 13:19:31 +01:00
zc
8aea82c678 libifps: fix loading and saving op2 for InlineCmpValueType (is instruction)
libifps: document is instruction better
libifps: document InlineCmpValueType better
2023-03-31 12:52:45 +01:00
zc
6feeac38f7 Revert "libifps: allow reading invalid operands"
This reverts commit 58e78597e7.
2023-03-31 12:36:20 +01:00
zc
58e78597e7 libifps: allow reading invalid operands
this should allow disassembling some malware samples (etc)
2023-03-31 12:27:42 +01:00
zc
9a8df96f7c csproj: fix dependency version collision 2023-03-28 18:38:20 +01:00
zc
ee00258ef3 examples: add C examples 2023-03-28 17:45:20 +01:00
zc
e16c00799d ifpscc: initial commit
libifpscc: initial commit
readme: document ifpscc/libifpscc
license: add credits for ifpscc/libifpscc (derived from code also MIT licensed)
libifps: make additional fields/types public for libifpscc
libifps: fix field documentation for some opcodes
libifps: fix loading functions that are not exported
libifps: allow saving a nonexistant primitive type if the same primitive type was added already
libifps: fix parsing Extended constants
libifps: fix ushort/short being mapped to the wrong types in one table
csproj: set Prefer32Bit=false for release builds
2023-03-28 17:24:19 +01:00
zc
b85cd7770a lib: allow record element names to be specified
asm: allow record element names to be specified
asm: fix some errors being thrown by the wrong parser element
asm: add light obfuscation, when enabled all exported functions will be renamed to "A"
2022-12-09 16:01:32 +00:00
zc
f99cb21c5d asm: fix inverted conditional when assembling by-ref arguments 2022-12-09 15:45:53 +00:00
zc
a9e627314a lib: dll delayload/loadwithalteredsearchpath flags were added in v23, add version check for this
tests: add test for v22 script with dll imports. please note bytecode used here came from a malware sample!
2022-08-18 18:38:45 +01:00
zc
8108a88464 readme: Document import as a synonym for export. 2022-08-08 16:53:22 +01:00
zc
b32075f622 license: Fixed license and added licenses for used dependencies 2022-08-07 16:02:21 +01:00
zc
0ea1a2269f ifpsasm: Add some usage and confirmation text. 2022-08-07 15:51:58 +01:00
zc
bebf897e31 ifpsdasm: Add some usage and confirmation text. Use only a single argument, not all arguments. 2022-08-07 15:48:50 +01:00
zc
9b71ef23ca Add project files. 2022-08-07 15:42:41 +01:00
zc
0b000e586f Add .gitattributes. 2022-08-07 15:42:37 +01:00