Dump of assembler code for function CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*):
1574    {
  0x0000000000410bd0 <+0>:     push   %rbp
  0x0000000000410bd1 <+1>:     mov    %rsp,%rbp
  0x0000000000410bd4 <+4>:     sub    $0x7c0,%rsp
  0x0000000000410bdb <+11>:    lea    -0x430(%rbp),%rax
  0x0000000000410be2 <+18>:    mov    0x318227(%rip),%r9        # 0x728e10
  0x0000000000410be9 <+25>:    mov    (%r9),%r9
  0x0000000000410bec <+28>:    mov    %r9,-0x8(%rbp)
  0x0000000000410bf0 <+32>:    mov    %rdi,-0x4b0(%rbp)
  0x0000000000410bf7 <+39>:    mov    %rsi,-0x4b8(%rbp)
  0x0000000000410bfe <+46>:    mov    %rdx,-0x4c0(%rbp)
  0x0000000000410c05 <+53>:    mov    %rcx,-0x4c8(%rbp)
  0x0000000000410c0c <+60>:    mov    %r8,-0x4d0(%rbp)

1575        BOOL BufferRanOut = FALSE;
  0x0000000000410c13 <+67>:    movl   $0x0,-0x4d4(%rbp)

1576        CHAR TempBuff[1024]; /* used to hold a single %<foo> format string */
1577        LPSTR BufferPtr = Buffer;
  0x0000000000410c1d <+77>:    mov    -0x4b8(%rbp),%rcx
  0x0000000000410c24 <+84>:    mov    %rcx,-0x460(%rbp)

1578        LPCSTR Fmt = Format;
  0x0000000000410c2b <+91>:    mov    -0x4c8(%rbp),%rcx
  0x0000000000410c32 <+98>:    mov    %rcx,-0x468(%rbp)

1579        LPWSTR TempWStr;
1580        LPSTR TempStr;
1581        WCHAR TempWChar;
1582        INT Flags;
1583        INT Width;
1584        INT Precision;
1585        INT Prefix;
1586        INT Type;
1587        INT Length;
1588        INT TempInt;
1589        int wctombResult;
1590        va_list ap;
1591
1592        va_copy(ap, aparg);
  0x0000000000410c39 <+105>:   mov    -0x4d0(%rbp),%rcx
  0x0000000000410c40 <+112>:   mov    0x10(%rcx),%rdx
  0x0000000000410c44 <+116>:   mov    %rdx,0x10(%rax)
  0x0000000000410c48 <+120>:   movups (%rcx),%xmm0
  0x0000000000410c4b <+123>:   movups %xmm0,(%rax)

1593
1594        while (*Fmt)
  0x0000000000410c4e <+126>:   mov    -0x468(%rbp),%rax
  0x0000000000410c55 <+133>:   cmpb   $0x0,(%rax)
  0x0000000000410c58 <+136>:   je     0x412341 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+6001>
  0x000000000041233c <+5996>:  jmpq   0x410c4e <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+126>

1595        {
1596            if (BufferRanOut || (BufferPtr - Buffer) >= static_cast<int>(Count)) //Count is assumed to be in the range of int
  0x0000000000410c5e <+142>:   cmpl   $0x0,-0x4d4(%rbp)
  0x0000000000410c65 <+149>:   jne    0x410c91 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+193>
  0x0000000000410c6b <+155>:   mov    -0x460(%rbp),%rax
  0x0000000000410c72 <+162>:   mov    -0x4b8(%rbp),%rcx
  0x0000000000410c79 <+169>:   sub    %rcx,%rax
  0x0000000000410c7c <+172>:   mov    -0x4c0(%rbp),%rcx
  0x0000000000410c83 <+179>:   mov    %ecx,%edx
  0x0000000000410c85 <+181>:   movslq %edx,%rcx
  0x0000000000410c88 <+184>:   cmp    %rcx,%rax
  0x0000000000410c8b <+187>:   jl     0x410ca0 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+208>

1597            {
1598                BufferRanOut = TRUE;
  0x0000000000410c91 <+193>:   movl   $0x1,-0x4d4(%rbp)

1599                break;
  0x0000000000410c9b <+203>:   jmpq   0x412341 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+6001>

1600            }
1601            else if(*Fmt == '%' &&
  0x0000000000410ca0 <+208>:   mov    -0x468(%rbp),%rax
  0x0000000000410ca7 <+215>:   movsbl (%rax),%ecx
  0x0000000000410caa <+218>:   cmp    $0x25,%ecx
  0x0000000000410cad <+221>:   jne    0x412309 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5945>
  0x0000000000410cb3 <+227>:   lea    -0x468(%rbp),%rsi
  0x0000000000410cba <+234>:   lea    -0x470(%rbp),%rcx
  0x0000000000410cc1 <+241>:   lea    -0x474(%rbp),%r8
  0x0000000000410cc8 <+248>:   lea    -0x478(%rbp),%r9
  0x0000000000410ccf <+255>:   lea    -0x47c(%rbp),%rax
  0x0000000000410cd6 <+262>:   lea    -0x480(%rbp),%rdx
  0x0000000000410cdd <+269>:   lea    -0x410(%rbp),%rdi
  0x0000000000410d24 <+340>:   jne    0x412309 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5945>

1602                    TRUE == Internal_ExtractFormatA(pthrCurrent, &Fmt, TempBuff, &Flags,
  0x0000000000410ce4 <+276>:   mov    -0x4b0(%rbp),%r10
  0x0000000000410ceb <+283>:   mov    %rdi,-0x540(%rbp)
  0x0000000000410cf2 <+290>:   mov    %r10,%rdi
  0x0000000000410cf5 <+293>:   mov    -0x540(%rbp),%r10
  0x0000000000410cfc <+300>:   mov    %rdx,-0x548(%rbp)
  0x0000000000410d03 <+307>:   mov    %r10,%rdx
  0x0000000000410d06 <+310>:   mov    %rax,(%rsp)
  0x0000000000410d0a <+314>:   mov    -0x548(%rbp),%rax
  0x0000000000410d11 <+321>:   mov    %rax,0x8(%rsp)
  0x0000000000410d16 <+326>:   callq  0x40e640 <Internal_ExtractFormatA(CorUnix::CPalThread*, LPCSTR*, LPSTR, LPINT, LPINT, LPINT, LPINT, LPINT)>
  0x0000000000410d1b <+331>:   mov    $0x1,%r11d
  0x0000000000410d21 <+337>:   cmp    %eax,%r11d

1603                                                    &Width, &Precision,
1604                                                    &Prefix, &Type))
1605            {
1606                if (Prefix == PFF_PREFIX_LONG && Type == PFF_TYPE_STRING)
  0x0000000000410d2a <+346>:   cmpl   $0x2,-0x47c(%rbp)
  0x0000000000410d31 <+353>:   jne    0x411780 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2992>
  0x0000000000410d37 <+359>:   cmpl   $0x2,-0x480(%rbp)
  0x0000000000410d3e <+366>:   jne    0x411780 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2992>
  0x0000000000410d44 <+372>:   mov    $0xfffffffe,%eax

1607                {
1608                    if (WIDTH_STAR == Width)
  0x0000000000410d49 <+377>:   cmp    -0x474(%rbp),%eax
  0x0000000000410d4f <+383>:   jne    0x410dce <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+510>
  0x0000000000410d55 <+389>:   lea    -0x430(%rbp),%rax

1609                    {
1610                        Width = va_arg(ap, INT);
  0x0000000000410d5c <+396>:   mov    -0x430(%rbp),%ecx
  0x0000000000410d62 <+402>:   cmp    $0x28,%ecx
  0x0000000000410d65 <+405>:   mov    %rax,-0x550(%rbp)
  0x0000000000410d6c <+412>:   mov    %ecx,-0x554(%rbp)
  0x0000000000410d72 <+418>:   ja     0x410d9d <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+461>
  0x0000000000410d78 <+424>:   mov    -0x554(%rbp),%eax
  0x0000000000410d7e <+430>:   movslq %eax,%rcx
  0x0000000000410d81 <+433>:   mov    -0x550(%rbp),%rdx
  0x0000000000410d88 <+440>:   add    0x10(%rdx),%rcx
  0x0000000000410d8c <+444>:   add    $0x8,%eax
  0x0000000000410d8f <+447>:   mov    %eax,(%rdx)
  0x0000000000410d91 <+449>:   mov    %rcx,-0x560(%rbp)
  0x0000000000410d98 <+456>:   jmpq   0x410dba <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+490>
  0x0000000000410d9d <+461>:   mov    -0x550(%rbp),%rax
  0x0000000000410da4 <+468>:   mov    0x8(%rax),%rcx
  0x0000000000410da8 <+472>:   mov    %rcx,%rdx
  0x0000000000410dab <+475>:   add    $0x8,%rcx
  0x0000000000410daf <+479>:   mov    %rcx,0x8(%rax)
  0x0000000000410db3 <+483>:   mov    %rdx,-0x560(%rbp)
  0x0000000000410dba <+490>:   mov    -0x560(%rbp),%rax
  0x0000000000410dc1 <+497>:   mov    (%rax),%ecx
  0x0000000000410dc3 <+499>:   mov    %ecx,-0x474(%rbp)

1611                    }
  0x0000000000410dc9 <+505>:   jmpq   0x410e58 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+648>
  0x0000000000410dce <+510>:   mov    $0xfffffffd,%eax

1612                    else if (WIDTH_INVALID == Width)
  0x0000000000410dd3 <+515>:   cmp    -0x474(%rbp),%eax
  0x0000000000410dd9 <+521>:   jne    0x410e53 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+643>
  0x0000000000410ddf <+527>:   lea    -0x430(%rbp),%rax

1613                    {
1614                        /* both a '*' and a number, ignore, but remove arg */
1615                        TempInt = va_arg(ap, INT); /* value not used */
  0x0000000000410de6 <+534>:   mov    -0x430(%rbp),%ecx
  0x0000000000410dec <+540>:   cmp    $0x28,%ecx
  0x0000000000410def <+543>:   mov    %rax,-0x568(%rbp)
  0x0000000000410df6 <+550>:   mov    %ecx,-0x56c(%rbp)
  0x0000000000410dfc <+556>:   ja     0x410e27 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+599>
  0x0000000000410e02 <+562>:   mov    -0x56c(%rbp),%eax
  0x0000000000410e08 <+568>:   movslq %eax,%rcx
  0x0000000000410e0b <+571>:   mov    -0x568(%rbp),%rdx
  0x0000000000410e12 <+578>:   add    0x10(%rdx),%rcx
  0x0000000000410e16 <+582>:   add    $0x8,%eax
  0x0000000000410e19 <+585>:   mov    %eax,(%rdx)
  0x0000000000410e1b <+587>:   mov    %rcx,-0x578(%rbp)
  0x0000000000410e22 <+594>:   jmpq   0x410e44 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+628>
  0x0000000000410e27 <+599>:   mov    -0x568(%rbp),%rax
  0x0000000000410e2e <+606>:   mov    0x8(%rax),%rcx
  0x0000000000410e32 <+610>:   mov    %rcx,%rdx
  0x0000000000410e35 <+613>:   add    $0x8,%rcx
  0x0000000000410e39 <+617>:   mov    %rcx,0x8(%rax)
  0x0000000000410e3d <+621>:   mov    %rdx,-0x578(%rbp)
  0x0000000000410e44 <+628>:   mov    -0x578(%rbp),%rax
  0x0000000000410e4b <+635>:   mov    (%rax),%ecx
  0x0000000000410e4d <+637>:   mov    %ecx,-0x4f0(%rbp)
  0x0000000000410e53 <+643>:   jmpq   0x410e58 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+648>
  0x0000000000410e58 <+648>:   mov    $0xfffffffe,%eax

1616                    }
1617
1618                    if (PRECISION_STAR == Precision)
  0x0000000000410e5d <+653>:   cmp    -0x478(%rbp),%eax
  0x0000000000410e63 <+659>:   jne    0x410ee2 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+786>
  0x0000000000410e69 <+665>:   lea    -0x430(%rbp),%rax

1619                    {
1620                        Precision = va_arg(ap, INT);
  0x0000000000410e70 <+672>:   mov    -0x430(%rbp),%ecx
  0x0000000000410e76 <+678>:   cmp    $0x28,%ecx
  0x0000000000410e79 <+681>:   mov    %rax,-0x580(%rbp)
  0x0000000000410e80 <+688>:   mov    %ecx,-0x584(%rbp)
  0x0000000000410e86 <+694>:   ja     0x410eb1 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+737>
  0x0000000000410e8c <+700>:   mov    -0x584(%rbp),%eax
  0x0000000000410e92 <+706>:   movslq %eax,%rcx
  0x0000000000410e95 <+709>:   mov    -0x580(%rbp),%rdx
  0x0000000000410e9c <+716>:   add    0x10(%rdx),%rcx
  0x0000000000410ea0 <+720>:   add    $0x8,%eax
  0x0000000000410ea3 <+723>:   mov    %eax,(%rdx)
  0x0000000000410ea5 <+725>:   mov    %rcx,-0x590(%rbp)
  0x0000000000410eac <+732>:   jmpq   0x410ece <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+766>
  0x0000000000410eb1 <+737>:   mov    -0x580(%rbp),%rax
  0x0000000000410eb8 <+744>:   mov    0x8(%rax),%rcx
  0x0000000000410ebc <+748>:   mov    %rcx,%rdx
  0x0000000000410ebf <+751>:   add    $0x8,%rcx
  0x0000000000410ec3 <+755>:   mov    %rcx,0x8(%rax)
  0x0000000000410ec7 <+759>:   mov    %rdx,-0x590(%rbp)
  0x0000000000410ece <+766>:   mov    -0x590(%rbp),%rax
  0x0000000000410ed5 <+773>:   mov    (%rax),%ecx
  0x0000000000410ed7 <+775>:   mov    %ecx,-0x478(%rbp)

1621                    }
  0x0000000000410edd <+781>:   jmpq   0x410f6c <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+924>
  0x0000000000410ee2 <+786>:   mov    $0xfffffffc,%eax

1622                    else if (PRECISION_INVALID == Precision)
  0x0000000000410ee7 <+791>:   cmp    -0x478(%rbp),%eax
  0x0000000000410eed <+797>:   jne    0x410f67 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+919>
  0x0000000000410ef3 <+803>:   lea    -0x430(%rbp),%rax

1623                    {
1624                        /* both a '*' and a number, ignore, but remove arg */
1625                        TempInt = va_arg(ap, INT); /* value not used */
  0x0000000000410efa <+810>:   mov    -0x430(%rbp),%ecx
  0x0000000000410f00 <+816>:   cmp    $0x28,%ecx
  0x0000000000410f03 <+819>:   mov    %rax,-0x598(%rbp)
  0x0000000000410f0a <+826>:   mov    %ecx,-0x59c(%rbp)
  0x0000000000410f10 <+832>:   ja     0x410f3b <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+875>
  0x0000000000410f16 <+838>:   mov    -0x59c(%rbp),%eax
  0x0000000000410f1c <+844>:   movslq %eax,%rcx
  0x0000000000410f1f <+847>:   mov    -0x598(%rbp),%rdx
  0x0000000000410f26 <+854>:   add    0x10(%rdx),%rcx
  0x0000000000410f2a <+858>:   add    $0x8,%eax
  0x0000000000410f2d <+861>:   mov    %eax,(%rdx)
  0x0000000000410f2f <+863>:   mov    %rcx,-0x5a8(%rbp)
  0x0000000000410f36 <+870>:   jmpq   0x410f58 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+904>
  0x0000000000410f3b <+875>:   mov    -0x598(%rbp),%rax
  0x0000000000410f42 <+882>:   mov    0x8(%rax),%rcx
  0x0000000000410f46 <+886>:   mov    %rcx,%rdx
  0x0000000000410f49 <+889>:   add    $0x8,%rcx
  0x0000000000410f4d <+893>:   mov    %rcx,0x8(%rax)
  0x0000000000410f51 <+897>:   mov    %rdx,-0x5a8(%rbp)
  0x0000000000410f58 <+904>:   mov    -0x5a8(%rbp),%rax
  0x0000000000410f5f <+911>:   mov    (%rax),%ecx
  0x0000000000410f61 <+913>:   mov    %ecx,-0x4f0(%rbp)
  0x0000000000410f67 <+919>:   jmpq   0x410f6c <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+924>
  0x0000000000410f6c <+924>:   lea    -0x430(%rbp),%rax

1626                    }
1627
1628                    TempWStr = va_arg(ap, LPWSTR);
  0x0000000000410f73 <+931>:   mov    -0x430(%rbp),%ecx
  0x0000000000410f79 <+937>:   cmp    $0x28,%ecx
  0x0000000000410f7c <+940>:   mov    %rax,-0x5b0(%rbp)
  0x0000000000410f83 <+947>:   mov    %ecx,-0x5b4(%rbp)
  0x0000000000410f89 <+953>:   ja     0x410fb4 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+996>
  0x0000000000410f8f <+959>:   mov    -0x5b4(%rbp),%eax
  0x0000000000410f95 <+965>:   movslq %eax,%rcx
  0x0000000000410f98 <+968>:   mov    -0x5b0(%rbp),%rdx
  0x0000000000410f9f <+975>:   add    0x10(%rdx),%rcx
  0x0000000000410fa3 <+979>:   add    $0x8,%eax
  0x0000000000410fa6 <+982>:   mov    %eax,(%rdx)
  0x0000000000410fa8 <+984>:   mov    %rcx,-0x5c0(%rbp)
  0x0000000000410faf <+991>:   jmpq   0x410fd1 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1025>
  0x0000000000410fb4 <+996>:   mov    -0x5b0(%rbp),%rax
  0x0000000000410fbb <+1003>:  mov    0x8(%rax),%rcx
  0x0000000000410fbf <+1007>:  mov    %rcx,%rdx
  0x0000000000410fc2 <+1010>:  add    $0x8,%rcx
  0x0000000000410fc6 <+1014>:  mov    %rcx,0x8(%rax)
  0x0000000000410fca <+1018>:  mov    %rdx,-0x5c0(%rbp)
  0x0000000000410fd1 <+1025>:  mov    -0x5c0(%rbp),%rax
  0x0000000000410fd8 <+1032>:  xor    %ecx,%ecx
  0x0000000000410fda <+1034>:  mov    $0xffffffff,%edx
  0x0000000000410fdf <+1039>:  xor    %esi,%esi
  0x0000000000410fe1 <+1041>:  mov    %esi,%r8d
  0x0000000000410fe4 <+1044>:  mov    (%rax),%rax
  0x0000000000410fe7 <+1047>:  mov    %rax,-0x4e0(%rbp)

1629                    Length = WideCharToMultiByte(CP_ACP, 0, TempWStr, -1, 0,
  0x0000000000410fee <+1054>:  mov    -0x4e0(%rbp),%rax
  0x0000000000410ff5 <+1061>:  mov    %ecx,%edi
  0x0000000000410ff7 <+1063>:  mov    %ecx,%esi
  0x0000000000410ff9 <+1065>:  mov    %edx,-0x5c4(%rbp)
  0x0000000000410fff <+1071>:  mov    %rax,%rdx
  0x0000000000411002 <+1074>:  mov    -0x5c4(%rbp),%r9d
  0x0000000000411009 <+1081>:  mov    %ecx,-0x5c8(%rbp)
  0x000000000041100f <+1087>:  mov    %r9d,%ecx
  0x0000000000411012 <+1090>:  mov    -0x5c8(%rbp),%r9d
  0x0000000000411019 <+1097>:  movq   $0x0,(%rsp)
  0x0000000000411021 <+1105>:  movq   $0x0,0x8(%rsp)
  0x000000000041102a <+1114>:  callq  0x435a20 <WideCharToMultiByte(UINT, DWORD, LPCWSTR, int, LPSTR, int, LPCSTR, LPBOOL)>
  0x000000000041102f <+1119>:  mov    %eax,-0x4ec(%rbp)

1630                                                 0, 0, 0);
1631                    if (!Length)
  0x0000000000411035 <+1125>:  cmpl   $0x0,-0x4ec(%rbp)
  0x000000000041103c <+1132>:  jne    0x4111c8 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1528>

1632                    {
1633                        ASSERT("WideCharToMultiByte failed.  Error is %d\n",
  0x0000000000411042 <+1138>:  callq  0x429970 <PALIsThreadDataInitialized()>
  0x0000000000411047 <+1143>:  xor    %ecx,%ecx
  0x0000000000411049 <+1145>:  mov    %cl,%dl
  0x000000000041104b <+1147>:  cmp    $0x0,%eax
  0x000000000041104e <+1150>:  mov    %dl,-0x5c9(%rbp)
  0x0000000000411054 <+1156>:  je     0x411099 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1225>
  0x000000000041105a <+1162>:  callq  0x4e74f0 <CorUnix::InternalGetCurrentThread()>
  0x000000000041105f <+1167>:  mov    $0x1,%cl
  0x0000000000411061 <+1169>:  cmp    $0x0,%rax
  0x0000000000411065 <+1173>:  mov    %cl,-0x5ca(%rbp)
  0x000000000041106b <+1179>:  je     0x41108d <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1213>
  0x0000000000411071 <+1185>:  callq  0x4e74f0 <CorUnix::InternalGetCurrentThread()>
  0x0000000000411076 <+1190>:  mov    %rax,%rdi
  0x0000000000411079 <+1193>:  callq  0x4e7520 <CorUnix::CPalThread::IsInPal()>
  0x000000000041107e <+1198>:  cmp    $0x0,%eax
  0x0000000000411081 <+1201>:  setne  %cl
  0x0000000000411084 <+1204>:  xor    $0xff,%cl
  0x0000000000411087 <+1207>:  mov    %cl,-0x5ca(%rbp)
  0x000000000041108d <+1213>:  mov    -0x5ca(%rbp),%al
  0x0000000000411093 <+1219>:  mov    %al,-0x5c9(%rbp)
  0x0000000000411099 <+1225>:  mov    -0x5c9(%rbp),%al
  0x000000000041109f <+1231>:  lea    -0x488(%rbp),%rdi
  0x00000000004110a6 <+1238>:  and    $0x1,%al
  0x00000000004110a8 <+1240>:  movzbl %al,%esi
  0x00000000004110ab <+1243>:  callq  0x4e7540 <PAL_EnterHolder::PAL_EnterHolder(int)>
  0x00000000004110b0 <+1248>:  lea    0x319431(%rip),%rdi        # 0x72a4e8 <output_file>
  0x00000000004110b7 <+1255>:  cmpq   $0x0,(%rdi)
  0x00000000004110bb <+1259>:  je     0x411180 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1456>
  0x00000000004110c1 <+1265>:  lea    0x319428(%rip),%rdi        # 0x72a4f0 <dbg_master_switch>
  0x00000000004110c8 <+1272>:  callq  0x4e7490 <Volatile<int>::operator int() const>
  0x00000000004110cd <+1277>:  mov    %eax,-0x5d0(%rbp)
  0x00000000004110d3 <+1283>:  jmpq   0x4110d8 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1288>
  0x00000000004110d8 <+1288>:  mov    -0x5d0(%rbp),%eax
  0x00000000004110de <+1294>:  cmp    $0x0,%eax
  0x00000000004110e1 <+1297>:  je     0x411180 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1456>
  0x00000000004110e7 <+1303>:  callq  0x447000 <GetLastError()>
  0x00000000004110ec <+1308>:  mov    %eax,-0x5d4(%rbp)
  0x00000000004110f2 <+1314>:  jmpq   0x4110f7 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1319>
  0x00000000004110f7 <+1319>:  mov    %rsp,%rax
  0x00000000004110fa <+1322>:  mov    -0x5d4(%rbp),%ecx
  0x0000000000411100 <+1328>:  mov    %ecx,0x8(%rax)
  0x0000000000411103 <+1331>:  lea    0xe1d7c(%rip),%rdx        # 0x4f2e86
  0x000000000041110a <+1338>:  mov    %rdx,(%rax)
  0x000000000041110d <+1341>:  lea    0xe235f(%rip),%rcx        # 0x4f3473
  0x0000000000411114 <+1348>:  lea    0xe216e(%rip),%r8        # 0x4f3289
  0x000000000041111b <+1355>:  xor    %esi,%esi
  0x000000000041111d <+1357>:  mov    %sil,%dil
  0x0000000000411120 <+1360>:  mov    $0x7,%esi
  0x0000000000411125 <+1365>:  mov    $0x4,%r9d
  0x000000000041112b <+1371>:  mov    $0x1,%edx
  0x0000000000411130 <+1376>:  mov    $0x662,%r10d
  0x0000000000411136 <+1382>:  mov    %dil,-0x5d5(%rbp)
  0x000000000041113d <+1389>:  mov    %esi,%edi
  0x000000000041113f <+1391>:  mov    %r9d,%esi
  0x0000000000411142 <+1394>:  mov    %r10d,%r9d
  0x0000000000411145 <+1397>:  mov    -0x5d5(%rbp),%al
  0x000000000041114b <+1403>:  callq  0x4461c0 <DBG_printf_gcc(DBG_CHANNEL_ID, DBG_LEVEL_ID, BOOL, LPCSTR, LPCSTR, INT, LPCSTR, ...)>
  0x0000000000411150 <+1408>:  mov    %eax,-0x5dc(%rbp)
  0x0000000000411156 <+1414>:  jmpq   0x41115b <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1419>
  0x000000000041115b <+1419>:  jmpq   0x411180 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1456>
  0x0000000000411160 <+1424>:  lea    -0x488(%rbp),%rdi
  0x0000000000411176 <+1446>:  callq  0x4e75b0 <PAL_EnterHolder::~PAL_EnterHolder()>
  0x000000000041117b <+1451>:  jmpq   0x4123ee <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+6174>
  0x0000000000411180 <+1456>:  lea    0x319359(%rip),%rax        # 0x72a4e0 <g_Dbg_asserts_enabled>
  0x0000000000411187 <+1463>:  cmpl   $0x0,(%rax)
  0x000000000041118a <+1466>:  je     0x41119f <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1487>
  0x0000000000411190 <+1472>:  callq  0x420ed0 <DebugBreak()>
  0x0000000000411195 <+1477>:  jmpq   0x41119a <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1482>
  0x000000000041119a <+1482>:  jmpq   0x41119f <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1487>
  0x000000000041119f <+1487>:  lea    -0x488(%rbp),%rdi
  0x00000000004111a6 <+1494>:  callq  0x4e75b0 <PAL_EnterHolder::~PAL_EnterHolder()>
  0x00000000004111ab <+1499>:  lea    -0x430(%rbp),%rdi
  0x00000000004123ee <+6174>:  mov    -0x500(%rbp),%rdi
  0x00000000004123f5 <+6181>:  callq  0x404e00 <_Unwind_Resume@plt>
  0x00000000004123fa <+6186>:  callq  0x404940 <__stack_chk_fail@plt>
  0x00000000004123ff:  nop

1634                              GetLastError());
1635                        va_end(ap);
1636                        return -1;
  0x00000000004111b2 <+1506>:  movl   $0xffffffff,-0x4a4(%rbp)
  0x00000000004111bc <+1516>:  mov    %rdi,-0x5e8(%rbp)
  0x00000000004111c3 <+1523>:  jmpq   0x4123bf <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+6127>

1637                    }
1638                    TempStr = (LPSTR) InternalMalloc(Length);
  0x00000000004111c8 <+1528>:  movslq -0x4ec(%rbp),%rdi
  0x00000000004111cf <+1535>:  callq  0x406ee0 <CorUnix::InternalMalloc(unsigned long)>
  0x00000000004111d4 <+1540>:  mov    %rax,-0x4e8(%rbp)

1639                    if (!TempStr)
  0x00000000004111db <+1547>:  cmpq   $0x0,-0x4e8(%rbp)
  0x00000000004111e3 <+1555>:  jne    0x4112a8 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1752>
  0x00000000004111e9 <+1561>:  lea    0x3192f8(%rip),%rax        # 0x72a4e8 <output_file>

1640                    {
1641                        ERROR("InternalMalloc failed\n");
  0x00000000004111f0 <+1568>:  cmpq   $0x0,(%rax)
  0x00000000004111f4 <+1572>:  je     0x411281 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1713>
  0x00000000004111fa <+1578>:  lea    0x3192ef(%rip),%rdi        # 0x72a4f0 <dbg_master_switch>
  0x0000000000411201 <+1585>:  callq  0x4e7490 <Volatile<int>::operator int() const>
  0x0000000000411206 <+1590>:  cmp    $0x0,%eax
  0x0000000000411209 <+1593>:  je     0x411281 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1713>
  0x000000000041120f <+1599>:  lea    0x31926a(%rip),%rax        # 0x72a480 <dbg_channel_flags>
  0x0000000000411216 <+1606>:  mov    0x1c(%rax),%ecx
  0x0000000000411219 <+1609>:  and    $0x8,%ecx
  0x000000000041121c <+1612>:  cmp    $0x0,%ecx
  0x000000000041121f <+1615>:  je     0x411281 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1713>
  0x0000000000411225 <+1621>:  lea    0xe2247(%rip),%rcx        # 0x4f3473
  0x000000000041122c <+1628>:  lea    0xe2056(%rip),%r8        # 0x4f3289
  0x0000000000411233 <+1635>:  mov    $0x669,%r9d
  0x0000000000411239 <+1641>:  lea    0xe2099(%rip),%rax        # 0x4f32d9
  0x0000000000411240 <+1648>:  movl   $0x7,-0x508(%rbp)
  0x000000000041124a <+1658>:  movl   $0x3,-0x50c(%rbp)
  0x0000000000411254 <+1668>:  movl   $0x1,-0x510(%rbp)
  0x000000000041125e <+1678>:  mov    -0x508(%rbp),%edi
  0x0000000000411264 <+1684>:  mov    -0x50c(%rbp),%esi
  0x000000000041126a <+1690>:  mov    -0x510(%rbp),%edx
  0x0000000000411270 <+1696>:  mov    %rax,(%rsp)
  0x0000000000411274 <+1700>:  mov    $0x0,%al
  0x0000000000411276 <+1702>:  callq  0x4461c0 <DBG_printf_gcc(DBG_CHANNEL_ID, DBG_LEVEL_ID, BOOL, LPCSTR, LPCSTR, INT, LPCSTR, ...)>
  0x000000000041127b <+1707>:  mov    %eax,-0x5ec(%rbp)
  0x0000000000411281 <+1713>:  mov    $0x8,%edi

1642                        pthrCurrent->SetLastError(ERROR_NOT_ENOUGH_MEMORY);
  0x0000000000411286 <+1718>:  callq  0x4e7620 <CorUnix::CPalThread::SetLastError(unsigned int)>
  0x000000000041128b <+1723>:  lea    -0x430(%rbp),%rax

1643                        va_end(ap);
1644                        return -1;
  0x0000000000411292 <+1730>:  movl   $0xffffffff,-0x4a4(%rbp)
  0x000000000041129c <+1740>:  mov    %rax,-0x5f8(%rbp)
  0x00000000004112a3 <+1747>:  jmpq   0x4123bf <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+6127>
  0x00000000004112a8 <+1752>:  mov    $0xfffffffd,%eax

1645                    }
1646                    if (PRECISION_DOT == Precision)
  0x00000000004112ad <+1757>:  cmp    -0x478(%rbp),%eax
  0x00000000004112b3 <+1763>:  jne    0x4112d2 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+1794>

1647                    {
1648                        /* copy nothing */
1649                        *TempStr = 0;
  0x00000000004112b9 <+1769>:  mov    -0x4e8(%rbp),%rax
  0x00000000004112c0 <+1776>:  movb   $0x0,(%rax)

1650                        Length = 0;
  0x00000000004112c3 <+1779>:  movl   $0x0,-0x4ec(%rbp)

1651                    }
  0x00000000004112cd <+1789>:  jmpq   0x41170b <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2875>

1652                    else if (Precision > 0 && Precision < Length - 1)
  0x00000000004112d2 <+1794>:  cmpl   $0x0,-0x478(%rbp)
  0x00000000004112d9 <+1801>:  jle    0x411511 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2369>
  0x00000000004112df <+1807>:  mov    -0x478(%rbp),%eax
  0x00000000004112e5 <+1813>:  mov    -0x4ec(%rbp),%ecx
  0x00000000004112eb <+1819>:  sub    $0x1,%ecx
  0x00000000004112ee <+1822>:  cmp    %ecx,%eax
  0x00000000004112f0 <+1824>:  jge    0x411511 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2369>
  0x00000000004112f6 <+1830>:  xor    %eax,%eax
  0x00000000004112f8 <+1832>:  xor    %ecx,%ecx
  0x00000000004112fa <+1834>:  mov    %ecx,%edx

1653                    {
1654                        Length = WideCharToMultiByte(CP_ACP, 0, TempWStr,
  0x00000000004112fc <+1836>:  mov    -0x4e0(%rbp),%rsi
  0x0000000000411317 <+1863>:  mov    %eax,%edi
  0x0000000000411319 <+1865>:  mov    %rsi,-0x600(%rbp)
  0x0000000000411320 <+1872>:  mov    %eax,%esi
  0x0000000000411322 <+1874>:  mov    -0x600(%rbp),%r10
  0x0000000000411329 <+1881>:  mov    %rdx,-0x608(%rbp)
  0x0000000000411330 <+1888>:  mov    %r10,%rdx
  0x0000000000411333 <+1891>:  movq   $0x0,(%rsp)
  0x000000000041133b <+1899>:  movq   $0x0,0x8(%rsp)
  0x0000000000411344 <+1908>:  callq  0x435a20 <WideCharToMultiByte(UINT, DWORD, LPCWSTR, int, LPSTR, int, LPCSTR, LPBOOL)>
  0x0000000000411349 <+1913>:  mov    %eax,-0x4ec(%rbp)

1655                                                     Precision, TempStr, Length,
  0x0000000000411303 <+1843>:  mov    -0x478(%rbp),%ecx
  0x0000000000411309 <+1849>:  mov    -0x4e8(%rbp),%r8
  0x0000000000411310 <+1856>:  mov    -0x4ec(%rbp),%r9d

1656                                                     0, 0);
1657                        if (!Length)
  0x000000000041134f <+1919>:  cmpl   $0x0,-0x4ec(%rbp)
  0x0000000000411356 <+1926>:  jne    0x4114ee <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2334>

1658                        {
1659                            ASSERT("WideCharToMultiByte failed.  Error is %d\n",
  0x000000000041135c <+1932>:  callq  0x429970 <PALIsThreadDataInitialized()>
  0x0000000000411361 <+1937>:  xor    %ecx,%ecx
  0x0000000000411363 <+1939>:  mov    %cl,%dl
  0x0000000000411365 <+1941>:  cmp    $0x0,%eax
  0x0000000000411368 <+1944>:  mov    %dl,-0x609(%rbp)
  0x000000000041136e <+1950>:  je     0x4113b3 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2019>
  0x0000000000411374 <+1956>:  callq  0x4e74f0 <CorUnix::InternalGetCurrentThread()>
  0x0000000000411379 <+1961>:  mov    $0x1,%cl
  0x000000000041137b <+1963>:  cmp    $0x0,%rax
  0x000000000041137f <+1967>:  mov    %cl,-0x60a(%rbp)
  0x0000000000411385 <+1973>:  je     0x4113a7 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2007>
  0x000000000041138b <+1979>:  callq  0x4e74f0 <CorUnix::InternalGetCurrentThread()>
  0x0000000000411390 <+1984>:  mov    %rax,%rdi
  0x0000000000411393 <+1987>:  callq  0x4e7520 <CorUnix::CPalThread::IsInPal()>
  0x0000000000411398 <+1992>:  cmp    $0x0,%eax
  0x000000000041139b <+1995>:  setne  %cl
  0x000000000041139e <+1998>:  xor    $0xff,%cl
  0x00000000004113a1 <+2001>:  mov    %cl,-0x60a(%rbp)
  0x00000000004113a7 <+2007>:  mov    -0x60a(%rbp),%al
  0x00000000004113ad <+2013>:  mov    %al,-0x609(%rbp)
  0x00000000004113b3 <+2019>:  mov    -0x609(%rbp),%al
  0x00000000004113b9 <+2025>:  lea    -0x490(%rbp),%rdi
  0x00000000004113c0 <+2032>:  and    $0x1,%al
  0x00000000004113c2 <+2034>:  movzbl %al,%esi
  0x00000000004113c5 <+2037>:  callq  0x4e7540 <PAL_EnterHolder::PAL_EnterHolder(int)>
  0x00000000004113ca <+2042>:  lea    0x319117(%rip),%rdi        # 0x72a4e8 <output_file>
  0x00000000004113d1 <+2049>:  cmpq   $0x0,(%rdi)
  0x00000000004113d5 <+2053>:  je     0x41149a <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2250>
  0x00000000004113db <+2059>:  lea    0x31910e(%rip),%rdi        # 0x72a4f0 <dbg_master_switch>
  0x00000000004113e2 <+2066>:  callq  0x4e7490 <Volatile<int>::operator int() const>
  0x00000000004113e7 <+2071>:  mov    %eax,-0x610(%rbp)
  0x00000000004113ed <+2077>:  jmpq   0x4113f2 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2082>
  0x00000000004113f2 <+2082>:  mov    -0x610(%rbp),%eax
  0x00000000004113f8 <+2088>:  cmp    $0x0,%eax
  0x00000000004113fb <+2091>:  je     0x41149a <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2250>
  0x0000000000411401 <+2097>:  callq  0x447000 <GetLastError()>
  0x0000000000411406 <+2102>:  mov    %eax,-0x614(%rbp)
  0x000000000041140c <+2108>:  jmpq   0x411411 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2113>
  0x0000000000411411 <+2113>:  mov    %rsp,%rax
  0x0000000000411414 <+2116>:  mov    -0x614(%rbp),%ecx
  0x000000000041141a <+2122>:  mov    %ecx,0x8(%rax)
  0x000000000041141d <+2125>:  lea    0xe1a62(%rip),%rdx        # 0x4f2e86
  0x0000000000411424 <+2132>:  mov    %rdx,(%rax)
  0x0000000000411427 <+2135>:  lea    0xe2045(%rip),%rcx        # 0x4f3473
  0x000000000041142e <+2142>:  lea    0xe1e54(%rip),%r8        # 0x4f3289
  0x0000000000411435 <+2149>:  xor    %esi,%esi
  0x0000000000411437 <+2151>:  mov    %sil,%dil
  0x000000000041143a <+2154>:  mov    $0x7,%esi
  0x000000000041143f <+2159>:  mov    $0x4,%r9d
  0x0000000000411445 <+2165>:  mov    $0x1,%edx
  0x000000000041144a <+2170>:  mov    $0x67c,%r10d
  0x0000000000411450 <+2176>:  mov    %dil,-0x615(%rbp)
  0x0000000000411457 <+2183>:  mov    %esi,%edi
  0x0000000000411459 <+2185>:  mov    %r9d,%esi
  0x000000000041145c <+2188>:  mov    %r10d,%r9d
  0x000000000041145f <+2191>:  mov    -0x615(%rbp),%al
  0x0000000000411465 <+2197>:  callq  0x4461c0 <DBG_printf_gcc(DBG_CHANNEL_ID, DBG_LEVEL_ID, BOOL, LPCSTR, LPCSTR, INT, LPCSTR, ...)>
  0x000000000041146a <+2202>:  mov    %eax,-0x61c(%rbp)
  0x0000000000411470 <+2208>:  jmpq   0x411475 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2213>
  0x0000000000411475 <+2213>:  jmpq   0x41149a <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2250>
  0x000000000041147a <+2218>:  lea    -0x490(%rbp),%rdi
  0x0000000000411490 <+2240>:  callq  0x4e75b0 <PAL_EnterHolder::~PAL_EnterHolder()>
  0x0000000000411495 <+2245>:  jmpq   0x4123ee <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+6174>
  0x000000000041149a <+2250>:  lea    0x31903f(%rip),%rax        # 0x72a4e0 <g_Dbg_asserts_enabled>
  0x00000000004114a1 <+2257>:  cmpl   $0x0,(%rax)
  0x00000000004114a4 <+2260>:  je     0x4114b9 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2281>
  0x00000000004114aa <+2266>:  callq  0x420ed0 <DebugBreak()>
  0x00000000004114af <+2271>:  jmpq   0x4114b4 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2276>
  0x00000000004114b4 <+2276>:  jmpq   0x4114b9 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2281>
  0x00000000004114b9 <+2281>:  lea    -0x490(%rbp),%rdi
  0x00000000004114c0 <+2288>:  callq  0x4e75b0 <PAL_EnterHolder::~PAL_EnterHolder()>

1660                                  GetLastError());
1661                            InternalFree(TempStr);
  0x00000000004114c5 <+2293>:  mov    -0x4e8(%rbp),%rdi
  0x00000000004114cc <+2300>:  callq  0x406e80 <CorUnix::InternalFree(void*)>
  0x00000000004114d1 <+2305>:  lea    -0x430(%rbp),%rdi

1662                            va_end(ap);
1663                            return -1;
  0x00000000004114d8 <+2312>:  movl   $0xffffffff,-0x4a4(%rbp)
  0x00000000004114e2 <+2322>:  mov    %rdi,-0x628(%rbp)
  0x00000000004114e9 <+2329>:  jmpq   0x4123bf <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+6127>

1664                        }
1665                        TempStr[Length] = 0;
  0x00000000004114ee <+2334>:  movslq -0x4ec(%rbp),%rax
  0x00000000004114f5 <+2341>:  mov    -0x4e8(%rbp),%rcx
  0x00000000004114fc <+2348>:  movb   $0x0,(%rcx,%rax,1)

1666                        Length = Precision;
  0x0000000000411500 <+2352>:  mov    -0x478(%rbp),%edx
  0x0000000000411506 <+2358>:  mov    %edx,-0x4ec(%rbp)

1667                    }
  0x000000000041150c <+2364>:  jmpq   0x411706 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2870>
  0x0000000000411511 <+2369>:  xor    %eax,%eax
  0x0000000000411513 <+2371>:  mov    $0xffffffff,%ecx
  0x0000000000411518 <+2376>:  xor    %edx,%edx
  0x000000000041151a <+2378>:  mov    %edx,%esi

1668                    /* copy everything */
1669                    else
1670                    {
1671                        wctombResult = WideCharToMultiByte(CP_ACP, 0, TempWStr, -1,
  0x000000000041151c <+2380>:  mov    -0x4e0(%rbp),%rdx
  0x0000000000411531 <+2401>:  mov    %eax,%edi
  0x0000000000411533 <+2403>:  mov    %rsi,-0x630(%rbp)
  0x000000000041153a <+2410>:  mov    %eax,%esi
  0x000000000041153c <+2412>:  movq   $0x0,(%rsp)
  0x0000000000411544 <+2420>:  movq   $0x0,0x8(%rsp)
  0x000000000041154d <+2429>:  callq  0x435a20 <WideCharToMultiByte(UINT, DWORD, LPCWSTR, int, LPSTR, int, LPCSTR, LPBOOL)>
  0x0000000000411552 <+2434>:  mov    %eax,-0x4f4(%rbp)

1672                                                           TempStr, Length, 0, 0);
  0x0000000000411523 <+2387>:  mov    -0x4e8(%rbp),%r8
  0x000000000041152a <+2394>:  mov    -0x4ec(%rbp),%r9d

1673                        if (!wctombResult)
  0x0000000000411558 <+2440>:  cmpl   $0x0,-0x4f4(%rbp)
  0x000000000041155f <+2447>:  jne    0x4116f7 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2855>

1674                        {
1675                            ASSERT("WideCharToMultiByte failed.  Error is %d\n",
  0x0000000000411565 <+2453>:  callq  0x429970 <PALIsThreadDataInitialized()>
  0x000000000041156a <+2458>:  xor    %ecx,%ecx
  0x000000000041156c <+2460>:  mov    %cl,%dl
  0x000000000041156e <+2462>:  cmp    $0x0,%eax
  0x0000000000411571 <+2465>:  mov    %dl,-0x631(%rbp)
  0x0000000000411577 <+2471>:  je     0x4115bc <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2540>
  0x000000000041157d <+2477>:  callq  0x4e74f0 <CorUnix::InternalGetCurrentThread()>
  0x0000000000411582 <+2482>:  mov    $0x1,%cl
  0x0000000000411584 <+2484>:  cmp    $0x0,%rax
  0x0000000000411588 <+2488>:  mov    %cl,-0x632(%rbp)
  0x000000000041158e <+2494>:  je     0x4115b0 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2528>
  0x0000000000411594 <+2500>:  callq  0x4e74f0 <CorUnix::InternalGetCurrentThread()>
  0x0000000000411599 <+2505>:  mov    %rax,%rdi
  0x000000000041159c <+2508>:  callq  0x4e7520 <CorUnix::CPalThread::IsInPal()>
  0x00000000004115a1 <+2513>:  cmp    $0x0,%eax
  0x00000000004115a4 <+2516>:  setne  %cl
  0x00000000004115a7 <+2519>:  xor    $0xff,%cl
  0x00000000004115aa <+2522>:  mov    %cl,-0x632(%rbp)
  0x00000000004115b0 <+2528>:  mov    -0x632(%rbp),%al
  0x00000000004115b6 <+2534>:  mov    %al,-0x631(%rbp)
  0x00000000004115bc <+2540>:  mov    -0x631(%rbp),%al
  0x00000000004115c2 <+2546>:  lea    -0x498(%rbp),%rdi
  0x00000000004115c9 <+2553>:  and    $0x1,%al
  0x00000000004115cb <+2555>:  movzbl %al,%esi
  0x00000000004115ce <+2558>:  callq  0x4e7540 <PAL_EnterHolder::PAL_EnterHolder(int)>
  0x00000000004115d3 <+2563>:  lea    0x318f0e(%rip),%rdi        # 0x72a4e8 <output_file>
  0x00000000004115da <+2570>:  cmpq   $0x0,(%rdi)
  0x00000000004115de <+2574>:  je     0x4116a3 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2771>
  0x00000000004115e4 <+2580>:  lea    0x318f05(%rip),%rdi        # 0x72a4f0 <dbg_master_switch>
  0x00000000004115eb <+2587>:  callq  0x4e7490 <Volatile<int>::operator int() const>
  0x00000000004115f0 <+2592>:  mov    %eax,-0x638(%rbp)
  0x00000000004115f6 <+2598>:  jmpq   0x4115fb <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2603>
  0x00000000004115fb <+2603>:  mov    -0x638(%rbp),%eax
  0x0000000000411601 <+2609>:  cmp    $0x0,%eax
  0x0000000000411604 <+2612>:  je     0x4116a3 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2771>
  0x000000000041160a <+2618>:  callq  0x447000 <GetLastError()>
  0x000000000041160f <+2623>:  mov    %eax,-0x63c(%rbp)
  0x0000000000411615 <+2629>:  jmpq   0x41161a <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2634>
  0x000000000041161a <+2634>:  mov    %rsp,%rax
  0x000000000041161d <+2637>:  mov    -0x63c(%rbp),%ecx
  0x0000000000411623 <+2643>:  mov    %ecx,0x8(%rax)
  0x0000000000411626 <+2646>:  lea    0xe1859(%rip),%rdx        # 0x4f2e86
  0x000000000041162d <+2653>:  mov    %rdx,(%rax)
  0x0000000000411630 <+2656>:  lea    0xe1e3c(%rip),%rcx        # 0x4f3473
  0x0000000000411637 <+2663>:  lea    0xe1c4b(%rip),%r8        # 0x4f3289
  0x000000000041163e <+2670>:  xor    %esi,%esi
  0x0000000000411640 <+2672>:  mov    %sil,%dil
  0x0000000000411643 <+2675>:  mov    $0x7,%esi
  0x0000000000411648 <+2680>:  mov    $0x4,%r9d
  0x000000000041164e <+2686>:  mov    $0x1,%edx
  0x0000000000411653 <+2691>:  mov    $0x68c,%r10d
  0x0000000000411659 <+2697>:  mov    %dil,-0x63d(%rbp)
  0x0000000000411660 <+2704>:  mov    %esi,%edi
  0x0000000000411662 <+2706>:  mov    %r9d,%esi
  0x0000000000411665 <+2709>:  mov    %r10d,%r9d
  0x0000000000411668 <+2712>:  mov    -0x63d(%rbp),%al
  0x000000000041166e <+2718>:  callq  0x4461c0 <DBG_printf_gcc(DBG_CHANNEL_ID, DBG_LEVEL_ID, BOOL, LPCSTR, LPCSTR, INT, LPCSTR, ...)>
  0x0000000000411673 <+2723>:  mov    %eax,-0x644(%rbp)
  0x0000000000411679 <+2729>:  jmpq   0x41167e <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2734>
  0x000000000041167e <+2734>:  jmpq   0x4116a3 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2771>
  0x0000000000411683 <+2739>:  lea    -0x498(%rbp),%rdi
  0x0000000000411699 <+2761>:  callq  0x4e75b0 <PAL_EnterHolder::~PAL_EnterHolder()>
  0x000000000041169e <+2766>:  jmpq   0x4123ee <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+6174>
  0x00000000004116a3 <+2771>:  lea    0x318e36(%rip),%rax        # 0x72a4e0 <g_Dbg_asserts_enabled>
  0x00000000004116aa <+2778>:  cmpl   $0x0,(%rax)
  0x00000000004116ad <+2781>:  je     0x4116c2 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2802>
  0x00000000004116b3 <+2787>:  callq  0x420ed0 <DebugBreak()>
  0x00000000004116b8 <+2792>:  jmpq   0x4116bd <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2797>
  0x00000000004116bd <+2797>:  jmpq   0x4116c2 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2802>
  0x00000000004116c2 <+2802>:  lea    -0x498(%rbp),%rdi
  0x00000000004116c9 <+2809>:  callq  0x4e75b0 <PAL_EnterHolder::~PAL_EnterHolder()>

1676                                  GetLastError());
1677                            InternalFree(TempStr);
  0x00000000004116ce <+2814>:  mov    -0x4e8(%rbp),%rdi
  0x00000000004116d5 <+2821>:  callq  0x406e80 <CorUnix::InternalFree(void*)>
  0x00000000004116da <+2826>:  lea    -0x430(%rbp),%rdi

1678                            va_end(ap);
1679                            return -1;
  0x00000000004116e1 <+2833>:  movl   $0xffffffff,-0x4a4(%rbp)
  0x00000000004116eb <+2843>:  mov    %rdi,-0x650(%rbp)
  0x00000000004116f2 <+2850>:  jmpq   0x4123bf <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+6127>

1680                        }
1681                        --Length; /* exclude null char */
  0x00000000004116f7 <+2855>:  mov    -0x4ec(%rbp),%eax
  0x00000000004116fd <+2861>:  add    $0xffffffff,%eax
  0x0000000000411700 <+2864>:  mov    %eax,-0x4ec(%rbp)
  0x0000000000411706 <+2870>:  jmpq   0x41170b <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+2875>
  0x000000000041170b <+2875>:  lea    -0x460(%rbp),%rdi

1682                    }
1683
1684                    /* do the padding (if needed)*/
1685                    BufferRanOut = !Internal_AddPaddingA(&BufferPtr,
  0x000000000041174b <+2939>:  mov    %r8d,%ecx
  0x000000000041174e <+2942>:  mov    %r9d,%r8d
  0x0000000000411751 <+2945>:  callq  0x406f40 <Internal_AddPaddingA(LPSTR*, INT, LPSTR, INT, INT)>
  0x0000000000411756 <+2950>:  cmp    $0x0,%eax
  0x0000000000411759 <+2953>:  setne  %r10b
  0x000000000041175d <+2957>:  xor    $0xff,%r10b
  0x0000000000411761 <+2961>:  and    $0x1,%r10b
  0x0000000000411765 <+2965>:  movzbl %r10b,%eax
  0x0000000000411769 <+2969>:  mov    %eax,-0x4d4(%rbp)

1686                                                       Count - (BufferPtr - Buffer),
  0x0000000000411712 <+2882>:  mov    -0x4c0(%rbp),%rax
  0x0000000000411719 <+2889>:  mov    -0x460(%rbp),%rcx
  0x0000000000411720 <+2896>:  mov    -0x4b8(%rbp),%rdx
  0x0000000000411727 <+2903>:  sub    %rdx,%rcx
  0x000000000041172a <+2906>:  sub    %rcx,%rax
  0x000000000041172d <+2909>:  mov    %eax,%esi

1687                                                       TempStr,
  0x000000000041172f <+2911>:  mov    -0x4e8(%rbp),%rdx

1688                                                       Width - Length,
  0x0000000000411736 <+2918>:  mov    -0x474(%rbp),%r8d
  0x000000000041173d <+2925>:  sub    -0x4ec(%rbp),%r8d

1689                                                       Flags);
  0x0000000000411744 <+2932>:  mov    -0x470(%rbp),%r9d

1690
1691                    InternalFree(TempStr);
  0x000000000041176f <+2975>:  mov    -0x4e8(%rbp),%rdi
  0x0000000000411776 <+2982>:  callq  0x406e80 <CorUnix::InternalFree(void*)>

1692                }
  0x000000000041177b <+2987>:  jmpq   0x412304 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5940>

1693                else if (Prefix == PFF_PREFIX_LONG && Type == PFF_TYPE_CHAR)
  0x0000000000411780 <+2992>:  cmpl   $0x2,-0x47c(%rbp)
  0x0000000000411787 <+2999>:  jne    0x411ba5 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4053>
  0x000000000041178d <+3005>:  cmpl   $0x1,-0x480(%rbp)
  0x0000000000411794 <+3012>:  jne    0x411ba5 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4053>
  0x000000000041179a <+3018>:  mov    $0xfffffffe,%eax

1694                {
1695                    CHAR TempBuffer[5];
1696
1697                    if (WIDTH_STAR == Width ||
  0x000000000041179f <+3023>:  cmp    -0x474(%rbp),%eax
  0x00000000004117a5 <+3029>:  je     0x4117bc <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3052>
  0x00000000004117ab <+3035>:  mov    $0xfffffffd,%eax
  0x00000000004117b6 <+3046>:  jne    0x411830 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3168>
  0x00000000004117bc <+3052>:  lea    -0x430(%rbp),%rax

1698                        WIDTH_INVALID == Width)
  0x00000000004117b0 <+3040>:  cmp    -0x474(%rbp),%eax

1699                    {
1700                        /* ignore (because it's a char), and remove arg */
1701                        TempInt = va_arg(ap, INT); /* value not used */
  0x00000000004117c3 <+3059>:  mov    -0x430(%rbp),%ecx
  0x00000000004117c9 <+3065>:  cmp    $0x28,%ecx
  0x00000000004117cc <+3068>:  mov    %rax,-0x658(%rbp)
  0x00000000004117d3 <+3075>:  mov    %ecx,-0x65c(%rbp)
  0x00000000004117d9 <+3081>:  ja     0x411804 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3124>
  0x00000000004117df <+3087>:  mov    -0x65c(%rbp),%eax
  0x00000000004117e5 <+3093>:  movslq %eax,%rcx
  0x00000000004117e8 <+3096>:  mov    -0x658(%rbp),%rdx
  0x00000000004117ef <+3103>:  add    0x10(%rdx),%rcx
  0x00000000004117f3 <+3107>:  add    $0x8,%eax
  0x00000000004117f6 <+3110>:  mov    %eax,(%rdx)
  0x00000000004117f8 <+3112>:  mov    %rcx,-0x668(%rbp)
  0x00000000004117ff <+3119>:  jmpq   0x411821 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3153>
  0x0000000000411804 <+3124>:  mov    -0x658(%rbp),%rax
  0x000000000041180b <+3131>:  mov    0x8(%rax),%rcx
  0x000000000041180f <+3135>:  mov    %rcx,%rdx
  0x0000000000411812 <+3138>:  add    $0x8,%rcx
  0x0000000000411816 <+3142>:  mov    %rcx,0x8(%rax)
  0x000000000041181a <+3146>:  mov    %rdx,-0x668(%rbp)
  0x0000000000411821 <+3153>:  mov    -0x668(%rbp),%rax
  0x0000000000411828 <+3160>:  mov    (%rax),%ecx
  0x000000000041182a <+3162>:  mov    %ecx,-0x4f0(%rbp)
  0x0000000000411830 <+3168>:  mov    $0xfffffffe,%eax

1702                    }
1703                    if (PRECISION_STAR == Precision ||
  0x0000000000411835 <+3173>:  cmp    -0x478(%rbp),%eax
  0x000000000041183b <+3179>:  je     0x411852 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3202>
  0x0000000000411841 <+3185>:  mov    $0xfffffffc,%eax
  0x000000000041184c <+3196>:  jne    0x4118c6 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3318>
  0x0000000000411852 <+3202>:  lea    -0x430(%rbp),%rax

1704                        PRECISION_INVALID == Precision)
  0x0000000000411846 <+3190>:  cmp    -0x478(%rbp),%eax

1705                    {
1706                        /* ignore (because it's a char), and remove arg */
1707                        TempInt = va_arg(ap, INT); /* value not used */
  0x0000000000411859 <+3209>:  mov    -0x430(%rbp),%ecx
  0x000000000041185f <+3215>:  cmp    $0x28,%ecx
  0x0000000000411862 <+3218>:  mov    %rax,-0x670(%rbp)
  0x0000000000411869 <+3225>:  mov    %ecx,-0x674(%rbp)
  0x000000000041186f <+3231>:  ja     0x41189a <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3274>
  0x0000000000411875 <+3237>:  mov    -0x674(%rbp),%eax
  0x000000000041187b <+3243>:  movslq %eax,%rcx
  0x000000000041187e <+3246>:  mov    -0x670(%rbp),%rdx
  0x0000000000411885 <+3253>:  add    0x10(%rdx),%rcx
  0x0000000000411889 <+3257>:  add    $0x8,%eax
  0x000000000041188c <+3260>:  mov    %eax,(%rdx)
  0x000000000041188e <+3262>:  mov    %rcx,-0x680(%rbp)
  0x0000000000411895 <+3269>:  jmpq   0x4118b7 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3303>
  0x000000000041189a <+3274>:  mov    -0x670(%rbp),%rax
  0x00000000004118a1 <+3281>:  mov    0x8(%rax),%rcx
  0x00000000004118a5 <+3285>:  mov    %rcx,%rdx
  0x00000000004118a8 <+3288>:  add    $0x8,%rcx
  0x00000000004118ac <+3292>:  mov    %rcx,0x8(%rax)
  0x00000000004118b0 <+3296>:  mov    %rdx,-0x680(%rbp)
  0x00000000004118b7 <+3303>:  mov    -0x680(%rbp),%rax
  0x00000000004118be <+3310>:  mov    (%rax),%ecx
  0x00000000004118c0 <+3312>:  mov    %ecx,-0x4f0(%rbp)
  0x00000000004118c6 <+3318>:  lea    -0x430(%rbp),%rax

1708                    }
1709
1710                    TempWChar = va_arg(ap, int);
  0x00000000004118cd <+3325>:  mov    -0x430(%rbp),%ecx
  0x00000000004118d3 <+3331>:  cmp    $0x28,%ecx
  0x00000000004118d6 <+3334>:  mov    %rax,-0x688(%rbp)
  0x00000000004118dd <+3341>:  mov    %ecx,-0x68c(%rbp)
  0x00000000004118e3 <+3347>:  ja     0x41190e <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3390>
  0x00000000004118e9 <+3353>:  mov    -0x68c(%rbp),%eax
  0x00000000004118ef <+3359>:  movslq %eax,%rcx
  0x00000000004118f2 <+3362>:  mov    -0x688(%rbp),%rdx
  0x00000000004118f9 <+3369>:  add    0x10(%rdx),%rcx
  0x00000000004118fd <+3373>:  add    $0x8,%eax
  0x0000000000411900 <+3376>:  mov    %eax,(%rdx)
  0x0000000000411902 <+3378>:  mov    %rcx,-0x698(%rbp)
  0x0000000000411909 <+3385>:  jmpq   0x41192b <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3419>
  0x000000000041190e <+3390>:  mov    -0x688(%rbp),%rax
  0x0000000000411915 <+3397>:  mov    0x8(%rax),%rcx
  0x0000000000411919 <+3401>:  mov    %rcx,%rdx
  0x000000000041191c <+3404>:  add    $0x8,%rcx
  0x0000000000411920 <+3408>:  mov    %rcx,0x8(%rax)
  0x0000000000411924 <+3412>:  mov    %rdx,-0x698(%rbp)
  0x000000000041192b <+3419>:  mov    -0x698(%rbp),%rax
  0x0000000000411932 <+3426>:  xor    %ecx,%ecx
  0x0000000000411934 <+3428>:  lea    -0x46a(%rbp),%rdx
  0x000000000041193b <+3435>:  mov    $0x1,%esi
  0x0000000000411940 <+3440>:  mov    $0x5,%r9d
  0x0000000000411946 <+3446>:  xor    %edi,%edi
  0x0000000000411948 <+3448>:  mov    %edi,%r8d
  0x000000000041194b <+3451>:  lea    -0x455(%rbp),%r10
  0x0000000000411952 <+3458>:  mov    (%rax),%edi
  0x0000000000411954 <+3460>:  mov    %di,%r11w
  0x0000000000411958 <+3464>:  mov    %r11w,-0x46a(%rbp)

1711                    Length = WideCharToMultiByte(CP_ACP, 0, &TempWChar, 1,
  0x0000000000411960 <+3472>:  mov    %ecx,%edi
  0x0000000000411962 <+3474>:  mov    %esi,-0x69c(%rbp)
  0x0000000000411968 <+3480>:  mov    %ecx,%esi
  0x000000000041196a <+3482>:  mov    -0x69c(%rbp),%ecx
  0x0000000000411970 <+3488>:  mov    %r8,-0x6a8(%rbp)
  0x0000000000411977 <+3495>:  mov    %r10,%r8
  0x000000000041197a <+3498>:  movq   $0x0,(%rsp)
  0x0000000000411982 <+3506>:  movq   $0x0,0x8(%rsp)
  0x000000000041198b <+3515>:  callq  0x435a20 <WideCharToMultiByte(UINT, DWORD, LPCWSTR, int, LPSTR, int, LPCSTR, LPBOOL)>
  0x0000000000411990 <+3520>:  mov    %eax,-0x4ec(%rbp)

1712                                                 TempBuffer, sizeof(TempBuffer),
1713                                                 0, 0);
1714                    if (!Length)
  0x0000000000411996 <+3526>:  cmpl   $0x0,-0x4ec(%rbp)
  0x000000000041199d <+3533>:  jne    0x411b29 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3929>

1715                    {
1716                        ASSERT("WideCharToMultiByte failed.  Error is %d\n",
  0x00000000004119a3 <+3539>:  callq  0x429970 <PALIsThreadDataInitialized()>
  0x00000000004119a8 <+3544>:  xor    %ecx,%ecx
  0x00000000004119aa <+3546>:  mov    %cl,%dl
  0x00000000004119ac <+3548>:  cmp    $0x0,%eax
  0x00000000004119af <+3551>:  mov    %dl,-0x6a9(%rbp)
  0x00000000004119b5 <+3557>:  je     0x4119fa <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3626>
  0x00000000004119bb <+3563>:  callq  0x4e74f0 <CorUnix::InternalGetCurrentThread()>
  0x00000000004119c0 <+3568>:  mov    $0x1,%cl
  0x00000000004119c2 <+3570>:  cmp    $0x0,%rax
  0x00000000004119c6 <+3574>:  mov    %cl,-0x6aa(%rbp)
  0x00000000004119cc <+3580>:  je     0x4119ee <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3614>
  0x00000000004119d2 <+3586>:  callq  0x4e74f0 <CorUnix::InternalGetCurrentThread()>
  0x00000000004119d7 <+3591>:  mov    %rax,%rdi
  0x00000000004119da <+3594>:  callq  0x4e7520 <CorUnix::CPalThread::IsInPal()>
  0x00000000004119df <+3599>:  cmp    $0x0,%eax
  0x00000000004119e2 <+3602>:  setne  %cl
  0x00000000004119e5 <+3605>:  xor    $0xff,%cl
  0x00000000004119e8 <+3608>:  mov    %cl,-0x6aa(%rbp)
  0x00000000004119ee <+3614>:  mov    -0x6aa(%rbp),%al
  0x00000000004119f4 <+3620>:  mov    %al,-0x6a9(%rbp)
  0x00000000004119fa <+3626>:  mov    -0x6a9(%rbp),%al
  0x0000000000411a00 <+3632>:  lea    -0x4a0(%rbp),%rdi
  0x0000000000411a07 <+3639>:  and    $0x1,%al
  0x0000000000411a09 <+3641>:  movzbl %al,%esi
  0x0000000000411a0c <+3644>:  callq  0x4e7540 <PAL_EnterHolder::PAL_EnterHolder(int)>
  0x0000000000411a11 <+3649>:  lea    0x318ad0(%rip),%rdi        # 0x72a4e8 <output_file>
  0x0000000000411a18 <+3656>:  cmpq   $0x0,(%rdi)
  0x0000000000411a1c <+3660>:  je     0x411ae1 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3857>
  0x0000000000411a22 <+3666>:  lea    0x318ac7(%rip),%rdi        # 0x72a4f0 <dbg_master_switch>
  0x0000000000411a29 <+3673>:  callq  0x4e7490 <Volatile<int>::operator int() const>
  0x0000000000411a2e <+3678>:  mov    %eax,-0x6b0(%rbp)
  0x0000000000411a34 <+3684>:  jmpq   0x411a39 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3689>
  0x0000000000411a39 <+3689>:  mov    -0x6b0(%rbp),%eax
  0x0000000000411a3f <+3695>:  cmp    $0x0,%eax
  0x0000000000411a42 <+3698>:  je     0x411ae1 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3857>
  0x0000000000411a48 <+3704>:  callq  0x447000 <GetLastError()>
  0x0000000000411a4d <+3709>:  mov    %eax,-0x6b4(%rbp)
  0x0000000000411a53 <+3715>:  jmpq   0x411a58 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3720>
  0x0000000000411a58 <+3720>:  mov    %rsp,%rax
  0x0000000000411a5b <+3723>:  mov    -0x6b4(%rbp),%ecx
  0x0000000000411a61 <+3729>:  mov    %ecx,0x8(%rax)
  0x0000000000411a64 <+3732>:  lea    0xe141b(%rip),%rdx        # 0x4f2e86
  0x0000000000411a6b <+3739>:  mov    %rdx,(%rax)
  0x0000000000411a6e <+3742>:  lea    0xe19fe(%rip),%rcx        # 0x4f3473
  0x0000000000411a75 <+3749>:  lea    0xe180d(%rip),%r8        # 0x4f3289
  0x0000000000411a7c <+3756>:  xor    %esi,%esi
  0x0000000000411a7e <+3758>:  mov    %sil,%dil
  0x0000000000411a81 <+3761>:  mov    $0x7,%esi
  0x0000000000411a86 <+3766>:  mov    $0x4,%r9d
  0x0000000000411a8c <+3772>:  mov    $0x1,%edx
  0x0000000000411a91 <+3777>:  mov    $0x6b5,%r10d
  0x0000000000411a97 <+3783>:  mov    %dil,-0x6b5(%rbp)
  0x0000000000411a9e <+3790>:  mov    %esi,%edi
  0x0000000000411aa0 <+3792>:  mov    %r9d,%esi
  0x0000000000411aa3 <+3795>:  mov    %r10d,%r9d
  0x0000000000411aa6 <+3798>:  mov    -0x6b5(%rbp),%al
  0x0000000000411aac <+3804>:  callq  0x4461c0 <DBG_printf_gcc(DBG_CHANNEL_ID, DBG_LEVEL_ID, BOOL, LPCSTR, LPCSTR, INT, LPCSTR, ...)>
  0x0000000000411ab1 <+3809>:  mov    %eax,-0x6bc(%rbp)
  0x0000000000411ab7 <+3815>:  jmpq   0x411abc <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3820>
  0x0000000000411abc <+3820>:  jmpq   0x411ae1 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3857>
  0x0000000000411ac1 <+3825>:  lea    -0x4a0(%rbp),%rdi
  0x0000000000411ad7 <+3847>:  callq  0x4e75b0 <PAL_EnterHolder::~PAL_EnterHolder()>
  0x0000000000411adc <+3852>:  jmpq   0x4123ee <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+6174>
  0x0000000000411ae1 <+3857>:  lea    0x3189f8(%rip),%rax        # 0x72a4e0 <g_Dbg_asserts_enabled>
  0x0000000000411ae8 <+3864>:  cmpl   $0x0,(%rax)
  0x0000000000411aeb <+3867>:  je     0x411b00 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3888>
  0x0000000000411af1 <+3873>:  callq  0x420ed0 <DebugBreak()>
  0x0000000000411af6 <+3878>:  jmpq   0x411afb <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3883>
  0x0000000000411afb <+3883>:  jmpq   0x411b00 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+3888>
  0x0000000000411b00 <+3888>:  lea    -0x4a0(%rbp),%rdi
  0x0000000000411b07 <+3895>:  callq  0x4e75b0 <PAL_EnterHolder::~PAL_EnterHolder()>
  0x0000000000411b0c <+3900>:  lea    -0x430(%rbp),%rdi

1717                              GetLastError());
1718                        va_end(ap);
1719                        return -1;
  0x0000000000411b13 <+3907>:  movl   $0xffffffff,-0x4a4(%rbp)
  0x0000000000411b1d <+3917>:  mov    %rdi,-0x6c8(%rbp)
  0x0000000000411b24 <+3924>:  jmpq   0x4123bf <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+6127>
  0x0000000000411b29 <+3929>:  lea    -0x460(%rbp),%rdi
  0x0000000000411b30 <+3936>:  lea    -0x455(%rbp),%rdx

1720                    }
1721                    TempBuffer[Length] = 0;
  0x0000000000411b37 <+3943>:  movslq -0x4ec(%rbp),%rax
  0x0000000000411b3e <+3950>:  movb   $0x0,-0x455(%rbp,%rax,1)

1722
1723                    /* do the padding (if needed)*/
1724                    BufferRanOut = !Internal_AddPaddingA(&BufferPtr,
  0x0000000000411b79 <+4009>:  mov    %r8d,%esi
  0x0000000000411b7c <+4012>:  mov    %r9d,%ecx
  0x0000000000411b7f <+4015>:  mov    %r10d,%r8d
  0x0000000000411b82 <+4018>:  callq  0x406f40 <Internal_AddPaddingA(LPSTR*, INT, LPSTR, INT, INT)>
  0x0000000000411b87 <+4023>:  cmp    $0x0,%eax
  0x0000000000411b8a <+4026>:  setne  %r11b
  0x0000000000411b8e <+4030>:  xor    $0xff,%r11b
  0x0000000000411b92 <+4034>:  and    $0x1,%r11b
  0x0000000000411b96 <+4038>:  movzbl %r11b,%eax
  0x0000000000411b9a <+4042>:  mov    %eax,-0x4d4(%rbp)

1725                                                       Count - (BufferPtr - Buffer),
  0x0000000000411b46 <+3958>:  mov    -0x4c0(%rbp),%rax
  0x0000000000411b4d <+3965>:  mov    -0x460(%rbp),%rcx
  0x0000000000411b54 <+3972>:  mov    -0x4b8(%rbp),%rsi
  0x0000000000411b5b <+3979>:  sub    %rsi,%rcx
  0x0000000000411b5e <+3982>:  sub    %rcx,%rax
  0x0000000000411b61 <+3985>:  mov    %eax,%r8d

1726                                                       TempBuffer,
1727                                                       Width - Length,
  0x0000000000411b64 <+3988>:  mov    -0x474(%rbp),%r9d
  0x0000000000411b6b <+3995>:  sub    -0x4ec(%rbp),%r9d

1728                                                       Flags);
  0x0000000000411b72 <+4002>:  mov    -0x470(%rbp),%r10d

1729
1730                }
  0x0000000000411ba0 <+4048>:  jmpq   0x4122ff <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5935>

1731                /* this places the number of bytes written to the buffer in the
1732                   next arg */
1733                else if (Type == PFF_TYPE_N)
  0x0000000000411ba5 <+4053>:  cmpl   $0x6,-0x480(%rbp)
  0x0000000000411bac <+4060>:  jne    0x411df7 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4647>
  0x0000000000411bb2 <+4066>:  mov    $0xfffffffe,%eax

1734                {
1735                    if (WIDTH_STAR == Width)
  0x0000000000411bb7 <+4071>:  cmp    -0x474(%rbp),%eax
  0x0000000000411bbd <+4077>:  jne    0x411c37 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4199>
  0x0000000000411bc3 <+4083>:  lea    -0x430(%rbp),%rax

1736                    {
1737                        Width = va_arg(ap, INT);
  0x0000000000411bca <+4090>:  mov    -0x430(%rbp),%ecx
  0x0000000000411bd0 <+4096>:  cmp    $0x28,%ecx
  0x0000000000411bd3 <+4099>:  mov    %rax,-0x6d0(%rbp)
  0x0000000000411bda <+4106>:  mov    %ecx,-0x6d4(%rbp)
  0x0000000000411be0 <+4112>:  ja     0x411c0b <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4155>
  0x0000000000411be6 <+4118>:  mov    -0x6d4(%rbp),%eax
  0x0000000000411bec <+4124>:  movslq %eax,%rcx
  0x0000000000411bef <+4127>:  mov    -0x6d0(%rbp),%rdx
  0x0000000000411bf6 <+4134>:  add    0x10(%rdx),%rcx
  0x0000000000411bfa <+4138>:  add    $0x8,%eax
  0x0000000000411bfd <+4141>:  mov    %eax,(%rdx)
  0x0000000000411bff <+4143>:  mov    %rcx,-0x6e0(%rbp)
  0x0000000000411c06 <+4150>:  jmpq   0x411c28 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4184>
  0x0000000000411c0b <+4155>:  mov    -0x6d0(%rbp),%rax
  0x0000000000411c12 <+4162>:  mov    0x8(%rax),%rcx
  0x0000000000411c16 <+4166>:  mov    %rcx,%rdx
  0x0000000000411c19 <+4169>:  add    $0x8,%rcx
  0x0000000000411c1d <+4173>:  mov    %rcx,0x8(%rax)
  0x0000000000411c21 <+4177>:  mov    %rdx,-0x6e0(%rbp)
  0x0000000000411c28 <+4184>:  mov    -0x6e0(%rbp),%rax
  0x0000000000411c2f <+4191>:  mov    (%rax),%ecx
  0x0000000000411c31 <+4193>:  mov    %ecx,-0x474(%rbp)
  0x0000000000411c37 <+4199>:  mov    $0xfffffffe,%eax

1738                    }
1739                    if (PRECISION_STAR == Precision)
  0x0000000000411c3c <+4204>:  cmp    -0x478(%rbp),%eax
  0x0000000000411c42 <+4210>:  jne    0x411cbc <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4332>
  0x0000000000411c48 <+4216>:  lea    -0x430(%rbp),%rax

1740                    {
1741                        Precision = va_arg(ap, INT);
  0x0000000000411c4f <+4223>:  mov    -0x430(%rbp),%ecx
  0x0000000000411c55 <+4229>:  cmp    $0x28,%ecx
  0x0000000000411c58 <+4232>:  mov    %rax,-0x6e8(%rbp)
  0x0000000000411c5f <+4239>:  mov    %ecx,-0x6ec(%rbp)
  0x0000000000411c65 <+4245>:  ja     0x411c90 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4288>
  0x0000000000411c6b <+4251>:  mov    -0x6ec(%rbp),%eax
  0x0000000000411c71 <+4257>:  movslq %eax,%rcx
  0x0000000000411c74 <+4260>:  mov    -0x6e8(%rbp),%rdx
  0x0000000000411c7b <+4267>:  add    0x10(%rdx),%rcx
  0x0000000000411c7f <+4271>:  add    $0x8,%eax
  0x0000000000411c82 <+4274>:  mov    %eax,(%rdx)
  0x0000000000411c84 <+4276>:  mov    %rcx,-0x6f8(%rbp)
  0x0000000000411c8b <+4283>:  jmpq   0x411cad <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4317>
  0x0000000000411c90 <+4288>:  mov    -0x6e8(%rbp),%rax
  0x0000000000411c97 <+4295>:  mov    0x8(%rax),%rcx
  0x0000000000411c9b <+4299>:  mov    %rcx,%rdx
  0x0000000000411c9e <+4302>:  add    $0x8,%rcx
  0x0000000000411ca2 <+4306>:  mov    %rcx,0x8(%rax)
  0x0000000000411ca6 <+4310>:  mov    %rdx,-0x6f8(%rbp)
  0x0000000000411cad <+4317>:  mov    -0x6f8(%rbp),%rax
  0x0000000000411cb4 <+4324>:  mov    (%rax),%ecx
  0x0000000000411cb6 <+4326>:  mov    %ecx,-0x478(%rbp)

1742                    }
1743
1744                    if (Prefix == PFF_PREFIX_SHORT)
  0x0000000000411cbc <+4332>:  cmpl   $0x1,-0x47c(%rbp)
  0x0000000000411cc3 <+4339>:  jne    0x411d62 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4498>
  0x0000000000411cc9 <+4345>:  lea    -0x430(%rbp),%rax

1745                    {
1746                        *(va_arg(ap, short *)) = BufferPtr - Buffer;
  0x0000000000411cd0 <+4352>:  mov    -0x460(%rbp),%rcx
  0x0000000000411cd7 <+4359>:  mov    -0x4b8(%rbp),%rdx
  0x0000000000411cde <+4366>:  sub    %rdx,%rcx
  0x0000000000411ce1 <+4369>:  mov    %cx,%si
  0x0000000000411ce4 <+4372>:  mov    -0x430(%rbp),%edi
  0x0000000000411cea <+4378>:  cmp    $0x28,%edi
  0x0000000000411ced <+4381>:  mov    %rax,-0x700(%rbp)
  0x0000000000411cf4 <+4388>:  mov    %si,-0x702(%rbp)
  0x0000000000411cfb <+4395>:  mov    %edi,-0x708(%rbp)
  0x0000000000411d01 <+4401>:  ja     0x411d2c <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4444>
  0x0000000000411d07 <+4407>:  mov    -0x708(%rbp),%eax
  0x0000000000411d0d <+4413>:  movslq %eax,%rcx
  0x0000000000411d10 <+4416>:  mov    -0x700(%rbp),%rdx
  0x0000000000411d17 <+4423>:  add    0x10(%rdx),%rcx
  0x0000000000411d1b <+4427>:  add    $0x8,%eax
  0x0000000000411d1e <+4430>:  mov    %eax,(%rdx)
  0x0000000000411d20 <+4432>:  mov    %rcx,-0x710(%rbp)
  0x0000000000411d27 <+4439>:  jmpq   0x411d49 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4473>
  0x0000000000411d2c <+4444>:  mov    -0x700(%rbp),%rax
  0x0000000000411d33 <+4451>:  mov    0x8(%rax),%rcx
  0x0000000000411d37 <+4455>:  mov    %rcx,%rdx
  0x0000000000411d3a <+4458>:  add    $0x8,%rcx
  0x0000000000411d3e <+4462>:  mov    %rcx,0x8(%rax)
  0x0000000000411d42 <+4466>:  mov    %rdx,-0x710(%rbp)
  0x0000000000411d49 <+4473>:  mov    -0x710(%rbp),%rax
  0x0000000000411d50 <+4480>:  mov    (%rax),%rax
  0x0000000000411d53 <+4483>:  mov    -0x702(%rbp),%cx
  0x0000000000411d5a <+4490>:  mov    %cx,(%rax)

1747                    }
  0x0000000000411d5d <+4493>:  jmpq   0x411df2 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4642>
  0x0000000000411d62 <+4498>:  lea    -0x430(%rbp),%rax

1748                    else
1749                    {
1750                        *(va_arg(ap, LPLONG)) = BufferPtr - Buffer;
  0x0000000000411d69 <+4505>:  mov    -0x460(%rbp),%rcx
  0x0000000000411d70 <+4512>:  mov    -0x4b8(%rbp),%rdx
  0x0000000000411d77 <+4519>:  sub    %rdx,%rcx
  0x0000000000411d7a <+4522>:  mov    %ecx,%esi
  0x0000000000411d7c <+4524>:  mov    -0x430(%rbp),%edi
  0x0000000000411d82 <+4530>:  cmp    $0x28,%edi
  0x0000000000411d85 <+4533>:  mov    %rax,-0x718(%rbp)
  0x0000000000411d8c <+4540>:  mov    %esi,-0x71c(%rbp)
  0x0000000000411d92 <+4546>:  mov    %edi,-0x720(%rbp)
  0x0000000000411d98 <+4552>:  ja     0x411dc3 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4595>
  0x0000000000411d9e <+4558>:  mov    -0x720(%rbp),%eax
  0x0000000000411da4 <+4564>:  movslq %eax,%rcx
  0x0000000000411da7 <+4567>:  mov    -0x718(%rbp),%rdx
  0x0000000000411dae <+4574>:  add    0x10(%rdx),%rcx
  0x0000000000411db2 <+4578>:  add    $0x8,%eax
  0x0000000000411db5 <+4581>:  mov    %eax,(%rdx)
  0x0000000000411db7 <+4583>:  mov    %rcx,-0x728(%rbp)
  0x0000000000411dbe <+4590>:  jmpq   0x411de0 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4624>
  0x0000000000411dc3 <+4595>:  mov    -0x718(%rbp),%rax
  0x0000000000411dca <+4602>:  mov    0x8(%rax),%rcx
  0x0000000000411dce <+4606>:  mov    %rcx,%rdx
  0x0000000000411dd1 <+4609>:  add    $0x8,%rcx
  0x0000000000411dd5 <+4613>:  mov    %rcx,0x8(%rax)
  0x0000000000411dd9 <+4617>:  mov    %rdx,-0x728(%rbp)
  0x0000000000411de0 <+4624>:  mov    -0x728(%rbp),%rax
  0x0000000000411de7 <+4631>:  mov    (%rax),%rax
  0x0000000000411dea <+4634>:  mov    -0x71c(%rbp),%ecx
  0x0000000000411df0 <+4640>:  mov    %ecx,(%rax)

1751                    }
1752                }
  0x0000000000411df2 <+4642>:  jmpq   0x4122fa <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5930>

1753                else if (Type == PFF_TYPE_CHAR && (Flags & PFF_ZERO) != 0)
  0x0000000000411df7 <+4647>:  cmpl   $0x1,-0x480(%rbp)
  0x0000000000411dfe <+4654>:  jne    0x411f07 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4919>
  0x0000000000411e04 <+4660>:  mov    -0x470(%rbp),%eax
  0x0000000000411e0a <+4666>:  and    $0x4,%eax
  0x0000000000411e0d <+4669>:  cmp    $0x0,%eax
  0x0000000000411e10 <+4672>:  je     0x411f07 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4919>
  0x0000000000411e16 <+4678>:  lea    -0x430(%rbp),%rax

1754                {
1755                    // Some versions of sprintf don't support 0-padded chars,
1756                    // so we handle them here.
1757                    char ch[2];
1758
1759                    ch[0] = (char) va_arg(ap, int);
  0x0000000000411e1d <+4685>:  mov    -0x430(%rbp),%ecx
  0x0000000000411e23 <+4691>:  cmp    $0x28,%ecx
  0x0000000000411e26 <+4694>:  mov    %rax,-0x730(%rbp)
  0x0000000000411e2d <+4701>:  mov    %ecx,-0x734(%rbp)
  0x0000000000411e33 <+4707>:  ja     0x411e5e <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4750>
  0x0000000000411e39 <+4713>:  mov    -0x734(%rbp),%eax
  0x0000000000411e3f <+4719>:  movslq %eax,%rcx
  0x0000000000411e42 <+4722>:  mov    -0x730(%rbp),%rdx
  0x0000000000411e49 <+4729>:  add    0x10(%rdx),%rcx
  0x0000000000411e4d <+4733>:  add    $0x8,%eax
  0x0000000000411e50 <+4736>:  mov    %eax,(%rdx)
  0x0000000000411e52 <+4738>:  mov    %rcx,-0x740(%rbp)
  0x0000000000411e59 <+4745>:  jmpq   0x411e7b <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+4779>
  0x0000000000411e5e <+4750>:  mov    -0x730(%rbp),%rax
  0x0000000000411e65 <+4757>:  mov    0x8(%rax),%rcx
  0x0000000000411e69 <+4761>:  mov    %rcx,%rdx
  0x0000000000411e6c <+4764>:  add    $0x8,%rcx
  0x0000000000411e70 <+4768>:  mov    %rcx,0x8(%rax)
  0x0000000000411e74 <+4772>:  mov    %rdx,-0x740(%rbp)
  0x0000000000411e7b <+4779>:  mov    -0x740(%rbp),%rax
  0x0000000000411e82 <+4786>:  lea    -0x460(%rbp),%rdi
  0x0000000000411e89 <+4793>:  lea    -0x457(%rbp),%rdx
  0x0000000000411e90 <+4800>:  mov    (%rax),%ecx
  0x0000000000411e92 <+4802>:  mov    %cl,%sil
  0x0000000000411e95 <+4805>:  mov    %sil,-0x457(%rbp)

1760                    ch[1] = '\0';
  0x0000000000411e9c <+4812>:  movb   $0x0,-0x456(%rbp)

1761                    Length = 1;
  0x0000000000411ea3 <+4819>:  movl   $0x1,-0x4ec(%rbp)

1762                    BufferRanOut = !Internal_AddPaddingA(&BufferPtr,
  0x0000000000411edf <+4879>:  mov    %ecx,%esi
  0x0000000000411ee1 <+4881>:  mov    %r10d,%ecx
  0x0000000000411ee4 <+4884>:  callq  0x406f40 <Internal_AddPaddingA(LPSTR*, INT, LPSTR, INT, INT)>
  0x0000000000411ee9 <+4889>:  cmp    $0x0,%eax
  0x0000000000411eec <+4892>:  setne  %r11b
  0x0000000000411ef0 <+4896>:  xor    $0xff,%r11b
  0x0000000000411ef4 <+4900>:  and    $0x1,%r11b
  0x0000000000411ef8 <+4904>:  movzbl %r11b,%eax
  0x0000000000411efc <+4908>:  mov    %eax,-0x4d4(%rbp)

1763                                               Count - (BufferPtr - Buffer),
  0x0000000000411ead <+4829>:  mov    -0x4c0(%rbp),%rax
  0x0000000000411eb4 <+4836>:  mov    -0x460(%rbp),%r8
  0x0000000000411ebb <+4843>:  mov    -0x4b8(%rbp),%r9
  0x0000000000411ec2 <+4850>:  sub    %r9,%r8
  0x0000000000411ec5 <+4853>:  sub    %r8,%rax
  0x0000000000411ec8 <+4856>:  mov    %eax,%ecx

1764                                               ch,
1765                                               Width - Length,
  0x0000000000411eca <+4858>:  mov    -0x474(%rbp),%r10d
  0x0000000000411ed1 <+4865>:  sub    -0x4ec(%rbp),%r10d

1766                                               Flags);
  0x0000000000411ed8 <+4872>:  mov    -0x470(%rbp),%r8d

1767                }
  0x0000000000411f02 <+4914>:  jmpq   0x4122f5 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5925>

1768                else if (Type == PFF_TYPE_STRING && (Flags & PFF_ZERO) != 0)
  0x0000000000411f07 <+4919>:  cmpl   $0x2,-0x480(%rbp)
  0x0000000000411f0e <+4926>:  jne    0x412030 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5216>
  0x0000000000411f14 <+4932>:  mov    -0x470(%rbp),%eax
  0x0000000000411f1a <+4938>:  and    $0x4,%eax
  0x0000000000411f1d <+4941>:  cmp    $0x0,%eax
  0x0000000000411f20 <+4944>:  je     0x412030 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5216>
  0x0000000000411f26 <+4950>:  lea    -0x430(%rbp),%rax

1769                {
1770                    // Some versions of sprintf don't support 0-padded strings,
1771                    // so we handle them here.
1772                    char *tempStr;
1773
1774                    tempStr = va_arg(ap, char *);
  0x0000000000411f2d <+4957>:  mov    -0x430(%rbp),%ecx
  0x0000000000411f33 <+4963>:  cmp    $0x28,%ecx
  0x0000000000411f36 <+4966>:  mov    %rax,-0x748(%rbp)
  0x0000000000411f3d <+4973>:  mov    %ecx,-0x74c(%rbp)
  0x0000000000411f43 <+4979>:  ja     0x411f6e <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5022>
  0x0000000000411f49 <+4985>:  mov    -0x74c(%rbp),%eax
  0x0000000000411f4f <+4991>:  movslq %eax,%rcx
  0x0000000000411f52 <+4994>:  mov    -0x748(%rbp),%rdx
  0x0000000000411f59 <+5001>:  add    0x10(%rdx),%rcx
  0x0000000000411f5d <+5005>:  add    $0x8,%eax
  0x0000000000411f60 <+5008>:  mov    %eax,(%rdx)
  0x0000000000411f62 <+5010>:  mov    %rcx,-0x758(%rbp)
  0x0000000000411f69 <+5017>:  jmpq   0x411f8b <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5051>
  0x0000000000411f6e <+5022>:  mov    -0x748(%rbp),%rax
  0x0000000000411f75 <+5029>:  mov    0x8(%rax),%rcx
  0x0000000000411f79 <+5033>:  mov    %rcx,%rdx
  0x0000000000411f7c <+5036>:  add    $0x8,%rcx
  0x0000000000411f80 <+5040>:  mov    %rcx,0x8(%rax)
  0x0000000000411f84 <+5044>:  mov    %rdx,-0x758(%rbp)
  0x0000000000411f8b <+5051>:  mov    -0x758(%rbp),%rax
  0x0000000000411f92 <+5058>:  lea    -0x460(%rbp),%rdi
  0x0000000000411f99 <+5065>:  mov    (%rax),%rax
  0x0000000000411f9c <+5068>:  mov    %rax,-0x518(%rbp)

1775                    Length = strlen(tempStr);
  0x0000000000411fa3 <+5075>:  mov    -0x518(%rbp),%rax
  0x0000000000411faa <+5082>:  mov    %rdi,-0x760(%rbp)
  0x0000000000411fb1 <+5089>:  mov    %rax,%rdi
  0x0000000000411fb4 <+5092>:  callq  0x405050 <strlen@plt>
  0x0000000000411fb9 <+5097>:  mov    %eax,%ecx
  0x0000000000411fbb <+5099>:  mov    %ecx,-0x4ec(%rbp)

1776                    BufferRanOut = !Internal_AddPaddingA(&BufferPtr,
  0x0000000000411ff8 <+5160>:  mov    -0x760(%rbp),%rdi
  0x0000000000411fff <+5167>:  mov    %esi,-0x764(%rbp)
  0x0000000000412005 <+5173>:  mov    %ecx,%esi
  0x0000000000412007 <+5175>:  mov    -0x764(%rbp),%ecx
  0x000000000041200d <+5181>:  callq  0x406f40 <Internal_AddPaddingA(LPSTR*, INT, LPSTR, INT, INT)>
  0x0000000000412012 <+5186>:  cmp    $0x0,%eax
  0x0000000000412015 <+5189>:  setne  %r9b
  0x0000000000412019 <+5193>:  xor    $0xff,%r9b
  0x000000000041201d <+5197>:  and    $0x1,%r9b
  0x0000000000412021 <+5201>:  movzbl %r9b,%eax
  0x0000000000412025 <+5205>:  mov    %eax,-0x4d4(%rbp)

1777                                               Count - (BufferPtr - Buffer),
  0x0000000000411fc1 <+5105>:  mov    -0x4c0(%rbp),%rax
  0x0000000000411fc8 <+5112>:  mov    -0x460(%rbp),%rdi
  0x0000000000411fcf <+5119>:  mov    -0x4b8(%rbp),%rdx
  0x0000000000411fd6 <+5126>:  sub    %rdx,%rdi
  0x0000000000411fd9 <+5129>:  sub    %rdi,%rax
  0x0000000000411fdc <+5132>:  mov    %eax,%ecx

1778                                               tempStr,
  0x0000000000411fde <+5134>:  mov    -0x518(%rbp),%rdx

1779                                               Width - Length,
  0x0000000000411fe5 <+5141>:  mov    -0x474(%rbp),%esi
  0x0000000000411feb <+5147>:  sub    -0x4ec(%rbp),%esi

1780                                               Flags);
  0x0000000000411ff1 <+5153>:  mov    -0x470(%rbp),%r8d

1781                }
  0x000000000041202b <+5211>:  jmpq   0x4122f0 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5920>

1782                else
1783                {
1784                    // Types that sprintf can handle
1785                    size_t TempCount = Count - (BufferPtr - Buffer);
  0x0000000000412030 <+5216>:  mov    -0x4c0(%rbp),%rax
  0x0000000000412037 <+5223>:  mov    -0x460(%rbp),%rcx
  0x000000000041203e <+5230>:  mov    -0x4b8(%rbp),%rdx
  0x0000000000412045 <+5237>:  sub    %rdx,%rcx
  0x0000000000412048 <+5240>:  sub    %rcx,%rax
  0x000000000041204b <+5243>:  mov    %rax,-0x520(%rbp)

1786
1787    #if !HAVE_LARGE_SNPRINTF_SUPPORT
1788                    // Limit TempCount to 0x40000000, which is sufficient
1789                    // for platforms on which snprintf fails for very large
1790                    // sizes.
1791                    if (TempCount > 0x40000000)
1792                    {
1793                        TempCount = 0x40000000;
1794                    }
1795    #endif  // HAVE_LARGE_SNPRINTF_SUPPORT
1796
1797                    TempInt = 0;
  0x0000000000412052 <+5250>:  movl   $0x0,-0x4f0(%rbp)

1798                    // %h (short) doesn't seem to be handled properly by local sprintf,
1799                    // so we do the truncation ourselves for some cases.
1800                    if (Type == PFF_TYPE_P && Prefix == PFF_PREFIX_SHORT)
  0x000000000041205c <+5260>:  cmpl   $0x5,-0x480(%rbp)
  0x0000000000412063 <+5267>:  jne    0x41213a <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5482>
  0x0000000000412069 <+5273>:  cmpl   $0x1,-0x47c(%rbp)
  0x0000000000412070 <+5280>:  jne    0x41213a <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5482>
  0x0000000000412076 <+5286>:  lea    -0x430(%rbp),%rax

1801                    {
1802                        // Convert from pointer -> int -> short to avoid warnings.
1803                        long trunc1;
1804                        short trunc2;
1805
1806                        trunc1 = va_arg(ap, LONG);
  0x000000000041207d <+5293>:  mov    -0x430(%rbp),%ecx
  0x0000000000412083 <+5299>:  cmp    $0x28,%ecx
  0x0000000000412086 <+5302>:  mov    %rax,-0x770(%rbp)
  0x000000000041208d <+5309>:  mov    %ecx,-0x774(%rbp)
  0x0000000000412093 <+5315>:  ja     0x4120be <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5358>
  0x0000000000412099 <+5321>:  mov    -0x774(%rbp),%eax
  0x000000000041209f <+5327>:  movslq %eax,%rcx
  0x00000000004120a2 <+5330>:  mov    -0x770(%rbp),%rdx
  0x00000000004120a9 <+5337>:  add    0x10(%rdx),%rcx
  0x00000000004120ad <+5341>:  add    $0x8,%eax
  0x00000000004120b0 <+5344>:  mov    %eax,(%rdx)
  0x00000000004120b2 <+5346>:  mov    %rcx,-0x780(%rbp)
  0x00000000004120b9 <+5353>:  jmpq   0x4120db <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5387>
  0x00000000004120be <+5358>:  mov    -0x770(%rbp),%rax
  0x00000000004120c5 <+5365>:  mov    0x8(%rax),%rcx
  0x00000000004120c9 <+5369>:  mov    %rcx,%rdx
  0x00000000004120cc <+5372>:  add    $0x8,%rcx
  0x00000000004120d0 <+5376>:  mov    %rcx,0x8(%rax)
  0x00000000004120d4 <+5380>:  mov    %rdx,-0x780(%rbp)
  0x00000000004120db <+5387>:  mov    -0x780(%rbp),%rax
  0x00000000004120e2 <+5394>:  lea    -0x410(%rbp),%rdx
  0x00000000004120e9 <+5401>:  movslq (%rax),%rax
  0x00000000004120ec <+5404>:  mov    %rax,-0x528(%rbp)

1807                        trunc2 = (short) trunc1;
  0x00000000004120f3 <+5411>:  mov    -0x528(%rbp),%rax
  0x00000000004120fa <+5418>:  mov    %ax,%cx
  0x00000000004120fd <+5421>:  mov    %cx,-0x52a(%rbp)

1808                        trunc1 = trunc2;
  0x0000000000412104 <+5428>:  movswq -0x52a(%rbp),%rax
  0x000000000041210c <+5436>:  mov    %rax,-0x528(%rbp)

1809
1810                        TempInt = snprintf(BufferPtr, TempCount, TempBuff, trunc1);
  0x0000000000412113 <+5443>:  mov    -0x460(%rbp),%rdi
  0x000000000041211a <+5450>:  mov    -0x520(%rbp),%rsi
  0x0000000000412121 <+5457>:  mov    -0x528(%rbp),%rcx
  0x0000000000412128 <+5464>:  mov    $0x0,%al
  0x000000000041212a <+5466>:  callq  0x404cf0 <snprintf@plt>
  0x000000000041212f <+5471>:  mov    %eax,-0x4f0(%rbp)

1811                    }
  0x0000000000412135 <+5477>:  jmpq   0x41228c <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5820>

1812                    else if (Type == PFF_TYPE_INT && Prefix == PFF_PREFIX_SHORT)
  0x000000000041213a <+5482>:  cmpl   $0x4,-0x480(%rbp)
  0x0000000000412141 <+5489>:  jne    0x412210 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5696>
  0x0000000000412147 <+5495>:  cmpl   $0x1,-0x47c(%rbp)
  0x000000000041214e <+5502>:  jne    0x412210 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5696>

1813                    {
1814                        __asm__ volatile("nop;nop;nop;nop;nop;");
  0x0000000000412154 <+5508>:  nop
  0x0000000000412155 <+5509>:  nop
  0x0000000000412156 <+5510>:  nop
  0x0000000000412157 <+5511>:  nop
  0x0000000000412158 <+5512>:  nop
  0x0000000000412159 <+5513>:  lea    -0x430(%rbp),%rax

1815                        // Convert explicitly from int to short to get
1816                        // correct sign extension for shorts on all systems.
1817                        int n;
1818                        short s;
1819
1820                        n = va_arg(ap, int);
  0x0000000000412160 <+5520>:  mov    -0x430(%rbp),%ecx
  0x0000000000412166 <+5526>:  cmp    $0x28,%ecx
  0x0000000000412169 <+5529>:  mov    %rax,-0x788(%rbp)
  0x0000000000412170 <+5536>:  mov    %ecx,-0x78c(%rbp)
  0x0000000000412176 <+5542>:  ja     0x4121a1 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5585>
  0x000000000041217c <+5548>:  mov    -0x78c(%rbp),%eax
  0x0000000000412182 <+5554>:  movslq %eax,%rcx
  0x0000000000412185 <+5557>:  mov    -0x788(%rbp),%rdx
  0x000000000041218c <+5564>:  add    0x10(%rdx),%rcx
  0x0000000000412190 <+5568>:  add    $0x8,%eax
  0x0000000000412193 <+5571>:  mov    %eax,(%rdx)
  0x0000000000412195 <+5573>:  mov    %rcx,-0x798(%rbp)
  0x000000000041219c <+5580>:  jmpq   0x4121be <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5614>
  0x00000000004121a1 <+5585>:  mov    -0x788(%rbp),%rax
  0x00000000004121a8 <+5592>:  mov    0x8(%rax),%rcx
  0x00000000004121ac <+5596>:  mov    %rcx,%rdx
  0x00000000004121af <+5599>:  add    $0x8,%rcx
  0x00000000004121b3 <+5603>:  mov    %rcx,0x8(%rax)
  0x00000000004121b7 <+5607>:  mov    %rdx,-0x798(%rbp)
  0x00000000004121be <+5614>:  mov    -0x798(%rbp),%rax
  0x00000000004121c5 <+5621>:  lea    -0x410(%rbp),%rdx
  0x00000000004121cc <+5628>:  mov    (%rax),%ecx
  0x00000000004121ce <+5630>:  mov    %ecx,-0x530(%rbp)

1821                        s = (short) n;
  0x00000000004121d4 <+5636>:  mov    -0x530(%rbp),%ecx
  0x00000000004121da <+5642>:  mov    %cx,%si
  0x00000000004121dd <+5645>:  mov    %si,-0x532(%rbp)

1822
1823                        TempInt = snprintf(BufferPtr, TempCount, TempBuff, s);
  0x00000000004121e4 <+5652>:  mov    -0x460(%rbp),%rdi
  0x00000000004121eb <+5659>:  mov    -0x520(%rbp),%rsi
  0x00000000004121f2 <+5666>:  movswl -0x532(%rbp),%ecx
  0x00000000004121f9 <+5673>:  mov    $0x0,%al
  0x00000000004121fb <+5675>:  callq  0x404cf0 <snprintf@plt>
  0x0000000000412200 <+5680>:  mov    %eax,-0x4f0(%rbp)

1824                        __asm__ volatile("nop;nop;nop;nop;nop;");
  0x0000000000412206 <+5686>:  nop
  0x0000000000412207 <+5687>:  nop
  0x0000000000412208 <+5688>:  nop
  0x0000000000412209 <+5689>:  nop
  0x000000000041220a <+5690>:  nop

1825                    }
  0x000000000041220b <+5691>:  jmpq   0x412287 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5815>
  0x0000000000412210 <+5696>:  lea    -0x450(%rbp),%rax
  0x0000000000412217 <+5703>:  lea    -0x410(%rbp),%rdx
  0x000000000041221e <+5710>:  lea    -0x430(%rbp),%rcx

1826                    else
1827                    {
1828                        va_list apcopy;
1829                        va_copy(apcopy, ap);
  0x0000000000412225 <+5717>:  mov    %rax,%rsi
  0x0000000000412228 <+5720>:  mov    0x10(%rcx),%rdi
  0x000000000041222c <+5724>:  mov    %rdi,0x10(%rsi)
  0x0000000000412230 <+5728>:  movups (%rcx),%xmm0
  0x0000000000412233 <+5731>:  movups %xmm0,(%rsi)

1830                        TempInt = vsnprintf(BufferPtr, TempCount, TempBuff, apcopy);
  0x0000000000412236 <+5734>:  mov    -0x460(%rbp),%rdi
  0x000000000041223d <+5741>:  mov    -0x520(%rbp),%rsi
  0x0000000000412244 <+5748>:  mov    %rax,%rcx
  0x0000000000412247 <+5751>:  callq  0x404c20 <vsnprintf@plt>
  0x000000000041224c <+5756>:  lea    -0x430(%rbp),%rdi
  0x0000000000412253 <+5763>:  lea    -0x450(%rbp),%rcx
  0x000000000041225a <+5770>:  mov    %eax,-0x4f0(%rbp)

1831                        va_end(apcopy);
1832                        PAL_printf_arg_remover(&ap, Width, Precision, Type, Prefix);
  0x0000000000412260 <+5776>:  mov    -0x474(%rbp),%esi
  0x0000000000412266 <+5782>:  mov    -0x478(%rbp),%edx
  0x000000000041226c <+5788>:  mov    -0x480(%rbp),%eax
  0x0000000000412272 <+5794>:  mov    -0x47c(%rbp),%r8d
  0x0000000000412279 <+5801>:  mov    %rcx,-0x7a0(%rbp)
  0x0000000000412280 <+5808>:  mov    %eax,%ecx
  0x0000000000412282 <+5810>:  callq  0x407260 <PAL_printf_arg_remover(va_list*, INT, INT, INT, INT)>
  0x0000000000412287 <+5815>:  jmpq   0x41228c <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5820>

1833                    }
1834
1835                    if (TempInt < 0 || static_cast<size_t>(TempInt) >= TempCount) /* buffer not long enough */
  0x000000000041228c <+5820>:  cmpl   $0x0,-0x4f0(%rbp)
  0x0000000000412293 <+5827>:  jl     0x4122ad <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5853>
  0x0000000000412299 <+5833>:  movslq -0x4f0(%rbp),%rax
  0x00000000004122a0 <+5840>:  cmp    -0x520(%rbp),%rax
  0x00000000004122a7 <+5847>:  jb     0x4122d1 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5889>

1836                    {
1837                        BufferPtr += TempCount;
  0x00000000004122ad <+5853>:  mov    -0x520(%rbp),%rax
  0x00000000004122b4 <+5860>:  add    -0x460(%rbp),%rax
  0x00000000004122bb <+5867>:  mov    %rax,-0x460(%rbp)

1838                        BufferRanOut = TRUE;
  0x00000000004122c2 <+5874>:  movl   $0x1,-0x4d4(%rbp)

1839                    }
  0x00000000004122cc <+5884>:  jmpq   0x4122eb <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5915>

1840                    else
1841                    {
1842                        BufferPtr += TempInt;
  0x00000000004122d1 <+5889>:  mov    -0x4f0(%rbp),%eax
  0x00000000004122d7 <+5895>:  mov    -0x460(%rbp),%rcx
  0x00000000004122de <+5902>:  movslq %eax,%rdx
  0x00000000004122e1 <+5905>:  add    %rdx,%rcx
  0x00000000004122e4 <+5908>:  mov    %rcx,-0x460(%rbp)
  0x00000000004122eb <+5915>:  jmpq   0x4122f0 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5920>
  0x00000000004122f0 <+5920>:  jmpq   0x4122f5 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5925>
  0x00000000004122f5 <+5925>:  jmpq   0x4122fa <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5930>
  0x00000000004122fa <+5930>:  jmpq   0x4122ff <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5935>
  0x00000000004122ff <+5935>:  jmpq   0x412304 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5940>

1843                    }
1844                }
1845            }
  0x0000000000412304 <+5940>:  jmpq   0x412337 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5991>

1846            else
1847            {
1848                *BufferPtr++ = *Fmt++; /* copy regular chars into buffer */
  0x0000000000412309 <+5945>:  mov    -0x468(%rbp),%rax
  0x0000000000412310 <+5952>:  mov    %rax,%rcx
  0x0000000000412313 <+5955>:  add    $0x1,%rcx
  0x0000000000412317 <+5959>:  mov    %rcx,-0x468(%rbp)
  0x000000000041231e <+5966>:  mov    (%rax),%dl
  0x0000000000412320 <+5968>:  mov    -0x460(%rbp),%rax
  0x0000000000412327 <+5975>:  mov    %rax,%rcx
  0x000000000041232a <+5978>:  add    $0x1,%rcx
  0x000000000041232e <+5982>:  mov    %rcx,-0x460(%rbp)
  0x0000000000412335 <+5989>:  mov    %dl,(%rax)
  0x0000000000412337 <+5991>:  jmpq   0x41233c <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+5996>

1849            }
1850        }
1851
1852        if (static_cast<int>(Count) > (BufferPtr - Buffer)) //Count is assumed to be in the range of int
  0x0000000000412341 <+6001>:  mov    -0x4c0(%rbp),%rax
  0x0000000000412348 <+6008>:  mov    %eax,%ecx
  0x000000000041234a <+6010>:  movslq %ecx,%rax
  0x000000000041234d <+6013>:  mov    -0x460(%rbp),%rdx
  0x0000000000412354 <+6020>:  mov    -0x4b8(%rbp),%rsi
  0x000000000041235b <+6027>:  sub    %rsi,%rdx
  0x000000000041235e <+6030>:  cmp    %rdx,%rax
  0x0000000000412361 <+6033>:  jle    0x412371 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+6049>

1853        {
1854            *BufferPtr = 0; /* end the string */
  0x0000000000412367 <+6039>:  mov    -0x460(%rbp),%rax
  0x000000000041236e <+6046>:  movb   $0x0,(%rax)
  0x0000000000412371 <+6049>:  lea    -0x430(%rbp),%rax

1855        }
1856
1857        va_end(ap);
1858
1859        if (BufferRanOut)
  0x0000000000412378 <+6056>:  cmpl   $0x0,-0x4d4(%rbp)
  0x000000000041237f <+6063>:  mov    %rax,-0x7a8(%rbp)
  0x0000000000412386 <+6070>:  je     0x4123a6 <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+6102>

1860        {
1861            errno = ERANGE;
  0x000000000041238c <+6076>:  callq  0x404c50 <__errno@plt>
  0x0000000000412391 <+6081>:  movl   $0x22,(%rax)

1862            return -1;
  0x0000000000412397 <+6087>:  movl   $0xffffffff,-0x4a4(%rbp)
  0x00000000004123a1 <+6097>:  jmpq   0x4123bf <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+6127>

1863        }
1864        else
1865        {
1866            return BufferPtr - Buffer;
  0x00000000004123a6 <+6102>:  mov    -0x460(%rbp),%rax
  0x00000000004123ad <+6109>:  mov    -0x4b8(%rbp),%rcx
  0x00000000004123b4 <+6116>:  sub    %rcx,%rax
  0x00000000004123b7 <+6119>:  mov    %eax,%edx
  0x00000000004123b9 <+6121>:  mov    %edx,-0x4a4(%rbp)
  0x00000000004123bf <+6127>:  mov    0x316a4a(%rip),%rax        # 0x728e10

1867        }
1868    }
  0x0000000000411167 <+1431>:  mov    %edx,%ecx
  0x0000000000411169 <+1433>:  mov    %rax,-0x500(%rbp)
  0x0000000000411170 <+1440>:  mov    %ecx,-0x504(%rbp)
  0x0000000000411481 <+2225>:  mov    %edx,%ecx
  0x0000000000411483 <+2227>:  mov    %rax,-0x500(%rbp)
  0x000000000041148a <+2234>:  mov    %ecx,-0x504(%rbp)
  0x000000000041168a <+2746>:  mov    %edx,%ecx
  0x000000000041168c <+2748>:  mov    %rax,-0x500(%rbp)
  0x0000000000411693 <+2755>:  mov    %ecx,-0x504(%rbp)
  0x0000000000411ac8 <+3832>:  mov    %edx,%ecx
  0x0000000000411aca <+3834>:  mov    %rax,-0x500(%rbp)
  0x0000000000411ad1 <+3841>:  mov    %ecx,-0x504(%rbp)
  0x00000000004123c6 <+6134>:  mov    -0x4a4(%rbp),%ecx
  0x00000000004123cc <+6140>:  mov    (%rax),%rax
  0x00000000004123cf <+6143>:  cmp    -0x8(%rbp),%rax
  0x00000000004123d3 <+6147>:  mov    %ecx,-0x7ac(%rbp)
  0x00000000004123d9 <+6153>:  jne    0x4123fa <CoreVsnprintf(CorUnix::CPalThread*, char*, unsigned long, char const*, __va_list_tag*)+6186>
  0x00000000004123df <+6159>:  mov    -0x7ac(%rbp),%eax
  0x00000000004123e5 <+6165>:  add    $0x7c0,%rsp
  0x00000000004123ec <+6172>:  pop    %rbp
  0x00000000004123ed <+6173>:  retq

End of assembler dump.