// Trace info for the Excel 2007 bug 850*77.1 = "100000" instead of 65535

// data table for ESI
.text:301101B0  A0 64 38 30 A0 64 38 30  13 68 38 30 BF 66 38 30 
.text:301101C0  BF 66 38 30 2B 67 38 30  28 67 38 30 A0 64 38 30 
.text:301101D0  A0 64 38 30 A0 64 38 30  A0 64 38 30 A0 64 38 30 
.text:301101E0  5B 73 38 30 07 66 38 30  02 77 38 30 A0 64 38 30 
.text:301101F0  A0 64 38 30 A0 64 38 30  A0 64 38 30 E6 69 38 30 
.text:30110200  E3 69 38 30 F2 65 38 30  0F 77 38 30 A0 64 38 30 
.text:30110210  A0 64 38 30 A0 64 38 30  A0 64 38 30 A0 64 38 30 
.text:30110220  A0 64 38 30 A0 64 38 30  A0 64 38 30 A0 64 38 30 
.text:30110230  A0 64 38 30 A0 64 38 30  13 68 38 30 33 67 38 30 
.text:30110240  33 67 38 30 2B 67 38 30  28 67 38 30 A0 64 38 30 
.text:30110250  A0 64 38 30 A0 64 38 30  A0 64 38 30 A0 64 38 30 
.text:30110260  5B 73 38 30 07 66 38 30  02 77 38 30 A0 64 38 30 
.text:30110270  A0 64 38 30 A0 64 38 30  A0 64 38 30 E6 69 38 30 
.text:30110280  E3 69 38 30 F2 65 38 30  0F 77 38 30 A0 64 38 30 
.text:30110290  A0 64 38 30 A0 64 38 30  A0 64 38 30 A0 64 38 30 
.text:301102A0  A0 64 38 30 A0 64 38 30  A0 64 38 30 A0 64 38 30 
.text:301102B0  A0 64 38 30 A0 64 38 30  13 68 38 30 33 67 38 30 
.text:301102C0  33 67 38 30 2B 67 38 30  28 67 38 30 7F 13 7F 1F 

.text:301102D0  01 00 00 00 0A 00 00 00  64 00 00 00 E8 03 00 00   // 
.text:301102E0  10 27 00 00 FF FF 00 00  53 8A 5C 24 08 F6 C3 02   // these two lines are the relevant table for 850*77.1+1

.text:301102F0  56 8B F1 74 24 57 68 A0  49 DF 30 8D 7E FC FF 37 
.text:30110300  6A 0C 56 E8 04 45 CE 00  F6 C3 01 74 07 57 E8 1D  
.text:30110310  B2 F0 FF 59 8B C7 5F EB  13 E8 82 46 CE 00 F6 C3 
.text:30110320  01 74 07 56 E8 07 B2 F0  FF 59 8B C6 5E 5B C2 04  
.text:30110330  00 90 90 90 3C 03 11 30  E8 02 11 30 00 00 00 00 
.text:30110340  00 00 00 00 00 00 00 00  28 7B E5 30 0C 3F 10 30 
.text:30110350  33 C0 E9 79 B5 F1 FF 33  F6 E9 31 B4 F1 FF 33 F6 
.text:30110360  E9 BB B7 F1 FF 49 0F 85  52 B2 F1 FF E9 AF B7 F1 


// Divisor table at 301102D0[] = {0xFFFF, 0x2701, 0x3E8, 0x64, 0x10, 0x1}
// in decimal       301102D0[] = { 65535,  10000,  1000,  100,   10,   1}
.text:301102D0  01 00 00 00 0A 00 00 00  64 00 00 00 E8 03 00 00   // 
.text:301102E0  10 27 00 00 FF FF 00 00  53 8A 5C 24 08 F6 C3 02   // these two lines are the relevant table for 850*77.1+1

// table for constants added into value?!
.text:300663B0  00 B9 15 00 00 00 2B CB  8B D8 D3 E8 F6 D9 0F A5
.text:300663C0  D3 D3 E2 8B CA 83 EE 04  3B 86 D0 02 11 30 73 07
.text:300663D0  66 FF 4F 20 83 EE 04 85  C9 0F 84 C4 00 00 00 03
.text:300663E0  8E F7 63 06 30 83 D3 00  0F 82 89 80 0D 00 E9 B0
.text:300663F0  00 00 00 07 24 00 00 49  68 01 00 E1 12 0E 00 CC 
.text:30066400  BC 8C 00 F8 5F 7F 05 B3  BF F9 36 55 8B EC 51 51 // code uses 0x36F9BFB3 = 922 337 203
.text:30066410  56 33 F6 39 75 08 57 0F  84 F1 0A 35 00 83 7D 08
.text:30066420  04 0F 85 A1 09 35 00 56  E8 DE F6 FF FF 85 C0 0F
.text:30066430  85 50 6C 18 00 83 3D 80  71 E5 30 02 0F 84 99 0A
.text:30066440  35 00 39 35 80 B6 E7 30  0F 85 28 6C 18 00 39 35
.text:30066450  5C B6 E7 30 0F 85 2B 6C  18 00 8B 0D 8C D6 EF 30
.text:30066460  A0 56 D6 EF 30 33 FF D1  E9 47 23 CF F6 D8 1B C0
.text:30066470  85 C1 0F 85 0D 6C 18 00  FF 35 C8 CB EF 30 6A 06
.text:30066480  58 E8 C5 21 FD FF 85 C0  0F 85 F7 6B 18 00 E8 9F

// Last byte of floating value causes add from table to ECX, the offending values are exactly those that overflow.
// Question - why add this constant? Can a change fix anything?
0xFF -> 0xF8000000 + 0x36F9BFB3 = 0x12EF9BFB3
0xFE -> 0xF0000000 + 0x36F9BFB3 = 0x126F9BFB3
0xFD -> 0xE8000000 + 0x36F9BFB3 = 0x11EF9BFB3
0xFC ->	0xE0000000 + 0x36F9BFB3 = 0x116F9BFB3
0xFB -> 0xD8000000 + 0x36F9BFB3 = 0x10EF9BFB3
0xFA -> 0xD0000000 + 0x36F9BFB3 = 0x106F9BFB3
0xF9 ->	0xC8000000 + 0x36F9BFB3 = 0x0FEF9BFB3 // NO CARRY!
0xF8 -> 0xC0000000 + 0x36F9BFB3 = 0x0F6F9BFB3 // NO CARRY!


TempFormat definition
.text:30066344 ; FUNCTION CHUNK AT .text:30066637 SIZE 00000032 BYTES
.text:30066344 ; FUNCTION CHUNK AT .text:30136796 SIZE 0000000B BYTES
.text:30066344 ; FUNCTION CHUNK AT .text:3013B3A6 SIZE 00000019 BYTES
.text:30066344 ; FUNCTION CHUNK AT .text:3013C232 SIZE 0000007D BYTES
.text:30066344 ; FUNCTION CHUNK AT .text:3013CCE3 SIZE 0000000B BYTES
.text:30066344 ; FUNCTION CHUNK AT .text:3013E477 SIZE 0000001F BYTES
.text:30066344 ; FUNCTION CHUNK AT .text:30150A6E SIZE 0000009E BYTES
.text:30066344 ; FUNCTION CHUNK AT .text:301ED076 SIZE 00000016 BYTES
.text:30066344 ; FUNCTION CHUNK AT .text:30218285 SIZE 00000008 BYTES
.text:30066344 ; FUNCTION CHUNK AT .text:30389A54 SIZE 0000004C BYTES
.text:30066344 ; FUNCTION CHUNK AT .text:303B6DC8 SIZE 00000156 BYTES
.text:30066344

// disassembly near the start of the offending function
.text:30066340  5D C2 08 00 C7 47 1E 00  00 00 00 8B 46 04 8B D0
.text:30066350  25 00 00 F0 7F 0F 84 29  E8 0C 00 C1 E8 14 2D FE
.text:30066360  03 00 00 8B D8 69 C0 21  9A 00 00 D1 F8 81 E2 00


// Trace of Excel 2007 misformatting 850*77.1+1 = "100001"
// We are formatting a 64-bit IEEE 754 value V=2^e*(1.M)
// The 11-bit exponent E in the bit representation is e+1023.
// the 52 bit mantissa is the fractional part, with an implied
// 1 bit, hence written 1.M
//
// The hex representation of the value V is is 0x40EFFFFF FFFFFFFF

// Initial registers
ST0= 1.0 ST1= 1.0 ST2= 1.0000001192092895508 ST3= 5.9604644775390625e-8 
ST4= 9.9999994039535522461e-1 ST5= 1.0 ST6= 0.0 ST7= 1.0 
CTRL=137F CS=1B DS=23 ES=23 FS=3B GS=0 SS=23 
EAX=FFFE EBX=FFED061E ECX=F EDX=12F4C0 ESI=12F548 EDI=12F9E2 EBP=12F4C4 ESP=12F49C EFL=202  

// EDI - points to some output structure, EDI itself points to an output text buffer.
// ESI - points to the hex value for the float.
Format              mov     dword ptr [edi+1Eh], 0                                            // result value - assume 0
Format+7            mov     eax, [esi+4]                         EAX=40EFFFFF                 // load high part of double 850*77.1+1
Format+A            mov     edx, eax                             EDX=40EFFFFF                 // store a copy
Format+C            and     eax, 7FF00000h                       EAX=40E00000 PF=1            // mask out to get exponent E only
Format+11           jz      nullsub_33                                                        // if 0 exponent, V = 0 (or denormalized).
                                                                                              // so bail out, string then '0'.
Format+17           shr     eax, 14h                             EAX=40E PF=0 AF=1            // move E to low word
Format+1A           sub     eax, 3FEh                            EAX=10 AF=0                  // subtract 1022, which leaves e+1, e the true exponent
Format+1F           mov     ebx, eax                             EBX=10                       // save this - 2^EBX is larger than the float value V
Format+21           imul    eax, 9A21h                           EAX=9A210                    // x92A1 = ceil(2^17 * log2) - computes base 10 
                                                                                              // exponent in fixed point
Format+27           sar     eax, 1                               EAX=4D108 AF=1               // now EAX holds signed 16.16 fixed point base 10 exponent
Format+29           and     edx, 80000000h                       EDX=0 PF=1 AF=0 ZF=1         // get sign into EDX
Format+2F           add     eax, 40010000h                       EAX=4005D108 PF=0 ZF=0       // 
Format+34           and     eax, FFFF0000h                       EAX=40050000 PF=1            //
Format+39           or      edx, eax                             EDX=40050000                 // replace sign
Format+3B           mov     [edi+1Eh], edx                                                    // save value (tells where decimal point goes?)
Format+3E           shr     eax, 10h                             EAX=4005 AF=1                // 
Format+41           sub     eax, 4000h                           EAX=5 AF=0                   // EAX = # decimal digits before decimal - value to determine table location later
Format+46           or      ebx, ebx                             PF=0                         // see if exponent < 0 (V < 1) 
Format+48           jl      loc_3013C232                                                      // if so, format using different routine
Format+4E           cmp     ebx, 10h                             PF=1 ZF=1                    // number of bits is at most 10, so go to faster 
                                                                                              // routine (we can use 16 bit math?)
Format+51           jle     short tag1                                                        // if in this cutoff range, format special,
                                                                                              // else V outside range [0,65536)

Format:tag1         push    edi                                  ESP=12F498                   // save these (why?)
Format+59           push    ecx                                  ESP=12F494                   
Format+5A           mov     edx, [esi]                           EDX=FFFFFFFF                 // get low part of the double value
Format+5C           mov     esi, [esi+4]                         ESI=40EFFFFF                 // and the high part
Format+5F           xchg    eax, esi                             EAX=40EFFFFF ESI=5           // EAX = high value, ESI = nunmber of decimal digits, used for table index
Format+60           shl     esi, 2                               ESI=14 AF=1 ZF=0             // 2 bytes per divisor table entry
Format+63           and     eax, 0FFFFFh                         EAX=FFFFF AF=0               // get mantissa high bits
Format+68           or      eax, 100000h                         EAX=1FFFFF                   // prepend 1 bit since normalized and not stored
Format+6D           mov     ecx, 15h                             ECX=15                       // shift up to 15 bits
Format+72           sub     ecx, ebx                             ECX=5                        // final shift value
Format+74           mov     ebx, eax                             EBX=1FFFFF                   // make a copy for later shift
Format+76           shr     eax, cl                              EAX=FFFF CF=1 AF=1           // shift down the bits
Format+78           neg     cl                                   ECX=FB PF=0 SF=1             // prepare to shift other way?
Format+7A           shld    ebx, edx, cl                         EBX=FFFFFFFF PF=1            // get some low mantissa bits from edx
Format+7D           shl     edx, cl                              EDX=F8000000                 // shift these up. Note 65536-2^(-25,-36,-37) differs here: 0xC8000000
Format+7F           mov     ecx, edx                             ECX=F8000000                 // and place here. Mantissa in EAX:EBX:ECX
Format+81           sub     esi, 4                               ESI=10 CF=PF=AF=SF=0         // divisor table start
Format+84           cmp     eax, ds:dword_301102D0[esi]                                       // (all variations take this?)
Format+8A           jnb     short tag2                                                

Format:tag2         test    ecx, ecx                             PF=1 SF=1                    
Format+95           jz      loc_300664A3                                                      
Format+9B           add     ecx, dword ptr ds:byte_300663F7[esi] ECX=2EF9BFB3 CF=1 PF=SF=0    // adds 0x36F9BFB3 = 922,337,203? Why? Causes overflow on exactly those 6 floating values ending in 0xFF-0xFA, 0xF9 does not carry!
Format+A1           adc     ebx, 0                               EBX=0 PF=1 AF=1 ZF=1         // rollover - incorrect?
Format+A4           jb      tag3                                                              // close to an integer, branch accordingly. some correct ones diverge here!?
Format:tag3         xor     ecx, ecx                             ECX=0 CF=0 AF=0              
Format+D8135        mov     edx, 1                               EDX=1                        
Format+D813A        inc     eax                                  EAX=10000 AF=1 ZF=0          // note this is 65536?!
Format+D813B        jz      skip                                                      
Format+D8141        cmp     eax, ds:dword_301102D4[esi]          PF=0                         // check against max value 0xFFFF for this branch
Format+D8147        jb      loc_300664A3                                                      // EAX too big?
Format+D814D        jmp     tag4                                                              // jump to some fixup routine??

Format:tag4         cmp     eax, 0FFFFFFFFh                      CF=1                         
Format+32374A       jz      Digits                                                            //
Format+323750       inc     word ptr [edi+20h]                   PF=1 AF=0                    // set some internal counter
Format+323754       add     esi, 4                               ESI=14 CF=0                  // move table value (incorrect?!)
Format+323757       jmp     Digits                                                            // jump to digit printing loop

Format:Digits       xor     edx, edx                             EDX=0 ZF=1                   // EAX holds integer part, EDX holds remainder
Format:skip         div     ds:dword_301102D0[esi]               EAX=1 EDX=1 PF=0 AF=1 ZF=0   // EDX:EAX / FFFF -> EAX, remainder EDX - ERROR!
Format+2FB          or      al, 30h                              EAX=31 AF=0                  // text for '1'
Format+2FD          mov     [edi], al                                                         // save character here 
Format+2FF          mov     byte ptr [edi+1], 0                                               // Unicode - place a 0 here for two byte char
Format+303          add     edi, 2                               EDI=12F9E4 PF=1              // next char position
Format+306          or      edx, edx                             PF=0                         // see if any remainder
Format+308          jz      tag6                                                              // exit if no remainder
Format+30E          mov     eax, edx                             EAX=1                        // move remiander to EAX
Format+310          sub     esi, 4                               ESI=10                       // move divisor table pointer
Format+313          ja      short Digits                                                      // and loop if table not empty

Format:Digits       xor     edx, edx                             EDX=0 PF=1 ZF=1              // EAX holds integer part, EDX holds remainder
Format:skip         div     ds:dword_301102D0[esi]               EAX=0 EDX=1 PF=0 AF=1 ZF=0   // EDX:EAX / x2710 = 0:1		 x2710 = 10000
Format+2FB          or      al, 30h                              EAX=30 PF=1 AF=0             // text for '0'
Format+2FD          mov     [edi], al                                                         // save character here
Format+2FF          mov     byte ptr [edi+1], 0                                               // Unicode - place a 0 here for two byte char
Format+303          add     edi, 2                               EDI=12F9E6 PF=0              // next char position
Format+306          or      edx, edx                                                          // see if any remainder 
Format+308          jz      tag6                                                              // exit if no remainder
Format+30E          mov     eax, edx                             EAX=1                        // move remiander to EAX
Format+310          sub     esi, 4                               ESI=C PF=1 AF=1              // move divisor table pointer
Format+313          ja      short Digits													  // and loop if table not empty

Format:Digits       xor     edx, edx                             EDX=0 AF=0 ZF=1              // EAX holds integer part, EDX holds remainder 
Format:skip         div     ds:dword_301102D0[esi]               EAX=0 EDX=1 PF=0 AF=1 ZF=0   // EDX:EAX / x3E8 = 0:1	  x3E8 = 1000
Format+2FB          or      al, 30h                              EAX=30 PF=1 AF=0             // text for '0'
Format+2FD          mov     [edi], al                                                         // save character here
Format+2FF          mov     byte ptr [edi+1], 0                                               // Unicode - place a 0 here for two byte char
Format+303          add     edi, 2                               EDI=12F9E8                   // next char position
Format+306          or      edx, edx                             PF=0                         // see if any remainder
Format+308          jz      tag6                                                              // exit if no remainder
Format+30E          mov     eax, edx                             EAX=1                        // move remiander to EAX
Format+310          sub     esi, 4                               ESI=8                        // move divisor table pointer
Format+313          ja      short Digits													  // and loop if table not empty

Format:Digits       xor     edx, edx                             EDX=0 PF=1 ZF=1              // EAX holds integer part, EDX holds remainder
Format:skip         div     ds:dword_301102D0[esi]               EAX=0 EDX=1 PF=0 AF=1 ZF=0   // EDX:EAX / x64 = 0:1	x64 = 100
Format+2FB          or      al, 30h                              EAX=30 PF=1 AF=0             // text for '0'
Format+2FD          mov     [edi], al                                                         // save character here
Format+2FF          mov     byte ptr [edi+1], 0                                               // Unicode - place a 0 here for two byte char
Format+303          add     edi, 2                               EDI=12F9EA PF=0              // next char position
Format+306          or      edx, edx                                                          // see if any remainder
Format+308          jz      tag6                                                              // exit if no remainder
Format+30E          mov     eax, edx                             EAX=1                        // move remiander to EAX
Format+310          sub     esi, 4                               ESI=4                        // move divisor table pointer
Format+313          ja      short Digits													  // and loop if table not empty

Format:Digits       xor     edx, edx                             EDX=0 PF=1 ZF=1              // EAX holds integer part, EDX holds remainder
Format:skip         div     ds:dword_301102D0[esi]               EAX=0 EDX=1 PF=0 AF=1 ZF=0   // EDX:EAX / x0A = 0:1
Format+2FB          or      al, 30h                              EAX=30 PF=1 AF=0             // text for '0'
Format+2FD          mov     [edi], al                                                         // save character here
Format+2FF          mov     byte ptr [edi+1], 0                                               // Unicode - place a 0 here for two byte char
Format+303          add     edi, 2                               EDI=12F9EC PF=0              // next char position
Format+306          or      edx, edx                                                          // see if any remainder
Format+308          jz      tag6                                                              // exit if no remainder
Format+30E          mov     eax, edx                             EAX=1                        // move remiander to EAX
Format+310          sub     esi, 4                               ESI=0 PF=1 ZF=1              // move divisor table pointer
Format+313          ja      short Digits													  // and loop if table not empty

Format+315          test    eax, 0FFh                            PF=0 ZF=0                    // final digit amount
Format+31A          jz      tag6                                                      
Format+320          jmp     tag5                                                      
Format:tag5         or      al, 30h                              EAX=31                       // text for '1'
Format+170          mov     [edi], al                                                         // save character here
Format+172          mov     byte ptr [edi+1], 0                                               // Unicode - place a 0 here for two byte char
Format+176          add     edi, 2                               EDI=12F9EE PF=1              // next char position

Format:tag6         mov     eax, ebx                             EAX=0                        
Format+17B          or      eax, ecx                             ZF=1                         
Format+17D          jnz     loc_30150AD8                                                      
Format+183          mov     word ptr [edi], 30h ; '0'                                         // write another '0' character
Format+188          pop     ecx                                  ECX=F ESP=12F498             // clean stack
Format+189          pop     ebx                                  EBX=12F9E2 ESP=12F49C        
Format+18A          mov     edx, edi                             EDX=12F9EE                   
Format+18C          sub     edx, ebx                             EDX=C ZF=0                   // 
Format+18E          sar     edx, 1                               EDX=6 AF=1                   //

Format:tag7         mov     eax, [ebx+1Eh]                       EAX=40060000                 
Format+193          and     eax, 0FFFF0000h                      AF=0                         
Format+198          or      eax, edx                             EAX=40060006                 
Format+19A          mov     [ebx+1Eh], eax                                                    
Format+19D          and     eax, 7FFFFFFFh                                                    
Format+1A2          sub     eax, 40000000h                       EAX=60006                    // number of digits?
Format+1A7          ror     eax, 10h                                                          
Format+1AA          retn                                         ESP=12F4A0                   // and we're out


// 100000 version - uses same ESI table for divisors as 100001 version = 850*77.1
ST0= 1.0 ST1= 1.0 ST2= 1.0000001192092895508 ST3= 5.9604644775390625e-8 ST4= 9.9999994039535522461e-1 ST5= 1.0 ST6= 0.0 ST7= 1.0 CTRL=137F CS=1B DS=23 ES=23 FS=3B GS=0 SS=23 
EAX=FFFE EBX=FFED061E ECX=F EDX=12F4C0 ESI=12F548 EDI=12F9E2 EBP=12F4C4 ESP=12F49C EFL=202  
Format              mov     dword ptr [edi+1Eh], 0                                            
Format+7            mov     eax, [esi+4]                         EAX=40EFFFDF                 
Format+A            mov     edx, eax                             EDX=40EFFFDF                 
Format+C            and     eax, 7FF00000h                       EAX=40E00000 PF=1            
Format+11           jz      nullsub_33                                                        
Format+17           shr     eax, 14h                             EAX=40E PF=0 AF=1            
Format+1A           sub     eax, 3FEh                            EAX=10 AF=0                  
Format+1F           mov     ebx, eax                             EBX=10                       
Format+21           imul    eax, 9A21h                           EAX=9A210                    
Format+27           sar     eax, 1                               EAX=4D108 AF=1               
Format+29           and     edx, 80000000h                       EDX=0 PF=1 AF=0 ZF=1         
Format+2F           add     eax, 40010000h                       EAX=4005D108 PF=0 ZF=0       
Format+34           and     eax, 0FFFF0000h                      EAX=40050000 PF=1            
Format+39           or      edx, eax                             EDX=40050000                 
Format+3B           mov     [edi+1Eh], edx                                                    
Format+3E           shr     eax, 10h                             EAX=4005 AF=1                
Format+41           sub     eax, 4000h                           EAX=5 AF=0                   
Format+46           or      ebx, ebx                             PF=0                         
Format+48           jl      loc_3013C232                                                      
Format+4E           cmp     ebx, 10h                             PF=1 ZF=1                    
Format+51           jle     short loc_3006639C                                                
Format:loc_3006639C push    edi                                  ESP=12F498                   
Format+59           push    ecx                                  ESP=12F494                   
Format+5A           mov     edx, [esi]                           EDX=FFFFFFFF                 
Format+5C           mov     esi, [esi+4]                         ESI=40EFFFDF                 
Format+5F           xchg    eax, esi                             EAX=40EFFFDF ESI=5           
Format+60           shl     esi, 2                               ESI=14 AF=1 ZF=0             
Format+63           and     eax, 0FFFFFh                         EAX=FFFDF PF=0 AF=0          
Format+68           or      eax, 100000h                         EAX=1FFFDF                   
Format+6D           mov     ecx, 15h                             ECX=15                       
Format+72           sub     ecx, ebx                             ECX=5 PF=1                   
Format+74           mov     ebx, eax                             EBX=1FFFDF                   
Format+76           shr     eax, cl                              EAX=FFFE CF=1 PF=0 AF=1      
Format+78           neg     cl                                   ECX=FB SF=1                  
Format+7A           shld    ebx, edx, cl                         EBX=FFFFFFFF CF=0 PF=1 OF=1  
Format+7D           shl     edx, cl                              EDX=F8000000 CF=1 OF=0       
Format+7F           mov     ecx, edx                             ECX=F8000000                 
Format+81           sub     esi, 4                               ESI=10 CF=0 PF=0 AF=0 SF=0   
Format+84           cmp     eax, ds:dword_301102D0[esi]          PF=1                         
Format+8A           jnb     short loc_300663D7                                                
Format:loc_300663D7 test    ecx, ecx                             SF=1                         
Format+95           jz      loc_300664A3                                                      
Format+9B           add     ecx, dword ptr ds:byte_300663F7[esi] ECX=2EF9BFB3 CF=1 PF=0 SF=0  
Format+A1           adc     ebx, 0                               EBX=0 PF=1 AF=1 ZF=1         
Format+A4           jb      loc_3013E477                                                      
Format:loc_3013E477 xor     ecx, ecx                             ECX=0 CF=0 AF=0              
Format+D8135        mov     edx, 1                               EDX=1                        
Format+D813A        inc     eax                                  EAX=FFFF ZF=0                
Format+D813B        jz      loc_30066639                                                      
Format+D8141        cmp     eax, ds:dword_301102D4[esi]          ZF=1                         
Format+D8147        jb      loc_300664A3                                                      
Format+D814D        jmp     loc_30389A8B                                                      
Format:loc_30389A8B cmp     eax, 0FFFFFFFFh                      CF=1 ZF=0                    
Format+32374A       jz      Digits                                                      
Format+323750       inc     word ptr [edi+20h]                                                
Format+323754       add     esi, 4                               ESI=14 CF=0                  
Format+323757       jmp     Digits                                                      
Format:Digits xor     edx, edx                             EDX=0 ZF=1                   
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=1 PF=0 AF=1 ZF=0         
Format+2FB          or      al, 30h                              EAX=31 AF=0                  
Format+2FD          mov     [edi], al                                                         
Format+2FF          mov     byte ptr [edi+1], 0                                               
Format+303          add     edi, 2                               EDI=12F9E4 PF=1              
Format+306          or      edx, edx                             ZF=1                         
Format+308          jz      loc_300664BD                                                      
Format:loc_300664BD mov     eax, ebx                             EAX=0                        
Format+17B          or      eax, ecx                                                          
Format+17D          jnz     loc_30150AD8                                                      
Format+183          mov     word ptr [edi], 30h ; '0'                                         
Format+188          pop     ecx                                  ECX=F ESP=12F498             
Format+189          pop     ebx                                  EBX=12F9E2 ESP=12F49C        
Format+18A          mov     edx, edi                             EDX=12F9E4                   
Format+18C          sub     edx, ebx                             EDX=2 PF=0 ZF=0              
Format+18E          sar     edx, 1                               EDX=1 AF=1                   
Format:loc_300664D4 mov     eax, [ebx+1Eh]                       EAX=40060000                 
Format+193          and     eax, 0FFFF0000h                      PF=1 AF=0                    
Format+198          or      eax, edx                             EAX=40060001 PF=0            
Format+19A          mov     [ebx+1Eh], eax                                                    
Format+19D          and     eax, 7FFFFFFFh                                                    
Format+1A2          sub     eax, 40000000h                       EAX=60001                    
Format+1A7          ror     eax, 10h                             EAX=10006                    
Format+1AA          retn                                         ESP=12F4A0                   

/// 100001 version = 850*77.1+1
ST0= 1.0 ST1= 1.0 ST2= 1.0000001192092895508 ST3= 5.9604644775390625e-8 ST4= 9.9999994039535522461e-1 ST5= 1.0 ST6= 1.95e1 ST7= 1.0 CTRL=137F CS=1B DS=23 ES=23 FS=3B GS=0 SS=23 
EAX=FFFE EBX=FFED061E ECX=F EDX=12F4C0 ESI=12F548 EDI=12F9E2 EBP=12F4C4 ESP=12F49C EFL=202  
Format              mov     dword ptr [edi+1Eh], 0                                            
Format+7            mov     eax, [esi+4]                         EAX=40EFFFFF                 
Format+A            mov     edx, eax                             EDX=40EFFFFF                 
Format+C            and     eax, 7FF00000h                       EAX=40E00000 PF=1            
Format+11           jz      nullsub_33                                                        
Format+17           shr     eax, 14h                             EAX=40E PF=0 AF=1            
Format+1A           sub     eax, 3FEh                            EAX=10 AF=0                  
Format+1F           mov     ebx, eax                             EBX=10                       
Format+21           imul    eax, 9A21h                           EAX=9A210                    
Format+27           sar     eax, 1                               EAX=4D108 AF=1               
Format+29           and     edx, 80000000h                       EDX=0 PF=1 AF=0 ZF=1         
Format+2F           add     eax, 40010000h                       EAX=4005D108 PF=0 ZF=0       
Format+34           and     eax, 0FFFF0000h                      EAX=40050000 PF=1            
Format+39           or      edx, eax                             EDX=40050000                 
Format+3B           mov     [edi+1Eh], edx                                                    
Format+3E           shr     eax, 10h                             EAX=4005 AF=1                
Format+41           sub     eax, 4000h                           EAX=5 AF=0                   
Format+46           or      ebx, ebx                             PF=0                         
Format+48           jl      loc_3013C232                                                      
Format+4E           cmp     ebx, 10h                             PF=1 ZF=1                    
Format+51           jle     short loc_3006639C                                                
Format:loc_3006639C push    edi                                  ESP=12F498                   
Format+59           push    ecx                                  ESP=12F494                   
Format+5A           mov     edx, [esi]                           EDX=FFFFFFFF                 
Format+5C           mov     esi, [esi+4]                         ESI=40EFFFFF                 
Format+5F           xchg    eax, esi                             EAX=40EFFFFF ESI=5           
Format+60           shl     esi, 2                               ESI=14 AF=1 ZF=0             
Format+63           and     eax, 0FFFFFh                         EAX=FFFFF AF=0               
Format+68           or      eax, 100000h                         EAX=1FFFFF                   
Format+6D           mov     ecx, 15h                             ECX=15                       
Format+72           sub     ecx, ebx                             ECX=5                        
Format+74           mov     ebx, eax                             EBX=1FFFFF                   
Format+76           shr     eax, cl                              EAX=FFFF CF=1 AF=1           
Format+78           neg     cl                                   ECX=FB PF=0 SF=1             
Format+7A           shld    ebx, edx, cl                         EBX=FFFFFFFF PF=1            
Format+7D           shl     edx, cl                              EDX=F8000000                 
Format+7F           mov     ecx, edx                             ECX=F8000000                 
Format+81           sub     esi, 4                               ESI=10 CF=0 PF=0 AF=0 SF=0   
Format+84           cmp     eax, ds:dword_301102D0[esi]                                       
Format+8A           jnb     short loc_300663D7                                                
Format:loc_300663D7 test    ecx, ecx                             PF=1 SF=1                    
Format+95           jz      loc_300664A3                                                      
Format+9B           add     ecx, dword ptr ds:byte_300663F7[esi] ECX=2EF9BFB3 CF=1 PF=0 SF=0  
Format+A1           adc     ebx, 0                               EBX=0 PF=1 AF=1 ZF=1         
Format+A4           jb      loc_3013E477                                                      
Format:loc_3013E477 xor     ecx, ecx                             ECX=0 CF=0 AF=0              
Format+D8135        mov     edx, 1                               EDX=1                        
Format+D813A        inc     eax                                  EAX=10000 AF=1 ZF=0          
Format+D813B        jz      loc_30066639                                                      
Format+D8141        cmp     eax, ds:dword_301102D4[esi]          PF=0                         
Format+D8147        jb      loc_300664A3                                                      
Format+D814D        jmp     loc_30389A8B                                                      
Format:loc_30389A8B cmp     eax, 0FFFFFFFFh                      CF=1                         
Format+32374A       jz      Digits                                                      
Format+323750       inc     word ptr [edi+20h]                   PF=1 AF=0                    
Format+323754       add     esi, 4                               ESI=14 CF=0                  
Format+323757       jmp     Digits                                                      
Format:Digits xor     edx, edx                             EDX=0 ZF=1                   
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=1 EDX=1 PF=0 AF=1 ZF=0   
Format+2FB          or      al, 30h                              EAX=31 AF=0                  
Format+2FD          mov     [edi], al                                                         
Format+2FF          mov     byte ptr [edi+1], 0                                               
Format+303          add     edi, 2                               EDI=12F9E4 PF=1              
Format+306          or      edx, edx                             PF=0                         
Format+308          jz      loc_300664BD                                                      
Format+30E          mov     eax, edx                             EAX=1                        
Format+310          sub     esi, 4                               ESI=10                       
Format+313          ja      short Digits                                                
Format:Digits xor     edx, edx                             EDX=0 PF=1 ZF=1              
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=0 EDX=1 PF=0 AF=1 ZF=0   
Format+2FB          or      al, 30h                              EAX=30 PF=1 AF=0             
Format+2FD          mov     [edi], al                                                         
Format+2FF          mov     byte ptr [edi+1], 0                                               
Format+303          add     edi, 2                               EDI=12F9E6 PF=0              
Format+306          or      edx, edx                                                          
Format+308          jz      loc_300664BD                                                      
Format+30E          mov     eax, edx                             EAX=1                        
Format+310          sub     esi, 4                               ESI=C PF=1 AF=1              
Format+313          ja      short Digits                                                
Format:Digits xor     edx, edx                             EDX=0 AF=0 ZF=1              
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=0 EDX=1 PF=0 AF=1 ZF=0   
Format+2FB          or      al, 30h                              EAX=30 PF=1 AF=0             
Format+2FD          mov     [edi], al                                                         
Format+2FF          mov     byte ptr [edi+1], 0                                               
Format+303          add     edi, 2                               EDI=12F9E8                   
Format+306          or      edx, edx                             PF=0                         
Format+308          jz      loc_300664BD                                                      
Format+30E          mov     eax, edx                             EAX=1                        
Format+310          sub     esi, 4                               ESI=8                        
Format+313          ja      short Digits                                                
Format:Digits xor     edx, edx                             EDX=0 PF=1 ZF=1              
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=0 EDX=1 PF=0 AF=1 ZF=0   
Format+2FB          or      al, 30h                              EAX=30 PF=1 AF=0             
Format+2FD          mov     [edi], al                                                         
Format+2FF          mov     byte ptr [edi+1], 0                                               
Format+303          add     edi, 2                               EDI=12F9EA PF=0              
Format+306          or      edx, edx                                                          
Format+308          jz      loc_300664BD                                                      
Format+30E          mov     eax, edx                             EAX=1                        
Format+310          sub     esi, 4                               ESI=4                        
Format+313          ja      short Digits                                                
Format:Digits xor     edx, edx                             EDX=0 PF=1 ZF=1              
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=0 EDX=1 PF=0 AF=1 ZF=0   
Format+2FB          or      al, 30h                              EAX=30 PF=1 AF=0             
Format+2FD          mov     [edi], al                                                         
Format+2FF          mov     byte ptr [edi+1], 0                                               
Format+303          add     edi, 2                               EDI=12F9EC PF=0              
Format+306          or      edx, edx                                                          
Format+308          jz      loc_300664BD                                                      
Format+30E          mov     eax, edx                             EAX=1                        
Format+310          sub     esi, 4                               ESI=0 PF=1 ZF=1              
Format+313          ja      short Digits                                                
Format+315          test    eax, 0FFh                            PF=0 ZF=0                    
Format+31A          jz      loc_300664BD                                                      
Format+320          jmp     loc_300664B2                                                      
Format:loc_300664B2 or      al, 30h                              EAX=31                       
Format+170          mov     [edi], al                                                         
Format+172          mov     byte ptr [edi+1], 0                                               
Format+176          add     edi, 2                               EDI=12F9EE PF=1              
Format:loc_300664BD mov     eax, ebx                             EAX=0                        
Format+17B          or      eax, ecx                             ZF=1                         
Format+17D          jnz     loc_30150AD8                                                      
Format+183          mov     word ptr [edi], 30h ; '0'                                         
Format+188          pop     ecx                                  ECX=F ESP=12F498             
Format+189          pop     ebx                                  EBX=12F9E2 ESP=12F49C        
Format+18A          mov     edx, edi                             EDX=12F9EE                   
Format+18C          sub     edx, ebx                             EDX=C ZF=0                   
Format+18E          sar     edx, 1                               EDX=6 AF=1                   
Format:loc_300664D4 mov     eax, [ebx+1Eh]                       EAX=40060000                 
Format+193          and     eax, 0FFFF0000h                      AF=0                         
Format+198          or      eax, edx                             EAX=40060006                 
Format+19A          mov     [ebx+1Eh], eax                                                    
Format+19D          and     eax, 7FFFFFFFh                                                    
Format+1A2          sub     eax, 40000000h                       EAX=60006                    
Format+1A7          ror     eax, 10h                                                          
Format+1AA          retn                                         ESP=12F4A0                   

// 65534 version = 850*77.1-1
ST0= 1.0 ST1= 1.0 ST2= 1.0000001192092895508 ST3= 5.5000001192092895508e-1 ST4= 9.1705883067028182154e-1 ST5= 2.34e2 ST6= 1.45e1 ST7= 1.0 CTRL=137F CS=1B DS=23 ES=23 FS=3B GS=0 SS=23 
EAX=FFFE EBX=FFED061E ECX=F EDX=12F4C0 ESI=12F548 EDI=12F9E2 EBP=12F4C4 ESP=12F49C EFL=202  
Format              mov     dword ptr [edi+1Eh], 0                                            
Format+7            mov     eax, [esi+4]                         EAX=40EFFFBF                 
Format+A            mov     edx, eax                             EDX=40EFFFBF                 
Format+C            and     eax, 7FF00000h                       EAX=40E00000 PF=1            
Format+11           jz      nullsub_33                                                        
Format+17           shr     eax, 14h                             EAX=40E PF=0 AF=1            
Format+1A           sub     eax, 3FEh                            EAX=10 AF=0                  
Format+1F           mov     ebx, eax                             EBX=10                       
Format+21           imul    eax, 9A21h                           EAX=9A210                    
Format+27           sar     eax, 1                               EAX=4D108 AF=1               
Format+29           and     edx, 80000000h                       EDX=0 PF=1 AF=0 ZF=1         
Format+2F           add     eax, 40010000h                       EAX=4005D108 PF=0 ZF=0       
Format+34           and     eax, 0FFFF0000h                      EAX=40050000 PF=1            
Format+39           or      edx, eax                             EDX=40050000                 
Format+3B           mov     [edi+1Eh], edx                                                    
Format+3E           shr     eax, 10h                             EAX=4005 AF=1                
Format+41           sub     eax, 4000h                           EAX=5 AF=0                   
Format+46           or      ebx, ebx                             PF=0                         
Format+48           jl      loc_3013C232                                                      
Format+4E           cmp     ebx, 10h                             PF=1 ZF=1                    
Format+51           jle     short loc_3006639C                                                
Format:loc_3006639C push    edi                                  ESP=12F498                   
Format+59           push    ecx                                  ESP=12F494                   
Format+5A           mov     edx, [esi]                           EDX=FFFFFFFF                 
Format+5C           mov     esi, [esi+4]                         ESI=40EFFFBF                 
Format+5F           xchg    eax, esi                             EAX=40EFFFBF ESI=5           
Format+60           shl     esi, 2                               ESI=14 AF=1 ZF=0             
Format+63           and     eax, 0FFFFFh                         EAX=FFFBF PF=0 AF=0          
Format+68           or      eax, 100000h                         EAX=1FFFBF                   
Format+6D           mov     ecx, 15h                             ECX=15                       
Format+72           sub     ecx, ebx                             ECX=5 PF=1                   
Format+74           mov     ebx, eax                             EBX=1FFFBF                   
Format+76           shr     eax, cl                              EAX=FFFD CF=1 PF=0 AF=1      
Format+78           neg     cl                                   ECX=FB SF=1                  
Format+7A           shld    ebx, edx, cl                         EBX=FFFFFFFF PF=1            
Format+7D           shl     edx, cl                              EDX=F8000000                 
Format+7F           mov     ecx, edx                             ECX=F8000000                 
Format+81           sub     esi, 4                               ESI=10 CF=0 PF=0 AF=0 SF=0   
Format+84           cmp     eax, ds:dword_301102D0[esi]          PF=1                         
Format+8A           jnb     short loc_300663D7                                                
Format:loc_300663D7 test    ecx, ecx                             SF=1                         
Format+95           jz      loc_300664A3                                                      
Format+9B           add     ecx, dword ptr ds:byte_300663F7[esi] ECX=2EF9BFB3 CF=1 PF=0 SF=0  
Format+A1           adc     ebx, 0                               EBX=0 PF=1 AF=1 ZF=1         
Format+A4           jb      loc_3013E477                                                      
Format:loc_3013E477 xor     ecx, ecx                             ECX=0 CF=0 AF=0              
Format+D8135        mov     edx, 1                               EDX=1                        
Format+D813A        inc     eax                                  EAX=FFFE PF=0 ZF=0           
Format+D813B        jz      loc_30066639                                                      
Format+D8141        cmp     eax, ds:dword_301102D4[esi]          CF=1 PF=1 AF=1 SF=1          
Format+D8147        jb      loc_300664A3                                                      
Format:loc_300664A3 or      esi, esi                             CF=0 PF=0 AF=0 SF=0          
Format+161          jl      loc_30218285                                                      
Format+167          jz      short loc_300664B2                                                
Format+169          jmp     Digits                                                      

Format:Digits    xor     edx, edx                             EDX=0 PF=1 ZF=1              
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=6 EDX=159E PF=0 AF=1 ZF=0
Format+2FB          or      al, 30h                              EAX=36 PF=1 AF=0             
Format+2FD          mov     [edi], al                                                         
Format+2FF          mov     byte ptr [edi+1], 0                                               
Format+303          add     edi, 2                               EDI=12F9E4                   
Format+306          or      edx, edx                             PF=0                         
Format+308          jz      loc_300664BD                                                      
Format+30E          mov     eax, edx                             EAX=159E                     
Format+310          sub     esi, 4                               ESI=C PF=1 AF=1              
Format+313          ja      short Digits                                                

Format:Digits    xor     edx, edx                             EDX=0 AF=0 ZF=1              
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=5 EDX=216 PF=0 AF=1 ZF=0 
Format+2FB          or      al, 30h                              EAX=35 PF=1 AF=0             
Format+2FD          mov     [edi], al                                                         
Format+2FF          mov     byte ptr [edi+1], 0                                               
Format+303          add     edi, 2                               EDI=12F9E6 PF=0              
Format+306          or      edx, edx                                                          
Format+308          jz      loc_300664BD                                                      
Format+30E          mov     eax, edx                             EAX=216                      
Format+310          sub     esi, 4                               ESI=8                        
Format+313          ja      short Digits                                                

Format:Digits    xor     edx, edx                             EDX=0 PF=1 ZF=1              
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=5 EDX=22 PF=0 AF=1 ZF=0  
Format+2FB          or      al, 30h                              EAX=35 PF=1 AF=0             
Format+2FD          mov     [edi], al                                                         
Format+2FF          mov     byte ptr [edi+1], 0                                               
Format+303          add     edi, 2                               EDI=12F9E8                   
Format+306          or      edx, edx                                                          
Format+308          jz      loc_300664BD                                                      
Format+30E          mov     eax, edx                             EAX=22                       
Format+310          sub     esi, 4                               ESI=4 PF=0                   
Format+313          ja      short Digits                                                

Format:Digits    xor     edx, edx                             EDX=0 PF=1 ZF=1              
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=3 EDX=4 PF=0 AF=1 ZF=0   
Format+2FB          or      al, 30h                              EAX=33 PF=1 AF=0             
Format+2FD          mov     [edi], al                                                         
Format+2FF          mov     byte ptr [edi+1], 0                                               
Format+303          add     edi, 2                               EDI=12F9EA PF=0              
Format+306          or      edx, edx                                                          
Format+308          jz      loc_300664BD                                                      
Format+30E          mov     eax, edx                             EAX=4                        
Format+310          sub     esi, 4                               ESI=0 PF=1 ZF=1              
Format+313          ja      short Digits                                                
Format+315          test    eax, 0FFh                            PF=0 ZF=0                    
Format+31A          jz      loc_300664BD                                                      
Format+320          jmp     loc_300664B2                                                      
Format:loc_300664B2 or      al, 30h                              EAX=34                       
Format+170          mov     [edi], al                                                         
Format+172          mov     byte ptr [edi+1], 0                                               
Format+176          add     edi, 2                               EDI=12F9EC                   
Format:loc_300664BD mov     eax, ebx                             EAX=0                        
Format+17B          or      eax, ecx                             PF=1 ZF=1                    
Format+17D          jnz     loc_30150AD8                                                      
Format+183          mov     word ptr [edi], 30h ; '0'                                         
Format+188          pop     ecx                                  ECX=F ESP=12F498             
Format+189          pop     ebx                                  EBX=12F9E2 ESP=12F49C        
Format+18A          mov     edx, edi                             EDX=12F9EC                   
Format+18C          sub     edx, ebx                             EDX=A ZF=0                   
Format+18E          sar     edx, 1                               EDX=5 AF=1                   
Format:loc_300664D4 mov     eax, [ebx+1Eh]                       EAX=40050000                 
Format+193          and     eax, 0FFFF0000h                      AF=0                         
Format+198          or      eax, edx                             EAX=40050005                 
Format+19A          mov     [ebx+1Eh], eax                                                    
Format+19D          and     eax, 7FFFFFFFh                                                    
Format+1A2          sub     eax, 40000000h                       EAX=50005                    
Format+1A7          ror     eax, 10h                                                          
Format+1AA          retn                                         ESP=12F4A0                   


// 65537 version = 850*77.1+2 
ST0= 0.0 ST1= 0.0 ST2= 0.0 ST3= 1.0 ST4= 1.0 ST5= 1.0 ST6= 0.0 ST7= 1.0 CTRL=137F CS=1B DS=23 ES=23 FS=3B GS=0 SS=23 
EAX=FFFE EBX=FFED061E ECX=F EDX=12F4C0 ESI=12F548 EDI=12F9E2 EBP=12F4C4 ESP=12F49C EFL=202  
Format                mov     dword ptr [edi+1Eh], 0                                          
Format+7              mov     eax, [esi+4]                 EAX=40F00010                       
Format+A              mov     edx, eax                     EDX=40F00010                       
Format+C              and     eax, 7FF00000h               EAX=40F00000 PF=1                  
Format+11             jz      nullsub_33                                                      
Format+17             shr     eax, 14h                     EAX=40F AF=1                       
Format+1A             sub     eax, 3FEh                    EAX=11 AF=0                        
Format+1F             mov     ebx, eax                     EBX=11                             
Format+21             imul    eax, 9A21h                   EAX=A3C31                          
Format+27             sar     eax, 1                       EAX=51E18 CF=1 AF=1                
Format+29             and     edx, 80000000h               EDX=0 CF=0 AF=0 ZF=1               
Format+2F             add     eax, 40010000h               EAX=40061E18 ZF=0                  
Format+34             and     eax, 0FFFF0000h              EAX=40060000                       
Format+39             or      edx, eax                     EDX=40060000                       
Format+3B             mov     [edi+1Eh], edx                                                  
Format+3E             shr     eax, 10h                     EAX=4006 AF=1                      
Format+41             sub     eax, 4000h                   EAX=6 AF=0                         
Format+46             or      ebx, ebx                                                        
Format+48             jl      loc_3013C232                                                    
Format+4E             cmp     ebx, 10h                     PF=0                               
Format+51             jle     short loc_3006639C                                              
Format+53             jmp     loc_3013C232                                                    
Format:loc_3013C232   cmp     ecx, 0Fh                     PF=1 ZF=1                          
Format+D5EF1          jnb     short loc_3013C249                                              
Format:loc_3013C249   push    ecx                          ESP=12F498                         
Format+D5F06          push    edi                          ESP=12F494                         
Format+D5F07          mov     ecx, ebx                     ECX=11                             
Format+D5F09          mov     edi, [esi]                   EDI=0                              
Format+D5F0B          mov     esi, [esi+4]                 ESI=40F00010                       
Format+D5F0E          or      esi, 100000h                 PF=0 ZF=0                          
Format+D5F14          shld    esi, edi, 0Bh                ESI=80008000 CF=1 PF=1 AF=1 SF=1   
Format+D5F18          shl     edi, 0Bh                     CF=0 ZF=1 SF=0                     
Format+D5F1B          neg     eax                          EAX=FFFFFFFA CF=1 ZF=0 SF=1        
Format:loc_3013C261   call    sub_300428C1                 ESP=12F490                         
sub_300428C1              or      eax, eax                     CF=0 AF=0                      
sub_300428C1+2            jz      nullsub_18                                                  
sub_300428C1+8            push    ebp                          ESP=12F48C                     
sub_300428C1+9            mov     ebp, (offset loc_300428D5+3) EBP=300428D8                   
sub_300428C1+E            jns     loc_30042D7A                                                
sub_300428C1:loc_300428D5 mov     ebp, offset loc_30042AC8     EBP=30042AC8                   
sub_300428C1+19           neg     eax                          EAX=6 CF=1 AF=1 SF=0           
sub_300428C1+1B           jmp     loc_30042D7A                                                
sub_300428C1:loc_30042D7A mov     ebx, eax                     EBX=6                          
sub_300428C1+4BB          and     ebx, 0Fh                     CF=0 AF=0                      
sub_300428C1+4BE          jz      loc_30042ED7                                                
sub_300428C1+4C4          push    eax                          ESP=12F488                     
sub_300428C1+4C5          shl     ebx, 1                       EBX=C AF=1                     
sub_300428C1+4C7          lea     ebx, [ebp+ebx*8+0]           EBX=30042B28                   
sub_300428C1+4CB          add     ecx, [ebx+8]                 ECX=FFFFFFFE PF=0 AF=0 SF=1    
sub_300428C1+4CE          push    ecx                          ESP=12F484                     
sub_300428C1+4CF          push    esi                          ESP=12F480                     
sub_300428C1+4D0          mov     eax, [ebx]                   EAX=AF6C69B6                   
sub_300428C1+4D2          mul     edi                          EAX=0 EDX=0                    
sub_300428C1+4D4          add     eax, 0FFFFFFFFh              EAX=FFFFFFFF PF=1              
sub_300428C1+4D7          mov     ecx, edx                     ECX=0                          
sub_300428C1+4D9          adc     dl, 0                        ZF=1 SF=0                      
sub_300428C1+4DC          adc     dl, 0                                                       
sub_300428C1+4DF          mov     eax, esi                     EAX=80008000                   
sub_300428C1+4E1          movzx   esi, dl                      ESI=0                          
sub_300428C1+4E4          mul     dword ptr [ebx]              EAX=34DB0000 EDX=57B68C91 CF=1 OF=1
sub_300428C1+4E6          or      eax, esi                     CF=0 ZF=0 OF=0                 
sub_300428C1+4E8          and     ecx, 0FFFFFF00h              ZF=1                           
sub_300428C1+4EE          add     eax, ecx                     ZF=0                           
sub_300428C1+4F0          adc     edx, 0                       PF=0                           
sub_300428C1+4F3          xchg    eax, edi                     EAX=0 EDI=34DB0000             
sub_300428C1+4F4          mov     ecx, [ebx+4]                 ECX=8637BD05                   
sub_300428C1+4F7          mov     ebx, edx                     EBX=57B68C91                   
sub_300428C1+4F9          mul     ecx                          EDX=0                          
sub_300428C1+4FB          add     edi, eax                     PF=1                           
sub_300428C1+4FD          adc     ebx, edx                     PF=0                           
sub_300428C1+4FF          xchg    edi, ebx                     EBX=34DB0000 EDI=57B68C91      
sub_300428C1+501          pop     eax                          EAX=80008000 ESP=12F484        
sub_300428C1+502          mov     esi, 0                                                      
sub_300428C1+507          adc     esi, 0                       PF=1 ZF=1                      
sub_300428C1+50A          mul     ecx                          EAX=5E828000 EDX=431C219E CF=1 OF=1
sub_300428C1+50C          add     edi, eax                     EDI=B6390C91 CF=0 PF=0 ZF=0 SF=1
sub_300428C1+50E          adc     esi, edx                     ESI=431C219E SF=0 OF=0                                                                                                                                                                                           
sub_300428C1+510          pop     ecx                          ECX=FFFFFFFE ESP=12F488                                                                                                                                                                                          
sub_300428C1+511          js      loc_30042EBF                                                                                                                                                                                                                                  
sub_300428C1+517          shld    esi, edi, 1                  ESI=8638433D AF=1 SF=1 OF=1                                                                                                                                                                                      
sub_300428C1+51B          shld    edi, ebx, 1                  EDI=6C721922 CF=1 PF=1 SF=0                                                                                                                                                                                      
sub_300428C1+51F          shl     ebx, 1                       EBX=69B60000 CF=0 OF=0                                                                                                                                                                                           
sub_300428C1+521          dec     ecx                          ECX=FFFFFFFD PF=0 AF=0 SF=1                                                                                                                                                                                      
sub_300428C1+522          jmp     loc_30042EBF                                                                                                                                                                                                                                  
sub_300428C1:loc_30042EBF bt      edi, 0                                                                                                                                                                                                                                        
sub_300428C1+602          adc     ebx, ebx                     EBX=D36C0000 PF=1 OF=1                                                                                                                                                                                           
sub_300428C1+604          jz      short loc_30042ED6                                                                                                                                                                                                                            
sub_300428C1+606          adc     edi, 0                       SF=0 OF=0                                                                                                                                                                                                        
sub_300428C1+609          adc     esi, 0                       PF=0 SF=1                                                                                                                                                                                                        
sub_300428C1+60C          adc     ecx, 0                                                                                                                                                                                                                                        
sub_300428C1+60F          or      esi, 80000000h                                                                                                                                                                                                                                
sub_300428C1:loc_30042ED6 pop     eax                          EAX=6 ESP=12F48C                                                                                                                                                                                                 
sub_300428C1:loc_30042ED7 add     ebp, 0F0h ; '='              EBP=30042BB8 PF=1 SF=0                                                                                                                                                                                           
sub_300428C1+61C          shr     eax, 4                       EAX=0 AF=1 ZF=1                                                                                                                                                                                                  
sub_300428C1+61F          or      eax, eax                     AF=0                                                                                                                                                                                                             
sub_300428C1+621          jnz     loc_30042D7A                                                                                                                                                                                                                                  
sub_300428C1+627          pop     ebp                          EBP=12F4C4 ESP=12F490                                                                                                                                                                                            
sub_300428C1+628          jmp     short nullsub_18                                                                                                                                                                                                                              
nullsub_18                retn                                 ESP=12F494                                                                                                                                                                                                       
Format+D5F22          test    ecx, ecx                     PF=0 ZF=0 SF=1                                                                                                                                                                                                   
Format+D5F24          jz      short loc_3013C277                                                                                                                                                                                                                            
Format+D5F26          jge     loc_30389A68                                                                                                                                                                                                                                  
Format+D5F2C          neg     ecx                          ECX=3 CF=1 PF=1 AF=1 SF=0                                                                                                                                                                                        
Format+D5F2E          shrd    edi, esi, cl                 EDI=AD8E4324 CF=0 SF=1 OF=1                                                                                                                                                                                      
Format+D5F31          shr     esi, cl                      ESI=10C70867 CF=1 PF=0 SF=0 OF=0                                                                                                                                                                                 
Format:loc_3013C277   cmp     edi, 99999999h               CF=0 PF=1                                                                                                                                                                                                        
Format+D5F39          mov     eax, esi                     EAX=10C70867                                                                                                                                                                                                     
Format+D5F3B          sbb     eax, 19999999h               EAX=F72D6ECE CF=1 PF=0 SF=1                                                                                                                                                                                      
Format+D5F40          mov     eax, 39Ah                    EAX=39A                                                                                                                                                                                                          
Format+D5F45          jb      short loc_3013C290                                                                                                                                                                                                                            
Format:loc_3013C290   add     edi, eax                     EDI=AD8E46BE CF=0 PF=1 AF=0                                                                                                                                                                                      
Format+D5F4E          adc     esi, 0                       PF=0 SF=0                                                                                                                                                                                                        
Format+D5F51          mov     ebx, edi                     EBX=AD8E46BE                                                                                                                                                                                                     
Format+D5F53          pop     edi                          EDI=12F9E2 ESP=12F498                                                                                                                                                                                            
Format+D5F54          jb      loc_30389A78                                                                                                                                                                                                                                  
Format:loc_3013C29E   pop     ecx                          ECX=F ESP=12F49C                                                                                                                                                                                                 
Format+D5F5B          push    edi                          ESP=12F498                                                                                                                                                                                                       
Format+D5F5C          test    ecx, ecx                     PF=1                                                                                                                                                                                                             
Format+D5F5E          jz      loc_30150AA6                                                                                                                                                                                                                                  
Format+D5F64          xor     ebp, ebp                     EBP=0 ZF=1                                                                                                                                                                                                       
Format+D5F66          jmp     loc_30150A6E                                                                                                                                                                                                                                  
Format:loc_30150A6E   push    edi                          ESP=12F494                                                                                                                                                                                                       
Format+EA72B          xor     eax, eax                     EAX=0                                                                                                                                                                                                            
Format+EA72D          mov     edi, esi                     EDI=10C70867                                                                                                                                                                                                     
Format+EA72F          mov     edx, ebx                     EDX=AD8E46BE                                                                                                                                                                                                     
Format+EA731          shld    eax, esi, 3                  AF=1                                                                                                                                                                                                             
Format+EA735          shld    esi, ebx, 3                  ESI=8638433D PF=0 ZF=0 SF=1 OF=1                                                                                                                                                                                 
Format+EA739          shl     ebx, 3                       EBX=6C7235F0 CF=1 PF=1 SF=0                                                                                                                                                                                      
Format+EA73C          add     ebx, edx                     EBX=1A007CAE PF=0 AF=0 OF=0                                                                                                                                                                                      
Format+EA73E          adc     esi, edi                     ESI=96FF4BA5 CF=0 PF=1 AF=1 SF=1                                                                                                                                                                                 
Format+EA740          adc     eax, 0                       AF=0 ZF=1 SF=0                                                                                                                                                                                                   
Format+EA743          add     ebx, edx                     EBX=C78EC36C AF=1 ZF=0 SF=1                                                                                                                                                                                      
Format+EA745          adc     esi, edi                     ESI=A7C6540C AF=0                                                                                                                                                                                                
Format+EA747          adc     eax, 0                       ZF=1 SF=0                                                                                                                                                                                                        
Format+EA74A          pop     edi                          EDI=12F9E2 ESP=12F498                                                                                                                                                                                            
Format+EA74B          or      ebp, eax                                                                                                                                                                                                                                      
Format+EA74D          jz      loc_3013B3A6                                                                                                                                                                                                                                  
Format:loc_3013B3A6   dec     word ptr [edi+20h]           ZF=0                                                                                                                                                                                                             
Format+D5066          cmp     ecx, 0Fh                     ZF=1                                                                                                                                                                                                             
Format+D5069          jz      loc_30150A6E                                                                                                                                                                                                                                  
Format:loc_30150A6E   push    edi                          ESP=12F494                                                                                                                                                                                                       
Format+EA72B          xor     eax, eax                                                                                                                                                                                                                                      
Format+EA72D          mov     edi, esi                     EDI=A7C6540C                                                                                                                                                                                                     
Format+EA72F          mov     edx, ebx                     EDX=C78EC36C                                                                                                                                                                                                     
Format+EA731          shld    eax, esi, 3                  EAX=5 AF=1 ZF=0                                                                                                                                                                                                  
Format+EA735          shld    esi, ebx, 3                  ESI=3E32A066 CF=1 OF=1                                                                                                                                                                                           
Format+EA739          shl     ebx, 3                       EBX=3C761B60 CF=0 OF=0                                                                                                                                                                                           
Format+EA73C          add     ebx, edx                     EBX=404DECC CF=1 AF=0                                                                                                                                                                                            
Format+EA73E          adc     esi, edi                     ESI=E5F8F473 CF=0 PF=0 AF=1 SF=1                                                                                                                                                                                 
Format+EA740          adc     eax, 0                       PF=1 AF=0 SF=0                                                                                                                                                                                                   
Format+EA743          add     ebx, edx                     EBX=CB93A238 PF=0 AF=1 SF=1                                                                                                                                                                                      
Format+EA745          adc     esi, edi                     ESI=8DBF487F CF=1 AF=0                                                                                                                                                                                           
Format+EA747          adc     eax, 0                       EAX=6 CF=0 PF=1 SF=0                                                                                                                                                                                             
Format+EA74A          pop     edi                          EDI=12F9E2 ESP=12F498                                                                                                                                                                                            
Format+EA74B          or      ebp, eax                     EBP=6                                                                                                                                                                                                            
Format+EA74D          jz      loc_3013B3A6                                                                                                                                                                                                                                  
Format+EA753          add     eax, 30h ; '0'               EAX=36                                                                                                                                                                                                           
Format+EA756          mov     [edi], al                                                                                                                                                                                                                                     
Format+EA758          mov     byte ptr [edi+1], 0                                                                                                                                                                                                                           
Format+EA75C          add     edi, 2                       EDI=12F9E4                                                                                                                                                                                                       
Format+EA75F          dec     ecx                          ECX=E PF=0                                                                                                                                                                                                       
Format+EA760          jnz     short loc_30150A6E                                                                                                                                                                                                                            
Format:loc_30150A6E   push    edi                          ESP=12F494                                                                                                                                                                                                       
Format+EA72B          xor     eax, eax                     EAX=0 PF=1 ZF=1                                                                                                                                                                                                  
Format+EA72D          mov     edi, esi                     EDI=8DBF487F                                                                                                                                                                                                     
Format+EA72F          mov     edx, ebx                     EDX=CB93A238                                                                                                                                                                                                     
Format+EA731          shld    eax, esi, 3                  EAX=4 PF=0 AF=1 ZF=0                                                                                                                                                                                             
Format+EA735          shld    esi, ebx, 3                  ESI=6DFA43FE                                                                                                                                                                                                     
Format+EA739          shl     ebx, 3                       EBX=5C9D11C0 PF=1                                                                                                                                                                                                
Format+EA73C          add     ebx, edx                     EBX=2830B3F8 CF=1 PF=0 AF=0                                                                                                                                                                                      
Format+EA73E          adc     esi, edi                     ESI=FBB98C7E CF=0 PF=1 AF=1 SF=1                                                                                                                                                                                 
Format+EA740          adc     eax, 0                       PF=0 AF=0 SF=0                                                                                                                                                                                                   
Format+EA743          add     ebx, edx                     EBX=F3C45630 PF=1 AF=1 SF=1                                                                                                                                                                                      
Format+EA745          adc     esi, edi                     ESI=8978D4FD CF=1 PF=0                                                                                                                                                                                           
Format+EA747          adc     eax, 0                       EAX=5 CF=0 PF=1 AF=0 SF=0                                                                                                                                                                                        
Format+EA74A          pop     edi                          EDI=12F9E4 ESP=12F498                                                                                                                                                                                            
Format+EA74B          or      ebp, eax                     EBP=7 PF=0                                                                                                                                                                                                       
Format+EA74D          jz      loc_3013B3A6                                                                                                                                                                                                                                  
Format+EA753          add     eax, 30h ; '0'               EAX=35 PF=1                                                                                                                                                                                                      
Format+EA756          mov     [edi], al                                                                                                                                                                                                                                     
Format+EA758          mov     byte ptr [edi+1], 0                                                                                                                                                                                                                           
Format+EA75C          add     edi, 2                       EDI=12F9E6 PF=0                                                                                                                                                                                                  
Format+EA75F          dec     ecx                          ECX=D                                                                                                                                                                                                            
Format+EA760          jnz     short loc_30150A6E                                                                                                                                                                                                                            
Format:loc_30150A6E   push    edi                          ESP=12F494                                                                                                                                                                                                       
Format+EA72B          xor     eax, eax                     EAX=0 PF=1 ZF=1                                                                                                                                                                                                  
Format+EA72D          mov     edi, esi                     EDI=8978D4FD                                                                                                                                                                                                     
Format+EA72F          mov     edx, ebx                     EDX=F3C45630                                                                                                                                                                                                     
Format+EA731          shld    eax, esi, 3                  EAX=4 PF=0 AF=1 ZF=0                                                                                                                                                                                             
Format+EA735          shld    esi, ebx, 3                  ESI=4BC6A7EF                                                                                                                                                                                                     
Format+EA739          shl     ebx, 3                       EBX=9E22B180 CF=1 SF=1                                                                                                                                                                                           
Format+EA73C          add     ebx, edx                     EBX=91E707B0 AF=0                                                                                                                                                                                                
Format+EA73E          adc     esi, edi                     ESI=D53F7CED CF=0 PF=1 AF=1                                                                                                                                                                                      
Format+EA740          adc     eax, 0                       PF=0 AF=0 SF=0                                                                                                                                                                                                   
Format+EA743          add     ebx, edx                     EBX=85AB5DE0 CF=1 SF=1                                                                                                                                                                                           
Format+EA745          adc     esi, edi                     ESI=5EB851EB PF=1 AF=1 SF=0 OF=1                                                                                                                                                                                 
Format+EA747          adc     eax, 0                       EAX=5 CF=0 AF=0 OF=0                                                                                                                                                                                             
Format+EA74A          pop     edi                          EDI=12F9E6 ESP=12F498                                                                                                                                                                                            
Format+EA74B          or      ebp, eax                     PF=0                                                                                                                                                                                                             
Format+EA74D          jz      loc_3013B3A6                                                                                                                                                                                                                                  
Format+EA753          add     eax, 30h ; '0'               EAX=35 PF=1                                                                                                                                                                                                      
Format+EA756          mov     [edi], al                                                                                                                                                                                                                                     
Format+EA758          mov     byte ptr [edi+1], 0                                                                                                                                                                                                                           
Format+EA75C          add     edi, 2                       EDI=12F9E8                                                                                                                                                                                                       
Format+EA75F          dec     ecx                          ECX=C                                                                                                                                                                                                            
Format+EA760          jnz     short loc_30150A6E                                                                                                                                                                                                                            
Format:loc_30150A6E   push    edi                          ESP=12F494                                                                                                                                                                                                       
Format+EA72B          xor     eax, eax                     EAX=0 ZF=1                                                                                                                                                                                                       
Format+EA72D          mov     edi, esi                     EDI=5EB851EB                                                                                                                                                                                                     
Format+EA72F          mov     edx, ebx                     EDX=85AB5DE0                                                                                                                                                                                                     
Format+EA731          shld    eax, esi, 3                  EAX=2 PF=0 AF=1 ZF=0                                                                                                                                                                                             
Format+EA735          shld    esi, ebx, 3                  ESI=F5C28F5C PF=1 SF=1 OF=1                                                                                                                                                                                      
Format+EA739          shl     ebx, 3                       EBX=2D5AEF00 SF=0 OF=0                                                                                                                                                                                           
Format+EA73C          add     ebx, edx                     EBX=B3064CE0 PF=0 AF=0 SF=1                                                                                                                                                                                      
Format+EA73E          adc     esi, edi                     ESI=547AE147 CF=1 PF=1 AF=1 SF=0                                                                                                                                                                                 
Format+EA740          adc     eax, 0                       EAX=3 CF=0 AF=0                                                                                                                                                                                                  
Format+EA743          add     ebx, edx                     EBX=38B1AAC0 CF=1 OF=1                                                                                                                                                                                           
Format+EA745          adc     esi, edi                     ESI=B3333333 CF=0 AF=1 SF=1                                                                                                                                                                                      
Format+EA747          adc     eax, 0                       AF=0 SF=0 OF=0                                                                                                                                                                                                   
Format+EA74A          pop     edi                          EDI=12F9E8 ESP=12F498                                                                                                                                                                                            
Format+EA74B          or      ebp, eax                     PF=0                                                                                                                                                                                                             
Format+EA74D          jz      loc_3013B3A6                                                                                                                                                                                                                                  
Format+EA753          add     eax, 30h ; '0'               EAX=33 PF=1                                                                                                                                                                                                      
Format+EA756          mov     [edi], al                                                                                                                                                                                                                                     
Format+EA758          mov     byte ptr [edi+1], 0                                                                                                                                                                                                                           
Format+EA75C          add     edi, 2                       EDI=12F9EA PF=0  
// ??? rest?

// run for 65535.5 = 850*77.1 + 0.5 - remaining byte value 0x40E FF FE FF FF FF FF FF
ST0=-1.9041136907240089773e-615 ST1= 0.0 ST2= 0.0 ST3= 1.0 ST4=-4.194304e6 ST5= 1.0 ST6= 0.0 ST7= 0.0 CTRL=137F CS=1B DS=23 ES=23 FS=3B GS=0 SS=23 
EAX=FFFE EBX=FFED061E ECX=F EDX=12F4C0 ESI=12F548 EDI=12F9E2 EBP=12F4C4 ESP=12F49C EFL=202  
Format              mov     dword ptr [edi+1Eh], 0                                                                                                                                                                                                                                                              
Format+7            mov     eax, [esi+4]                         EAX=40EFFFEF                                                                                                                                                                                                                                   
Format+A            mov     edx, eax                             EDX=40EFFFEF                                                                                                                                                                                                                                   
Format+C            and     eax, 7FF00000h                       EAX=40E00000 PF=1                                                                                                                                                                                                                              
Format+11           jz      nullsub_33                                                                                                                                                                                                                                                                          
Format+17           shr     eax, 14h                             EAX=40E PF=0 AF=1                                                                                                                                                                                                                              
Format+1A           sub     eax, 3FEh                            EAX=10 AF=0                                                                                                                                                                                                                                    
Format+1F           mov     ebx, eax                             EBX=10                                                                                                                                                                                                                                         
Format+21           imul    eax, 9A21h                           EAX=9A210                                                                                                                                                                                                                                      
Format+27           sar     eax, 1                               EAX=4D108 AF=1                                                                                                                                                                                                                                 
Format+29           and     edx, 80000000h                       EDX=0 PF=1 AF=0 ZF=1                                                                                                                                                                                                                           
Format+2F           add     eax, 40010000h                       EAX=4005D108 PF=0 ZF=0                                                                                                                                                                                                                         
Format+34           and     eax, 0FFFF0000h                      EAX=40050000 PF=1                                                                                                                                                                                                                              
Format+39           or      edx, eax                             EDX=40050000                                                                                                                                                                                                                                   
Format+3B           mov     [edi+1Eh], edx                                                                                                                                                                                                                                                                      
Format+3E           shr     eax, 10h                             EAX=4005 AF=1                                                                                                                                                                                                                                  
Format+41           sub     eax, 4000h                           EAX=5 AF=0                                                                                                                                                                                                                                     
Format+46           or      ebx, ebx                             PF=0                                                                                                                                                                                                                                           
Format+48           jl      loc_3013C232                                                                                                                                                                                                                                                                        
Format+4E           cmp     ebx, 10h                             PF=1 ZF=1                                                                                                                                                                                                                                      
Format+51           jle     short loc_3006639C                                                                                                                                                                                                                                                                  
Format:loc_3006639C push    edi                                  ESP=12F498                                                                                                                                                                                                                                     
Format+59           push    ecx                                  ESP=12F494                                                                                                                                                                                                                                     
Format+5A           mov     edx, [esi]                           EDX=FFFFFFFF                                                                                                                                                                                                                                   
Format+5C           mov     esi, [esi+4]                         ESI=40EFFFEF                                                                                                                                                                                                                                   
Format+5F           xchg    eax, esi                             EAX=40EFFFEF ESI=5                                                                                                                                                                                                                             
Format+60           shl     esi, 2                               ESI=14 AF=1 ZF=0                                                                                                                                                                                                                               
Format+63           and     eax, 0FFFFFh                         EAX=FFFEF PF=0 AF=0                                                                                                                                                                                                                            
Format+68           or      eax, 100000h                         EAX=1FFFEF                                                                                                                                                                                                                                     
Format+6D           mov     ecx, 15h                             ECX=15                                                                                                                                                                                                                                         
Format+72           sub     ecx, ebx                             ECX=5 PF=1                                                                                                                                                                                                                                     
Format+74           mov     ebx, eax                             EBX=1FFFEF                                                                                                                                                                                                                                     
Format+76           shr     eax, cl                              EAX=FFFF AF=1                                                                                                                                                                                                                                  
Format+78           neg     cl                                   ECX=FB CF=1 PF=0 SF=1                                                                                                                                                                                                                          
Format+7A           shld    ebx, edx, cl                         EBX=7FFFFFFF PF=1 SF=0 OF=1                                                                                                                                                                                                                    
Format+7D           shl     edx, cl                              EDX=F8000000 SF=1 OF=0                                                                                                                                                                                                                         
Format+7F           mov     ecx, edx                             ECX=F8000000                                                                                                                                                                                                                                   
Format+81           sub     esi, 4                               ESI=10 CF=0 PF=0 AF=0 SF=0                                                                                                                                                                                                                     
Format+84           cmp     eax, ds:dword_301102D0[esi]                                                                                                                                                                                                                                                         
Format+8A           jnb     short loc_300663D7                                                                                                                                                                                                                                                                  
Format:loc_300663D7 test    ecx, ecx                             PF=1 SF=1                                                                                                                                                                                                                                      
Format+95           jz      loc_300664A3                                                                                                                                                                                                                                                                        
Format+9B           add     ecx, dword ptr ds:byte_300663F7[esi] ECX=2EF9BFB3 CF=1 PF=0 SF=0                                                                                                                                                                                                                    
Format+A1           adc     ebx, 0                               EBX=80000000 CF=0 PF=1 AF=1 SF=1 OF=1                                                                                                                                                                                                          
Format+A4           jb      loc_3013E477                                                                                                                                                                                                                                                                        
Format+AA           jmp     loc_300664A3                                                                                                                                                                                                                                                                        
Format:loc_300664A3 or      esi, esi                             PF=0 AF=0 SF=0 OF=0                                                                                                                                                                                                                            
Format+161          jl      loc_30218285                                                                                                                                                                                                                                                                        
Format+167          jz      short loc_300664B2                                                                                                                                                                                                                                                                  
Format+169          jmp     Digits                                                                                                                                                                                                                                                                        
Format:Digits xor     edx, edx                             EDX=0 PF=1 ZF=1                                                                                                                                                                                                                                
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=6 EDX=159F PF=0 AF=1 ZF=0                                                                                                                                                                                                                  
Format+2FB          or      al, 30h                              EAX=36 PF=1 AF=0                                                                                                                                                                                                                               
Format+2FD          mov     [edi], al                                                                                                                                                                                                                                                                           
Format+2FF          mov     byte ptr [edi+1], 0                                                                                                                                                                                                                                                                 
Format+303          add     edi, 2                               EDI=12F9E4                                                                                                                                                                                                                                     
Format+306          or      edx, edx                                                                                                                                                                                                                                                                            
Format+308          jz      loc_300664BD                                                                                                                                                                                                                                                                        
Format+30E          mov     eax, edx                             EAX=159F                                                                                                                                                                                                                                       
Format+310          sub     esi, 4                               ESI=C AF=1                                                                                                                                                                                                                                     
Format+313          ja      short Digits                                                                                                                                                                                                                                                                  
Format:Digits xor     edx, edx                             EDX=0 AF=0 ZF=1                                                                                                                                                                                                                                
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=5 EDX=217 PF=0 AF=1 ZF=0                                                                                                                                                                                                                   
Format+2FB          or      al, 30h                              EAX=35 PF=1 AF=0                                                                                                                                                                                                                               
Format+2FD          mov     [edi], al                                                                                                                                                                                                                                                                           
Format+2FF          mov     byte ptr [edi+1], 0                                                                                                                                                                                                                                                                 
Format+303          add     edi, 2                               EDI=12F9E6 PF=0                                                                                                                                                                                                                                
Format+306          or      edx, edx                             PF=1                                                                                                                                                                                                                                           
Format+308          jz      loc_300664BD                                                                                                                                                                                                                                                                        
Format+30E          mov     eax, edx                             EAX=217                                                                                                                                                                                                                                        
Format+310          sub     esi, 4                               ESI=8 PF=0                                                                                                                                                                                                                                     
Format+313          ja      short Digits                                                                                                                                                                                                                                                                  
Format:Digits xor     edx, edx                             EDX=0 PF=1 ZF=1                                                                                                                                                                                                                                
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=5 EDX=23 PF=0 AF=1 ZF=0                                                                                                                                                                                                                    
Format+2FB          or      al, 30h                              EAX=35 PF=1 AF=0                                                                                                                                                                                                                               
Format+2FD          mov     [edi], al                                                                                                                                                                                                                                                                           
Format+2FF          mov     byte ptr [edi+1], 0                                                                                                                                                                                                                                                                 
Format+303          add     edi, 2                               EDI=12F9E8                                                                                                                                                                                                                                     
Format+306          or      edx, edx                             PF=0                                                                                                                                                                                                                                           
Format+308          jz      loc_300664BD                                                                                                                                                                                                                                                                        
Format+30E          mov     eax, edx                             EAX=23                                                                                                                                                                                                                                         
Format+310          sub     esi, 4                               ESI=4                                                                                                                                                                                                                                          
Format+313          ja      short Digits                                                                                                                                                                                                                                                                  
Format:Digits xor     edx, edx                             EDX=0 PF=1 ZF=1                                                                                                                                                                                                                                
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=3 EDX=5 PF=0 AF=1 ZF=0                                                                                                                                                                                                                     
Format+2FB          or      al, 30h                              EAX=33 PF=1 AF=0                                                                                                                                                                                                                               
Format+2FD          mov     [edi], al                                                                                                                                                                                                                                                                           
Format+2FF          mov     byte ptr [edi+1], 0                                                                                                                                                                                                                                                                 
Format+303          add     edi, 2                               EDI=12F9EA PF=0                                                                                                                                                                                                                                
Format+306          or      edx, edx                             PF=1                                                                                                                                                                                                                                           
Format+308          jz      loc_300664BD                                                                                                                                                                                                                                                                        
Format+30E          mov     eax, edx                             EAX=5                                                                                                                                                                                                                                          
Format+310          sub     esi, 4                               ESI=0 ZF=1                                                                                                                                                                                                                                     
Format+313          ja      short Digits                                                                                                                                                                                                                                                                  
Format+315          test    eax, 0FFh                            ZF=0                                                                                                                                                                                                                                           
Format+31A          jz      loc_300664BD                                                                                                                                                                                                                                                                        
Format+320          jmp     loc_300664B2                                                                                                                                                                                                                                                                        
Format:loc_300664B2 or      al, 30h                              EAX=35                                                                                                                                                                                                                                         
Format+170          mov     [edi], al                                                                                                                                                                                                                                                                           
Format+172          mov     byte ptr [edi+1], 0                                                                                                                                                                                                                                                                 
Format+176          add     edi, 2                               EDI=12F9EC PF=0                                                                                                                                                                                                                                
Format:loc_300664BD mov     eax, ebx                             EAX=80000000                                                                                                                                                                                                                                   
Format+17B          or      eax, ecx                             EAX=AEF9BFB3 SF=1                                                                                                                                                                                                                              
Format+17D          jnz     loc_30150AD8                                                                                                                                                                                                                                                                        
Format:loc_30150AD8 shr     esi, 2                               PF=1 AF=1 ZF=1 SF=0                                                                                                                                                                                                                            
Format+EA797        xchg    ecx, esi                             ECX=0 ESI=2EF9BFB3                                                                                                                                                                                                                             
Format+EA799        xchg    esi, ebx                             EBX=2EF9BFB3 ESI=80000000                                                                                                                                                                                                                      
Format+EA79B        mov     eax, offset unk_300030               EAX=300030                                                                                                                                                                                                                                     
Format+EA7A0        shr     ecx, 1                                                                                                                                                                                                                                                                              
Format+EA7A2        rep stosd                                                                                                                                                                                                                                                                                   
Format+EA7A4        jb      loc_3013CCE3                                                                                                                                                                                                                                                                        
Format:loc_30150AEE pop     ecx                                  ECX=F ESP=12F498                                                                                                                                                                                                                               
Format+EA7AB        pop     edx                                  EDX=12F9E2 ESP=12F49C                                                                                                                                                                                                                          
Format+EA7AC        push    edx                                  ESP=12F498                                                                                                                                                                                                                                     
Format+EA7AD        add     edx, 1Eh                             EDX=12FA00 ZF=0                                                                                                                                                                                                                                
Format+EA7B0        sub     edx, edi                             EDX=14                                                                                                                                                                                                                                         
Format+EA7B2        shr     edx, 1                               EDX=A                                                                                                                                                                                                                                          
Format+EA7B4        cmp     edx, ecx                             CF=1 PF=0 SF=1                                                                                                                                                                                                                                 
Format+EA7B6        jnb     short loc_30150AFE                                                                                                                                                                                                                                                                  
Format+EA7B8        mov     ecx, edx                             ECX=A                                                                                                                                                                                                                                          
Format:loc_30150AFE test    ecx, ecx                             CF=0 PF=1 AF=0 SF=0                                                                                                                                                                                                                            
Format+EA7BC        jz      short loc_30150AA6                                                                                                                                                                                                                                                                  
Format+EA7BE        mov     ebp, 1                               EBP=1                                                                                                                                                                                                                                          
Format+EA7C3        jmp     loc_30150A6E                                                                                                                                                                                                                                                                        
Format:loc_30150A6E push    edi                                  ESP=12F494                                                                                                                                                                                                                                     
Format+EA72B        xor     eax, eax                             EAX=0 ZF=1                                                                                                                                                                                                                                     
Format+EA72D        mov     edi, esi                             EDI=80000000                                                                                                                                                                                                                                   
Format+EA72F        mov     edx, ebx                             EDX=2EF9BFB3                                                                                                                                                                                                                                   
Format+EA731        shld    eax, esi, 3                          EAX=4 PF=0 AF=1 ZF=0                                                                                                                                                                                                                           
Format+EA735        shld    esi, ebx, 3                          ESI=1                                                                                                                                                                                                                                          
Format+EA739        shl     ebx, 3                               EBX=77CDFD98 CF=1 OF=1                                                                                                                                                                                                                         
Format+EA73C        add     ebx, edx                             EBX=A6C7BD4B CF=0 PF=1 AF=0 SF=1                                                                                                                                                                                                               
Format+EA73E        adc     esi, edi                             ESI=80000001 PF=0 OF=0                                                                                                                                                                                                                         
Format+EA740        adc     eax, 0                               SF=0                                                                                                                                                                                                                                           
Format+EA743        add     ebx, edx                             EBX=D5C17CFE SF=1                                                                                                                                                                                                                              
Format+EA745        adc     esi, edi                             ESI=1 CF=1 SF=0 OF=1                                                                                                                                                                                                                           
Format+EA747        adc     eax, 0                               EAX=5 CF=0 PF=1 OF=0                                                                                                                                                                                                                           
Format+EA74A        pop     edi                                  EDI=12F9EC ESP=12F498                                                                                                                                                                                                                          
Format+EA74B        or      ebp, eax                             EBP=5                                                                                                                                                                                                                                          
Format+EA74D        jz      loc_3013B3A6                                                                                                                                                                                                                                                                        
Format+EA753        add     eax, 30h ; '0'                       EAX=35                                                                                                                                                                                                                                         
Format+EA756        mov     [edi], al                                                                                                                                                                                                                                                                           
Format+EA758        mov     byte ptr [edi+1], 0                                                                                                                                                                                                                                                                 
Format+EA75C        add     edi, 2                               EDI=12F9EE                                                                                                                                                                                                                                     
Format+EA75F        dec     ecx                                  ECX=9                                                                                                                                                                                                                                          
Format+EA760        jnz     short loc_30150A6E                                                                                                                                                                                                                                                                  
Format:loc_30150A6E push    edi                                  ESP=12F494                                                                                                                                                                                                                                     
Format+EA72B        xor     eax, eax                             EAX=0 ZF=1                                                                                                                                                                                                                                     
Format+EA72D        mov     edi, esi                             EDI=1                                                                                                                                                                                                                                          
Format+EA72F        mov     edx, ebx                             EDX=D5C17CFE                                                                                                                                                                                                                                   
Format+EA731        shld    eax, esi, 3                          AF=1                                                                                                                                                                                                                                           
Format+EA735        shld    esi, ebx, 3                          ESI=E PF=0 ZF=0                                                                                                                                                                                                                                
Format+EA739        shl     ebx, 3                               EBX=AE0BE7F0 PF=1 SF=1 OF=1                                                                                                                                                                                                                    
Format+EA73C        add     ebx, edx                             EBX=83CD64EE CF=1 AF=0 OF=0                                                                                                                                                                                                                    
Format+EA73E        adc     esi, edi                             ESI=10 CF=0 PF=0 AF=1 SF=0                                                                                                                                                                                                                     
Format+EA740        adc     eax, 0                               PF=1 AF=0 ZF=1                                                                                                                                                                                                                                 
Format+EA743        add     ebx, edx                             EBX=598EE1EC CF=1 PF=0 AF=1 ZF=0 OF=1                                                                                                                                                                                                          
Format+EA745        adc     esi, edi                             ESI=12 CF=0 PF=1 AF=0 OF=0                                                                                                                                                                                                                     
Format+EA747        adc     eax, 0                               ZF=1                                                                                                                                                                                                                                           
Format+EA74A        pop     edi                                  EDI=12F9EE ESP=12F498                                                                                                                                                                                                                          
Format+EA74B        or      ebp, eax                             ZF=0                                                                                                                                                                                                                                           
Format+EA74D        jz      loc_3013B3A6                                                                                                                                                                                                                                                                        
Format+EA753        add     eax, 30h ; '0'                       EAX=30                                                                                                                                                                                                                                         
Format+EA756        mov     [edi], al                                                                                                                                                                                                                                                                           
Format+EA758        mov     byte ptr [edi+1], 0                                                                                                                                                                                                                                                                 
Format+EA75C        add     edi, 2                               EDI=12F9F0 AF=1                                                                                                                                                                                                                                
Format+EA75F        dec     ecx                                  ECX=8 PF=0 AF=0                                                                                                                                                                                                                                
Format+EA760        jnz     short loc_30150A6E                                                                                                                                                                                                                                                                  
Format:loc_30150A6E push    edi                                  ESP=12F494                                                                                                                                                                                                                                     
Format+EA72B        xor     eax, eax                             EAX=0 PF=1 ZF=1                                                                                                                                                                                                                                
Format+EA72D        mov     edi, esi                             EDI=12                                                                                                                                                                                                                                         
Format+EA72F        mov     edx, ebx                             EDX=598EE1EC                                                                                                                                                                                                                                   
Format+EA731        shld    eax, esi, 3                          AF=1                                                                                                                                                                                                                                           
Format+EA735        shld    esi, ebx, 3                          ESI=92 PF=0 ZF=0                                                                                                                                                                                                                               
Format+EA739        shl     ebx, 3                               EBX=CC770F60 PF=1 SF=1 OF=1                                                                                                                                                                                                                    
Format+EA73C        add     ebx, edx                             EBX=2605F14C CF=1 PF=0 AF=0 SF=0 OF=0                                                                                                                                                                                                          
Format+EA73E        adc     esi, edi                             ESI=A5 CF=0 PF=1                                                                                                                                                                                                                               
Format+EA740        adc     eax, 0                               ZF=1                                                                                                                                                                                                                                           
Format+EA743        add     ebx, edx                             EBX=7F94D338 PF=0 AF=1 ZF=0                                                                                                                                                                                                                    
Format+EA745        adc     esi, edi                             ESI=B7 PF=1 AF=0                                                                                                                                                                                                                               
Format+EA747        adc     eax, 0                               ZF=1                                                                                                                                                                                                                                           
Format+EA74A        pop     edi                                  EDI=12F9F0 ESP=12F498                                                                                                                                                                                                                          
Format+EA74B        or      ebp, eax                             ZF=0                                                                                                                                                                                                                                           
Format+EA74D        jz      loc_3013B3A6                                                                                                                                                                                                                                                                        
Format+EA753        add     eax, 30h ; '0'                       EAX=30                                                                                                                                                                                                                                         
Format+EA756        mov     [edi], al                                                                                                                                                                                                                                                                           
Format+EA758        mov     byte ptr [edi+1], 0                                                                                                                                                                                                                                                                 
Format+EA75C        add     edi, 2                               EDI=12F9F2 PF=0                                                                                                                                                                                                                                
Format+EA75F        dec     ecx                                  ECX=7                                                                                                                                                                                                                                          
Format+EA760        jnz     short loc_30150A6E                                                                                                                                                                                                                                                                  
Format:loc_30150A6E push    edi                                  ESP=12F494                                                                                                                                                                                                                                     
Format+EA72B        xor     eax, eax                             EAX=0 PF=1 ZF=1                                                                                                                                                                                                                                
Format+EA72D        mov     edi, esi                             EDI=B7                                                                                                                                                                                                                                         
Format+EA72F        mov     edx, ebx                             EDX=7F94D338                                                                                                                                                                                                                                   
Format+EA731        shld    eax, esi, 3                          AF=1                                                                                                                                                                                                                                           
Format+EA735        shld    esi, ebx, 3                          ESI=5BB ZF=0                                                                                                                                                                                                                                   
Format+EA739        shl     ebx, 3                               EBX=FCA699C0 CF=1 SF=1                                                                                                                                                                                                                         
Format+EA73C        add     ebx, edx                             EBX=7C3B6CF8 PF=0 AF=0 SF=0                                                                                                                                                                                                                    
Format+EA73E        adc     esi, edi                             ESI=673 CF=0 AF=1                                                                                                                                                                                                                              
Format+EA740        adc     eax, 0                               PF=1 AF=0 ZF=1                                                                                                                                                                                                                                 
Format+EA743        add     ebx, edx                             EBX=FBD04030 AF=1 ZF=0 SF=


// 65536 - 2^(-35) - 2^(-36) - 2^(-37) does not fail
ST0= 1.0 ST1= 1.0 ST2= 0.0 ST3= 1.0 ST4= 1.0 ST5= 1.0 ST6= 0.0 ST7= 0.0 CTRL=137F CS=1B DS=23 ES=23 FS=3B GS=0 SS=23 
EAX=FFFE EBX=FFED061E ECX=F EDX=12F4C0 ESI=12F548 EDI=12F9E2 EBP=12F4C4 ESP=12F49C EFL=202  
Format              mov     dword ptr [edi+1Eh], 0                                                                                                                                                                                                                                
Format+7            mov     eax, [esi+4]                         EAX=40EFFFFF                                                                                                                                                                                                     
Format+A            mov     edx, eax                             EDX=40EFFFFF                                                                                                                                                                                                     
Format+C            and     eax, 7FF00000h                       EAX=40E00000 PF=1                                                                                                                                                                                                
Format+11           jz      nullsub_33                                                                                                                                                                                                                                            
Format+17           shr     eax, 14h                             EAX=40E PF=0 AF=1                                                                                                                                                                                                
Format+1A           sub     eax, 3FEh                            EAX=10 AF=0                                                                                                                                                                                                      
Format+1F           mov     ebx, eax                             EBX=10                                                                                                                                                                                                           
Format+21           imul    eax, 9A21h                           EAX=9A210                                                                                                                                                                                                        
Format+27           sar     eax, 1                               EAX=4D108 AF=1                                                                                                                                                                                                   
Format+29           and     edx, 80000000h                       EDX=0 PF=1 AF=0 ZF=1                                                                                                                                                                                             
Format+2F           add     eax, 40010000h                       EAX=4005D108 PF=0 ZF=0                                                                                                                                                                                           
Format+34           and     eax, 0FFFF0000h                      EAX=40050000 PF=1                                                                                                                                                                                                
Format+39           or      edx, eax                             EDX=40050000                                                                                                                                                                                                     
Format+3B           mov     [edi+1Eh], edx                                                                                                                                                                                                                                        
Format+3E           shr     eax, 10h                             EAX=4005 AF=1                                                                                                                                                                                                    
Format+41           sub     eax, 4000h                           EAX=5 AF=0                                                                                                                                                                                                       
Format+46           or      ebx, ebx                             PF=0                                                                                                                                                                                                             
Format+48           jl      loc_3013C232                                                                                                                                                                                                                                          
Format+4E           cmp     ebx, 10h                             PF=1 ZF=1                                                                                                                                                                                                        
Format+51           jle     short loc_3006639C                                                                                                                                                                                                                                    
Format:loc_3006639C push    edi                                  ESP=12F498                                                                                                                                                                                                       
Format+59           push    ecx                                  ESP=12F494                                                                                                                                                                                                       
Format+5A           mov     edx, [esi]                           EDX=FFFFFFF9                                                                                                                                                                                                     
Format+5C           mov     esi, [esi+4]                         ESI=40EFFFFF                                                                                                                                                                                                     
Format+5F           xchg    eax, esi                             EAX=40EFFFFF ESI=5                                                                                                                                                                                               
Format+60           shl     esi, 2                               ESI=14 AF=1 ZF=0                                                                                                                                                                                                 
Format+63           and     eax, 0FFFFFh                         EAX=FFFFF AF=0                                                                                                                                                                                                   
Format+68           or      eax, 100000h                         EAX=1FFFFF                                                                                                                                                                                                       
Format+6D           mov     ecx, 15h                             ECX=15                                                                                                                                                                                                           
Format+72           sub     ecx, ebx                             ECX=5                                                                                                                                                                                                            
Format+74           mov     ebx, eax                             EBX=1FFFFF                                                                                                                                                                                                       
Format+76           shr     eax, cl                              EAX=FFFF CF=1 AF=1                                                                                                                                                                                               
Format+78           neg     cl                                   ECX=FB PF=0 SF=1                                                                                                                                                                                                 
Format+7A           shld    ebx, edx, cl                         EBX=FFFFFFFF PF=1                                                                                                                                                                                                
Format+7D           shl     edx, cl                              EDX=C8000000                                                                                                                                                                                                     
Format+7F           mov     ecx, edx                             ECX=C8000000                                                                                                                                                                                                     
Format+81           sub     esi, 4                               ESI=10 CF=0 PF=0 AF=0 SF=0                                                                                                                                                                                       
Format+84           cmp     eax, ds:dword_301102D0[esi]                                                                                                                                                                                                                           
Format+8A           jnb     short loc_300663D7                                                                                                                                                                                                                                    
Format:loc_300663D7 test    ecx, ecx                             PF=1 SF=1                                                                                                                                                                                                        
Format+95           jz      loc_300664A3                                                                                                                                                                                                                                          
Format+9B           add     ecx, dword ptr ds:byte_300663F7[esi] ECX=FEF9BFB3 PF=0                                                                                                                                                                                                
Format+A1           adc     ebx, 0                               PF=1                                                                                                                                                                                                             
Format+A4           jb      loc_3013E477                                                                                                                                                                                                                                          
Format+AA           jmp     loc_300664A3                                                                                                                                                                                                                                          
Format:loc_300664A3 or      esi, esi                             PF=0 SF=0                                                                                                                                                                                                        
Format+161          jl      loc_30218285                                                                                                                                                                                                                                          
Format+167          jz      short loc_300664B2                                                                                                                                                                                                                                    
Format+169          jmp     Digits                                                                                                                                                                                                                                          
Format:Digits xor     edx, edx                             EDX=0 PF=1 ZF=1                                                                                                                                                                                                  
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=6 EDX=159F PF=0 AF=1 ZF=0                                                                                                                                                                                    
Format+2FB          or      al, 30h                              EAX=36 PF=1 AF=0                                                                                                                                                                                                 
Format+2FD          mov     [edi], al                                                                                                                                                                                                                                             
Format+2FF          mov     byte ptr [edi+1], 0                                                                                                                                                                                                                                   
Format+303          add     edi, 2                               EDI=12F9E4                                                                                                                                                                                                       
Format+306          or      edx, edx                                                                                                                                                                                                                                              
Format+308          jz      loc_300664BD                                                                                                                                                                                                                                          
Format+30E          mov     eax, edx                             EAX=159F                                                                                                                                                                                                         
Format+310          sub     esi, 4                               ESI=C AF=1                                                                                                                                                                                                       
Format+313          ja      short Digits                                                                                                                                                                                                                                    
Format:Digits xor     edx, edx                             EDX=0 AF=0 ZF=1                                                                                                                                                                                                  
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=5 EDX=217 PF=0 AF=1 ZF=0                                                                                                                                                                                     
Format+2FB          or      al, 30h                              EAX=35 PF=1 AF=0                                                                                                                                                                                                 
Format+2FD          mov     [edi], al                                                                                                                                                                                                                                             
Format+2FF          mov     byte ptr [edi+1], 0                                                                                                                                                                                                                                   
Format+303          add     edi, 2                               EDI=12F9E6 PF=0                                                                                                                                                                                                  
Format+306          or      edx, edx                             PF=1                                                                                                                                                                                                             
Format+308          jz      loc_300664BD                                                                                                                                                                                                                                          
Format+30E          mov     eax, edx                             EAX=217                                                                                                                                                                                                          
Format+310          sub     esi, 4                               ESI=8 PF=0                                                                                                                                                                                                       
Format+313          ja      short Digits                                                                                                                                                                                                                                    
Format:Digits xor     edx, edx                             EDX=0 PF=1 ZF=1                                                                                                                                                                                                  
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=5 EDX=23 PF=0 AF=1 ZF=0                                                                                                                                                                                      
Format+2FB          or      al, 30h                              EAX=35 PF=1 AF=0                                                                                                                                                                                                 
Format+2FD          mov     [edi], al                                                                                                                                                                                                                                             
Format+2FF          mov     byte ptr [edi+1], 0                                                                                                                                                                                                                                   
Format+303          add     edi, 2                               EDI=12F9E8                                                                                                                                                                                                       
Format+306          or      edx, edx                             PF=0                                                                                                                                                                                                             
Format+308          jz      loc_300664BD                                                                                                                                                                                                                                          
Format+30E          mov     eax, edx                             EAX=23                                                                                                                                                                                                           
Format+310          sub     esi, 4                               ESI=4                                                                                                                                                                                                            
Format+313          ja      short Digits                                                                                                                                                                                                                                    
Format:Digits xor     edx, edx                             EDX=0 PF=1 ZF=1                                                                                                                                                                                                  
Format:loc_30066639 div     ds:dword_301102D0[esi]               EAX=3 EDX=5 PF=0 AF=1 ZF=0                                                                                                                                                                                       
Format+2FB          or      al, 30h                              EAX=33 PF=1 AF=0                                                                                                                                                                                                 
Format+2FD          mov     [edi], al                                                                                                                                                                                                                                             
Format+2FF          mov     byte ptr [edi+1], 0                                                                                                                                                                                                                                   
Format+303          add     edi, 2                               EDI=12F9EA PF=0                                                                                                                                                                                                  
Format+306          or      edx, edx                             PF=1                                                                                                                                                                                                             
Format+308          jz      loc_300664BD                                                                                                                                                                                                                                          
Format+30E          mov     eax, edx                             EAX=5                                                                                                                                                                                                            
Format+310          sub     esi, 4                               ESI=0 ZF=1                                                                                                                                                                                                       
Format+313          ja      short Digits                                                                                                                                                                                                                                    
Format+315          test    eax, 0FFh                            ZF=0                                                                                                                                                                                                             
Format+31A          jz      loc_300664BD                                                                                                                                                                                                                                          
Format+320          jmp     loc_300664B2                                                                                                                                                                                                                                          
Format:loc_300664B2 or      al, 30h                              EAX=35                                                                                                                                                                                                           
Format+170          mov     [edi], al                                                                                                                                                                                                                                             
Format+172          mov     byte ptr [edi+1], 0                                                                                                                                                                                                                                   
Format+176          add     edi, 2                               EDI=12F9EC PF=0                                                                                                                                                                                                  
Format:loc_300664BD mov     eax, ebx                             EAX=FFFFFFFF                                                                                                                                                                                                     
Format+17B          or      eax, ecx                             PF=1 SF=1                                                                                                                                                                                                        
Format+17D          jnz     loc_30150AD8                                                                                                                                                                                                                                          
Format:loc_30150AD8 shr     esi, 2                               AF=1 ZF=1 SF=0                                                                                                                                                                                                   
Format+EA797        xchg    ecx, esi                             ECX=0 ESI=FEF9BFB3                                                                                                                                                                                               
Format+EA799        xchg    esi, ebx                             EBX=FEF9BFB3 ESI=FFFFFFFF                                                                                                                                                                                        
Format+EA79B        mov     eax, offset unk_300030               EAX=300030                                                                                                                                                                                                       
Format+EA7A0        shr     ecx, 1                                                                                                                                                                                                                                                
Format+EA7A2        rep stosd                                                                                                                                                                                                                                                     
Format+EA7A4        jb      loc_3013CCE3                                                                                                                                                                                                                                          
Format:loc_30150AEE pop     ecx                                  ECX=F ESP=12F498                                                                                                                                                                                                 
Format+EA7AB        pop     edx                                  EDX=12F9E2 ESP=12F49C                                                                                                                                                                                            
Format+EA7AC        push    edx                                  ESP=12F498                                                                                                                                                                                                       
Format+EA7AD        add     edx, 1Eh                             EDX=12FA00 ZF=0                                                                                                                                                                                                  
Format+EA7B0        sub     edx, edi                             EDX=14                                                                                                                                                                                                           
Format+EA7B2        shr     edx, 1                               EDX=A                                                                                                                                                                                                            
Format+EA7B4        cmp     edx, ecx                             CF=1 PF=0 SF=1                                                                                                                                                                                                   
Format+EA7B6        jnb     short loc_30150AFE                                                                                                                                                                                                                                    
Format+EA7B8        mov     ecx, edx                             ECX=A                                                                                                                                                                                                            
Format:loc_30150AFE test    ecx, ecx                             CF=0 PF=1 AF=0 SF=0                                                                                                                                                                                              
Format+EA7BC        jz      short loc_30150AA6                                                                                                                                                                                                                                    
Format+EA7BE        mov     ebp, 1                               EBP=1                                                                                                                                                                                                            
Format+EA7C3        jmp     loc_30150A6E                                                                                                                                                                                                                                          
Format:loc_30150A6E push    edi                                  ESP=12F494                                                                                                                                                                                                       
Format+EA72B        xor     eax, eax                             EAX=0 ZF=1                                                                                                                                                                                                       
Format+EA72D        mov     edi, esi                             EDI=FFFFFFFF                                                                                                                                                                                                     
Format+EA72F        mov     edx, ebx                             EDX=FEF9BFB3                                                                                                                                                                                                     
Format+EA731        shld    eax, esi, 3                          EAX=7 PF=0 AF=1 ZF=0                                                                                                                                                                                             
Format+EA735        shld    esi, ebx, 3                          CF=1 PF=1 SF=1                                                                                                                                                                                                   
Format+EA739        shl     ebx, 3                               EBX=F7CDFD98 PF=0                                                                                                                                                                                                
Format+EA73C        add     ebx, edx                             EBX=F6C7BD4B PF=1 AF=0                                                                                                                                                                                           
Format+EA73E        adc     esi, edi                             AF=1                                                                                                                                                                                                             
Format+EA740        adc     eax, 0                               EAX=8 CF=0 PF=0 AF=0 SF=0                                                                                                                                                                                        
Format+EA743        add     ebx, edx                             EBX=F5C17CFE CF=1 SF=1                                                                                                                                                                                           
Format+EA745        adc     esi, edi                             PF=1 AF=1                                                                                                                                                                                                        
Format+EA747        adc     eax, 0                               EAX=9 CF=0 AF=0 SF=0                                                                                                                                                                                             
Format+EA74A        pop     edi                                  EDI=12F9EC ESP=12F498                                                                                                                                                                                            
Format+EA74B        or      ebp, eax                             EBP=9                                                                                                                                                                                                            
Format+EA74D        jz      loc_3013B3A6                                                                                                                                                                                                                                          
Format+EA753        add     eax, 30h ; '0'                       EAX=39                                                                                                                                                                                                           
Format+EA756        mov     [edi], al                                                                                                                                                                                                                                             
Format+EA758        mov     byte ptr [edi+1], 0                                                                                                                                                                                                                                   
Format+EA75C        add     edi, 2                               EDI=12F9EE                                                                                                                                                                                                       
Format+EA75F        dec     ecx                                  ECX=9                                                                                                                                                                                                            
Format+EA760        jnz     short loc_30150A6E                                                                                                                                                                                                                                    
Format:loc_30150A6E push    edi                                  ESP=12F494                                                                                                                                                                                                       
Format+EA72B        xor     eax, eax                             EAX=0 ZF=1                                                                                                                                                                                                       
Format+EA72D        mov     edi, esi                             EDI=FFFFFFFF                                                                                                                                                                                                     
Format+EA72F        mov     edx, ebx                             EDX=F5C17CFE                                                                                                                                                                                                     
Format+EA731        shld    eax, esi, 3                          EAX=7 PF=0 AF=1 ZF=0                                                                                                                                                                                             
Format+EA735        shld    esi, ebx, 3                          CF=1 PF=1 SF=1                                                                                                                                                                                                   
Format+EA739        shl     ebx, 3                               EBX=AE0BE7F0                                                                                                                                                                                                     
Format+EA73C        add     ebx, edx                             EBX=A3CD64EE AF=0                                                                                                                                                                                                
Format+EA73E        adc     esi, edi                             AF=1                                                                                                                                                                                                             
Format+EA740        adc     eax, 0                               EAX=8 CF=0 PF=0 AF=0 SF=0                                                                                                                                                                                        
Format+EA743        add     ebx, edx                             EBX=998EE1EC CF=1 AF=1 SF=1                                                                                                                                                                                      
Format+EA745        adc     esi, edi                             PF=1                                                                                                                                                                                                             
Format+EA747        adc     eax, 0                               EAX=9 CF=0 AF=0 SF=0                                                                                                                                                                                             
Format+EA74A        pop     edi                                  EDI=12F9EE ESP=12F498                                                                                                                                                                                            
Format+EA74B        or      ebp, eax                                                                                                                                                                                                                                              
Format+EA74D        jz      loc_3013B3A6                                                                                                                                                                                                                                          
Format+EA753        add     eax, 30h ; '0'                       EAX=39                                                                                                                                                                                                           
Format+EA756        mov     [edi], al                                                                                                                                                                                                                                             
Format+EA758        mov     byte ptr [edi+1], 0                                                                                                                                                                                                                                   
Format+EA75C        add     edi, 2                               EDI=12F9F0 AF=1                                                                                                                                                                                                  
Format+EA75F        dec     ecx                                  ECX=8 PF=0 AF=0                                                                                                                                                                                                  
Format+EA760        jnz     short loc_30150A6E                                                                                                                                                                                                                                    
Format:loc_30150A6E push    edi                                  ESP=12F494                                                                                                                                                                                                       
Format+EA72B        xor     eax, eax                             EAX=0 PF=1 ZF=1                                                                                                                                                                                                  
Format+EA72D        mov     edi, esi                             EDI=FFFFFFFF                                                                                                                                                                                                     
Format+EA72F        mov     edx, ebx                             EDX=998EE1EC                                                                                                                                                                                                     
Format+EA731        shld    eax, esi, 3                          EAX=7 PF=0 AF=1 ZF=0                                                                                                                                                                                             
Format+EA735        shld    esi, ebx, 3                          ESI=FFFFFFFC CF=1 PF=1 SF=1                                                                                                                                                                                      
Format+EA739        shl     ebx, 3                               EBX=CC770F60 CF=0 OF=1                                                                                                                                                                                           
Format+EA73C        add     ebx, edx                             EBX=6605F14C CF=1 PF=0 AF=0 SF=0                                                                                                                                                                                 
Format+EA73E        adc     esi, edi                             PF=1 AF=1 SF=1 OF=0                                                                                                                                                                                              
Format+EA740        adc     eax, 0                               EAX=8 CF=0 PF=0 AF=0 SF=0                                                                                                                                                                                        
Format+EA743        add     ebx, edx                             EBX=FF94D338 AF=1 SF=1                                                                                                                                                                                           
Format+EA745        adc     esi, edi                             ESI=FFFFFFFB CF=1                                                                                                                                                                                                
Format+EA747        adc     eax, 0                               EAX=9 CF=0 PF=1 AF=0 SF=0                                                                                                                                                                                        
Format+EA74A        pop     edi                                  EDI=12F9F0 ESP=12F498                                                                                                                                                                                            
Format+EA74B        or      ebp, eax                                                                                                                                                                                                                                              
Format+EA74D        jz      loc_3013B3A6                                                                                                                                                                                                                                          
Format+EA753        add     eax, 30h ; '0'                       EAX=39                                                                                                                                                                                                           
Format+EA756        mov     [edi], al                                                                                                                                                                                                                                             
Format+EA758        mov     byte ptr [edi+1], 0                                                                                                                                                                                                                                   
Format+EA75C        add     edi, 2                               EDI=12F9F2 PF=0                                                                                                                                                                                                  
Format+EA75F        dec     ecx                                  ECX=7                                                                                                                                                                                                            
Format+EA760        jnz     short loc_30150A6E                                                                                                                                                                                                                                    
Format:loc_30150A6E push    edi                                  ESP=12F494                                                                                                                                                                                                       
Format+EA72B        xor     eax, eax                             EAX=0 PF=1 ZF=1                                                                                                                                                                                                  
Format+EA72D        mov     edi, esi                             EDI=FFFFFFFB                                                                                                                                                                                                     
Format+EA72F        mov     edx, ebx                             EDX=FF94D338                                                                                                                                                                                                     
Format+EA731        shld    eax, esi, 3                          EAX=7 PF=0 AF=1 ZF=0                                                                                                                                                                                             
Format+EA735        shld    esi, ebx, 3                          ESI=FFFFFFDF CF=1 SF=1                                                                                                                                                                                           
Format+EA739        shl     ebx, 3                               EBX=FCA699C0 PF=1                                                                                                                                                                                                
Format+EA73C        add     ebx, edx                             EBX=FC3B6CF8 PF=0 AF=0                                                                                                                                                                                           
Format+EA73E        adc     esi, edi                             ESI=FFFFFFDB PF=1 AF=1                                                                                                                                                                                           
Format+EA740        adc     eax, 0                               EAX=8 CF=0 PF=0 AF=0 SF=0                                                                                                                                                                                        
Format+EA743        add     ebx, edx                             EBX=FBD04030 CF=1 PF=1 AF=1 SF=1                                                                                                                                                                                 
Format+EA745        adc     esi, edi                             ESI=FFFFFFD7                                                                                                                                                                                                     
Format+EA747        adc     eax, 0                               EAX=9 CF=0 AF=0 SF=0                                                                                                                                                                                             
Format+EA74A        pop     edi                                  EDI=12F9F2 ESP=12F498                                                                                                                                                                                            
Format+EA74B        or      ebp, eax                                                                                                                                                                                                                                              
Format+EA74D        jz      loc_3013B3A6                                                                                                                                                                                                                                          
Format+EA753        add     eax, 30h ; '0'                       EAX=39                                                                                                                                                                                                           
Format+EA756        mov     [edi], al                                                                                                                                                                                                                                             
Format+EA758        mov     byte ptr [edi+1], 0                                                                                                                                                                                                                                   
Format+EA75C        add     edi, 2                               EDI=12F9F4 PF=0                                                                                                                                                                                                  
Format+EA75F        dec     ecx                                  ECX=6 PF=1                                                                                                                                                                                                       
Format+EA760        jnz     short loc_30150A6E                                                                                                                                                                                                                                    
Format:loc_30150A6E push    edi                                  ESP=12F494                                                                                                                                                                                                       
Format+EA72B        xor     eax, eax                             EAX=0 ZF=1                                                                                                                                                                                                       
Format+EA72D        mov     edi, esi                             EDI=FFFFFFD7                                                                                                                                                                                                     
Format+EA72F        mov     edx, ebx                             EDX=FBD04030                                                                                                                                                                                                     
Format+EA731        shld    eax, esi, 3                          EAX=7 PF=0 AF=1 ZF=0                                                                                                                                                                                             
Format+EA735        shld    esi, ebx, 3                          ESI=FFFFFEBF CF=1 SF=1                                                                                                                                                                                           
Format+EA739        shl     ebx, 3                               EBX=DE820180                                                                                                                                                                                                     
Format+EA73C        add     ebx, edx                             EBX=DA5241B0 AF=0                                                                                                                                                                                                
Format+EA73E        adc     esi, edi                             ESI=FFFFFE97 AF=1                                                                                                                                           
// rest???


// OLD EXCEL Microsoft Excel 2000, 9.0.6926 SP-3
.text:30182242 FormatOld proc near
.text:30182242
.text:30182242 ; FUNCTION CHUNK AT .text:30182238 SIZE 0000000A BYTES
.text:30182242 ; FUNCTION CHUNK AT .text:3067E9F2 SIZE 00000041 BYTES
.text:30182242

// Hexdump of function
.text:30182240  20 C3 66 8B 46 06 66 8B  D0 66 25 F0 7F 74 E9 66 
.text:30182250  C1 E8 04 66 2D FE 03 66  8B D8 98 69 C0 21 9A 00 
.text:30182260  00 C1 F8 11 66 05 01 40  66 81 E2 00 80 66 0B D0 
.text:30182270  66 89 57 20 66 2D 00 40  66 0B DB 0F 8C A1 00 00 
.text:30182280  00 66 83 FB 10 0F 8F 97  00 00 00 57 51 8B 16 8B 
.text:30182290  76 04 96 25 FF FF 0F 00  0D 00 00 10 00 B1 15 2A  
.text:301822A0  CB 8B D8 D3 E8 F6 D9 0F  A5 D3 D3 E2 8B CA 66 4E 
.text:301822B0  66 D1 E6 66 3B 86 E0 38  18 30 0F 82 5F 01 00 00 
.text:301822C0  E3 13 D1 E6 03 8E F0 38  18 30 83 D3 00 0F 82 58  
.text:301822D0  01 00 00 D1 FE 0B F6 0F  8C 70 01 00 00 74 21 66  
.text:301822E0  33 D2 66 F7 B6 E0 38 18  30 32 E4 0C 30 66 AB 66 
.text:301822F0  0B D2 74 12 66 8B C2 83  EE 02 77 E3 0A C0 74 06 
.text:30182300  32 E4 0C 30 66 AB 8B C3  0B C1 0F 85 40 01 00 00 
.text:30182310  66 C7 07 30 00 59 5B 8B  D7 2B D3 D1 FA E9 D2 00  
.text:30182320  00 00 66 83 F9 0F 73 13  66 03 C8 0F 8C 07 FF FF 
.text:30182330  FF 66 83 F9 0F 0F 83 B7  C6 4F 00 51 57 66 8B CB 
.text:30182340  8B 3E 8B 76 04 81 CE 00  00 10 00 0F A4 FE 0B C1 
.text:30182350  E7 0B 66 F7 D8 E8 1A 02  00 00 66 85 C9 74 0E 0F 
.text:30182360  8D 96 C6 4F 00 66 F7 D9  0F AD F7 D3 EE 81 FF 99 
.text:30182370  99 99 99 8B C6 1D 99 99  99 19 B8 9A 03 00 00 72 
.text:30182380  05 B8 07 24 00 00 03 F8  83 D6 00 8B DF 5F 0F 82  


// Divisor table
.text:301838C0  0C 0C 0C 00 AA 02 0D 09  08 0C 0C 0C 0C 0C 0C 0C
.text:301838D0  0C 0C 0C 0C 0C 00 00 00  00 00 00 00 00 00 00 00 
.text:301838E0  01 00 0A 00 64 00 E8 03  10 27 FF FF 07 24 00 00  
.text:301838F0  49 68 01 00 E1 12 0E 00  CC BC 8C 00 F8 5F 7F 05 
.text:30183900  B3 BF F9 36 00 00 00 00  00 00 00 00 00 00 00 00 

// trace of 850*77.1 = 65535
ST0= 0.0 ST1= 0.0 ST2= 0.0 ST3= 0.0 ST4= 0.0 ST5= 1.0 ST6= 1.0 ST7= 6.5534999999999995168e4 CTRL=137F 
CS=1B DS=23 ES=23 FS=3B GS=0 SS=23 EAX=8 EBX=FFEC4C36 ECX=F EDX=13B3CA ESI=306A3D08 EDI=13B3CA EBP=306A3FC0 ESP=13B2E4 EFL=202  
FormatOld              mov     ax, [esi+6]                 EAX=40EF                                                                                                                                                                                                                              
FormatOld+4            mov     dx, ax                      EDX=1340EF                                                                                                                                                                                                                            
FormatOld+7            and     ax, 7FF0h                   EAX=40E0                                                                                                                                                                                                                              
FormatOld+B            jz      short loc_30182238                                                                                                                                                                                                                                                
FormatOld+D            shr     ax, 4                       EAX=40E AF=1                                                                                                                                                                                                                          
FormatOld+11           sub     ax, 3FEh                    EAX=10 AF=0                                                                                                                                                                                                                           
FormatOld+15           mov     bx, ax                      EBX=FFEC0010                                                                                                                                                                                                                          
FormatOld+18           cwde                                                                                                                                                                                                                                                                      
FormatOld+19           imul    eax, 9A21h                  EAX=9A210                                                                                                                                                                                                                             
FormatOld+1F           sar     eax, 11h                    EAX=4 CF=1 AF=1                                                                                                                                                                                                                       
FormatOld+22           add     ax, 4001h                   EAX=4005 CF=0 PF=1 AF=0                                                                                                                                                                                                               
FormatOld+26           and     dx, 8000h                   EDX=130000 ZF=1                                                                                                                                                                                                                       
FormatOld+2B           or      dx, ax                      EDX=134005 ZF=0                                                                                                                                                                                                                       
FormatOld+2E           mov     [edi+20h], dx                                                                                                                                                                                                                                                     
FormatOld+32           sub     ax, 4000h                   EAX=5                                                                                                                                                                                                                                 
FormatOld+36           or      bx, bx                      PF=0                                                                                                                                                                                                                                  
FormatOld+39           jl      loc_30182322                                                                                                                                                                                                                                                      
FormatOld+3F           cmp     bx, 10h                     PF=1 ZF=1                                                                                                                                                                                                                             
FormatOld+43           jg      loc_30182322                                                                                                                                                                                                                                                      
FormatOld+49           push    edi                         ESP=13B2E0                                                                                                                                                                                                                            
FormatOld+4A           push    ecx                         ESP=13B2DC                                                                                                                                                                                                                            
FormatOld+4B           mov     edx, [esi]                  EDX=FFFFFFFF                                                                                                                                                                                                                          
FormatOld+4D           mov     esi, [esi+4]                ESI=40EFFFDF                                                                                                                                                                                                                          
FormatOld+50           xchg    eax, esi                    EAX=40EFFFDF ESI=5                                                                                                                                                                                                                    
FormatOld+51           and     eax, 0FFFFFh                EAX=FFFDF PF=0 ZF=0                                                                                                                                                                                                                   
FormatOld+56           or      eax, 100000h                EAX=1FFFDF                                                                                                                                                                                                                            
FormatOld+5B           mov     cl, 15h                     ECX=15                                                                                                                                                                                                                                
FormatOld+5D           sub     cl, bl                      ECX=5 PF=1                                                                                                                                                                                                                            
FormatOld+5F           mov     ebx, eax                    EBX=1FFFDF                                                                                                                                                                                                                            
FormatOld+61           shr     eax, cl                     EAX=FFFE CF=1 PF=0 AF=1                                                                                                                                                                                                               
FormatOld+63           neg     cl                          ECX=FB SF=1                                                                                                                                                                                                                           
FormatOld+65           shld    ebx, edx, cl                EBX=FFFFFFFF CF=0 PF=1 OF=1                                                                                                                                                                                                           
FormatOld+68           shl     edx, cl                     EDX=F8000000 CF=1 OF=0                                                                                                                                                                                                                
FormatOld+6A           mov     ecx, edx                    ECX=F8000000                                                                                                                                                                                                                          
FormatOld+6C           dec     si                          ESI=4 PF=0 AF=0 SF=0                                                                                                                                                                                                                  
FormatOld+6E           shl     si, 1                       ESI=8 CF=0 AF=1                                                                                                                                                                                                                       
FormatOld+71           cmp     ax, ds:word_301838E0[esi]   PF=1 AF=0 SF=1                                                                                                                                                                                                                        
FormatOld+78           jb      loc_3018241F                                                                                                                                                                                                                                                      
FormatOld:loc_301822C0 jecxz   short loc_301822D5                                                                                                                                                                                                                                                
FormatOld+80           shl     esi, 1                      ESI=10 PF=0 AF=1 SF=0                                                                                                                                                                                                                 
FormatOld+82           add     ecx, ds:dword_301838F0[esi] ECX=2EF9BFB3 CF=1 AF=0                                                                                                                                                                                                                
FormatOld+88           adc     ebx, 0                      EBX=0 PF=1 AF=1 ZF=1                                                                                                                                                                                                                  
FormatOld+8B           jb      loc_3018242B                                                                                                                                                                                                                                                      
FormatOld:loc_3018242B xor     ecx, ecx                    ECX=0 CF=0 AF=0                                                                                                                                                                                                                       
FormatOld+1EB          sar     esi, 1                      ESI=8 PF=0 AF=1 ZF=0                                                                                                                                                                                                                  
FormatOld+1ED          mov     dx, 1                       EDX=F8000001                                                                                                                                                                                                                          
FormatOld+1F1          inc     ax                          EAX=FFFF PF=1 AF=0 SF=1                                                                                                                                                                                                               
FormatOld+1F3          jz      loc_301822E2                                                                                                                                                                                                                                                      
FormatOld+1F9          cmp     ax, ds:word_301838E2[esi]   ZF=1 SF=0                                                                                                                                                                                                                             
FormatOld+200          jb      loc_301822D5                                                                                                                                                                                                                                                      
FormatOld+206          jmp     loc_3067EA1D                                                                                                                                                                                                                                                      
FormatOld:loc_3067EA1D cmp     ax, 0FFFFh                                                                                                                                                                                                                                                        
FormatOld+4FC7DF       jz      Digits                                                                                                                                                                                                                                                         
FormatOld:Digits    xor     dx, dx                      EDX=F8000000                                                                                                                                                                                                                          
FormatOld:loc_301822E2 div     ds:word_301838E0[esi]       EAX=6 EDX=F800159F PF=0 AF=1 ZF=0                                                                                                                                                                                                     
FormatOld+A7           xor     ah, ah                      PF=1 AF=0 ZF=1                                                                                                                                                                                                                        
FormatOld+A9           or      al, 30h                     EAX=36 ZF=0                                                                                                                                                                                                                           
FormatOld+AB           stosw                               EDI=13B3CC                                                                                                                                                                                                                            
FormatOld+AD           or      dx, dx                                                                                                                                                                                                                                                            
FormatOld+B0           jz      short loc_30182306                                                                                                                                                                                                                                                
FormatOld+B2           mov     ax, dx                      EAX=159F                                                                                                                                                                                                                              
FormatOld+B5           sub     esi, 2                      ESI=6                                                                                                                                                                                                                                 
FormatOld+B8           ja      short Digits                                                                                                                                                                                                                                                   
FormatOld:Digits    xor     dx, dx                      EDX=F8000000 ZF=1                                                                                                                                                                                                                     
FormatOld:loc_301822E2 div     ds:word_301838E0[esi]       EAX=5 EDX=F8000217 PF=0 AF=1 ZF=0                                                                                                                                                                                                     
FormatOld+A7           xor     ah, ah                      PF=1 AF=0 ZF=1                                                                                                                                                                                                                        
FormatOld+A9           or      al, 30h                     EAX=35 ZF=0                                                                                                                                                                                                                           
FormatOld+AB           stosw                               EDI=13B3CE                                                                                                                                                                                                                            
FormatOld+AD           or      dx, dx                                                                                                                                                                                                                                                            
FormatOld+B0           jz      short loc_30182306                                                                                                                                                                                                                                                
FormatOld+B2           mov     ax, dx                      EAX=217                                                                                                                                                                                                                               
FormatOld+B5           sub     esi, 2                      ESI=4 PF=0                                                                                                                                                                                                                            
FormatOld+B8           ja      short Digits                                                                                                                                                                                                                                                   
FormatOld:Digits    xor     dx, dx                      EDX=F8000000 PF=1 ZF=1                                                                                                                                                                                                                
FormatOld:loc_301822E2 div     ds:word_301838E0[esi]       EAX=5 EDX=F8000023 PF=0 AF=1 ZF=0                                                                                                                                                                                                     
FormatOld+A7           xor     ah, ah                      PF=1 AF=0 ZF=1                                                                                                                                                                                                                        
FormatOld+A9           or      al, 30h                     EAX=35 ZF=0                                                                                                                                                                                                                           
FormatOld+AB           stosw                               EDI=13B3D0                                                                                                                                                                                                                            
FormatOld+AD           or      dx, dx                      PF=0                                                                                                                                                                                                                                  
FormatOld+B0           jz      short loc_30182306                                                                                                                                                                                                                                                
FormatOld+B2           mov     ax, dx                      EAX=23                                                                                                                                                                                                                                
FormatOld+B5           sub     esi, 2                      ESI=2                                                                                                                                                                                                                                 
FormatOld+B8           ja      short Digits                                                                                                                                                                                                                                                   
FormatOld:Digits    xor     dx, dx                      EDX=F8000000 PF=1 ZF=1                                                                                                                                                                                                                
FormatOld:loc_301822E2 div     ds:word_301838E0[esi]       EAX=3 EDX=F8000005 PF=0 AF=1 ZF=0                                                                                                                                                                                                     
FormatOld+A7           xor     ah, ah                      PF=1 AF=0 ZF=1                                                                                                                                                                                                                        
FormatOld+A9           or      al, 30h                     EAX=33 ZF=0                                                                                                                                                                                                                           
FormatOld+AB           stosw                               EDI=13B3D2                                                                                                                                                                                                                            
FormatOld+AD           or      dx, dx                                                                                                                                                                                                                                                            
FormatOld+B0           jz      short loc_30182306                                                                                                                                                                                                                                                
FormatOld+B2           mov     ax, dx                      EAX=5                                                                                                                                                                                                                                 
FormatOld+B5           sub     esi, 2                      ESI=0 ZF=1                                                                                                                                                                                                                            
FormatOld+B8           ja      short Digits                                                                                                                                                                                                                                                   
FormatOld+BA           or      al, al                      ZF=0                                                                                                                                                                                                                                  
FormatOld+BC           jz      short loc_30182306                                                                                                                                                                                                                                                
FormatOld:loc_30182300 xor     ah, ah                      ZF=1                                                                                                                                                                                                                                  
FormatOld+C0           or      al, 30h                     EAX=35 ZF=0                                                                                                                                                                                                                           
FormatOld+C2           stosw                               EDI=13B3D4                                                                                                                                                                                                                            
FormatOld:loc_30182306 mov     eax, ebx                    EAX=0                                                                                                                                                                                                                                 
FormatOld+C6           or      eax, ecx                    ZF=1                                                                                                                                                                                                                                  
FormatOld+C8           jnz     loc_30182450                                                                                                                                                                                                                                                      
FormatOld+CE           mov     word ptr [edi], 30h                                                                                                                                                                                                                                               
FormatOld+D3           pop     ecx                         ECX=F ESP=13B2E0                                                                                                                                                                                                                      
FormatOld+D4           pop     ebx                         EBX=13B3CA ESP=13B2E4                                                                                                                                                                                                                 
FormatOld+D5           mov     edx, edi                    EDX=13B3D4                                                                                                                                                                                                                            
FormatOld+D7           sub     edx, ebx                    EDX=A AF=1 ZF=0                                                                                                                                                                                                                       
FormatOld+D9           sar     edx, 1                      EDX=5                                                                                                                                                                                                                                 
FormatOld+DB           jmp     loc_301823F4                                                                                                                                                                                                                                                      
FormatOld:loc_301823F4 mov     eax, edx                    EAX=5                                                                                                                                                                                                                                 
FormatOld+1B4          shl     eax, 10h                    EAX=50000                                                                                                                                                                                                                             
FormatOld+1B7          mov     [ebx+1Eh], dl                                                                                                                                                                                                                                                     
FormatOld+1BA          mov     ax, [ebx+20h]               EAX=54005                                                                                                                                                                                                                             
FormatOld+1BE          and     eax, 0FFFF7FFFh             AF=0                                                                                                                                                                                                                                  
FormatOld+1C3          sub     ax, 4000h                   EAX=50005                                                                                                                                                                                                                             
FormatOld+1C7          retn                                ESP=13B2E8                                                                                                                                                                                                                            



// END OF FILE