.\lib\rtl\largeint.c There's a sutraction performed in your implementation. But actually it's a logical negation (asm -> NEG; C -> ~) in this function of the low and high part: RtlLargeIntegerNegate() Oliver PS: I have no CVS access, so anyone here having it should fix this.