--- trunk/reactos/lib/rtl/heap.c 2004-12-31 19:43:35 UTC (rev 12668)
+++ trunk/reactos/lib/rtl/heap.c 2004-12-31 20:05:16 UTC (rev 12669)
@@ -30,7 +30,7 @@
#endif
-static CRITICAL_SECTION RtlpProcessHeapsListLock;
+static RTL_CRITICAL_SECTION RtlpProcessHeapsListLock;
typedef struct tagARENA_INUSE
@@ -98,7 +98,7 @@
SUBHEAP subheap; /* First sub-heap */
struct tagHEAP *next; /* Next heap for this process */
FREE_LIST_ENTRY freeList[HEAP_NB_FREE_LISTS]; /* Free lists */
- CRITICAL_SECTION critSection; /* Critical section for serialization */
+ RTL_CRITICAL_SECTION critSection; /* Critical section for serialization */
ULONG flags; /* Heap flags */
ULONG magic; /* Magic number */
UCHAR filler[4]; /* Make multiple of 8 bytes */
@@ -306,23 +306,21 @@
address = (PVOID)((char *)subheap + subheap->commitSize);
commitsize = size - subheap->commitSize;
- if (!(flags & HEAP_NO_VALLOC))
+ Status = NtAllocateVirtualMemory(NtCurrentProcess(),
+ &address,
+ 0,
+ &commitsize,
+ MEM_COMMIT,
+ PAGE_EXECUTE_READWRITE);
+ if (!NT_SUCCESS(Status))
{
- Status = NtAllocateVirtualMemory(NtCurrentProcess(),
- &address,
- 0,
- &commitsize,
- MEM_COMMIT,
- PAGE_EXECUTE_READWRITE);
- if (!NT_SUCCESS(Status))
- {
- DPRINT( "Could not commit %08lx bytes at %p for heap %p\n",
- size - subheap->commitSize,
- ((char *)subheap + subheap->commitSize),
- subheap->heap );
- return FALSE;
- }
+ DPRINT( "Could not commit %08lx bytes at %p for heap %p\n",
+ size - subheap->commitSize,
+ ((char *)subheap + subheap->commitSize),
+ subheap->heap );
+ return FALSE;
}
+
subheap->commitSize += commitsize;
return TRUE;
}
@@ -347,22 +345,19 @@
address = (PVOID)((char *)subheap + size);
decommitsize = subheap->commitSize - size;
- if (!(flags & HEAP_NO_VALLOC))
+ Status = ZwFreeVirtualMemory(NtCurrentProcess(),
+ &address,
+ &decommitsize,
+ MEM_DECOMMIT);
+ if (!NT_SUCCESS(Status))
{
- Status = ZwFreeVirtualMemory(NtCurrentProcess(),
- &address,
- &decommitsize,
- MEM_DECOMMIT);
- if (!NT_SUCCESS(Status))
- ;
- {
- DPRINT( "Could not decommit %08lx bytes at %p for heap %p\n",
- subheap->commitSize - size,
- ((char *)subheap + size),
- subheap->heap );
- return FALSE;
- }
+ DPRINT( "Could not decommit %08lx bytes at %p for heap %p\n",
+ subheap->commitSize - size,
+ ((char *)subheap + size),
+ subheap->heap );
+ return FALSE;
}
+
subheap->commitSize -= decommitsize;
return TRUE;
}
@@ -438,6 +433,7 @@
{
ARENA_FREE *pFree;
ULONG size = (pArena->size & ARENA_SIZE_MASK) + sizeof(*pArena);
+ ULONG dummySize = 0;
/* Check if we can merge with previous block */
@@ -475,14 +471,10 @@
pPrev->next = subheap->next;
/* Free the memory */
subheap->magic = 0;
- if (!(flags & HEAP_NO_VALLOC))
- {
- ULONG dummySize = 0;
- ZwFreeVirtualMemory(NtCurrentProcess(),
- (PVOID*)&subheap,
- &dummySize,
- MEM_RELEASE);
- }
+ ZwFreeVirtualMemory(NtCurrentProcess(),
+ (PVOID*)&subheap,
+ &dummySize,
+ MEM_RELEASE);
return;
}
@@ -525,20 +517,17 @@
NTSTATUS Status;
/* Commit memory */
- if (!(flags & HEAP_NO_VALLOC))
+ Status = ZwAllocateVirtualMemory(NtCurrentProcess(),
+ &address,
+ 0,
+ (PULONG)&commitSize,
+ MEM_COMMIT,
+ PAGE_EXECUTE_READWRITE);
+ if (!NT_SUCCESS(Status))
{
- Status = ZwAllocateVirtualMemory(NtCurrentProcess(),
- &address,
- 0,
- (PULONG)&commitSize,
- MEM_COMMIT,
- PAGE_EXECUTE_READWRITE);
- if (!NT_SUCCESS(Status))
- {
- DPRINT("Could not commit %08lx bytes for sub-heap %p\n",
- commitSize, address);
- return FALSE;
- }
+ DPRINT("Could not commit %08lx bytes for sub-heap %p\n",
+ commitSize, address);
+ return FALSE;
}
/* Fill the sub-heap structure */
@@ -619,7 +608,7 @@
/* Allocate the memory block */
address = BaseAddress;
- if (!(flags & HEAP_NO_VALLOC))
+ if (!address)
{
Status = ZwAllocateVirtualMemory(NtCurrentProcess(),
&address,
@@ -640,7 +629,7 @@
if (!HEAP_InitSubHeap( heap? heap : (HEAP *)address,
address, flags, commitSize, totalSize ))
{
- if (address && !(flags & HEAP_NO_VALLOC))
+ if (!BaseAddress)
{
ULONG dummySize = 0;
ZwFreeVirtualMemory(NtCurrentProcess(),
@@ -1150,15 +1139,11 @@
while (subheap)
{
SUBHEAP *next = subheap->next;
-
- if (!(flags & HEAP_NO_VALLOC))
- {
- ULONG dummySize = 0;
- ZwFreeVirtualMemory(NtCurrentProcess(),
- (PVOID*)&subheap,
- &dummySize,
- MEM_RELEASE);
- }
+ ULONG dummySize = 0;
+ ZwFreeVirtualMemory(NtCurrentProcess(),
+ (PVOID*)&subheap,
+ &dummySize,
+ MEM_RELEASE);
subheap = next;
}
return (HANDLE)NULL;
@@ -1730,8 +1715,8 @@
* @implemented
*/
NTSTATUS STDCALL
-RtlEnumProcessHeaps(NTSTATUS STDCALL_FUNC(*func)(PVOID, LONG),
- LONG lParam)
+RtlEnumProcessHeaps(PHEAP_ENUMERATION_ROUTINE HeapEnumerationRoutine,
+ PVOID lParam)
{
NTSTATUS Status = STATUS_SUCCESS;
HEAP** pptr;
@@ -1740,7 +1725,7 @@
for (pptr = (HEAP**)&NtCurrentPeb()->ProcessHeaps; *pptr; pptr = &(*pptr)->next)
{
- Status = func(*pptr,lParam);
+ Status = HeapEnumerationRoutine(*pptr,lParam);
if (!NT_SUCCESS(Status))
break;
}
--- trunk/reactos/lib/unicode/wine_unicode.map 2004-12-31 19:43:35 UTC (rev 12668)
+++ trunk/reactos/lib/unicode/wine_unicode.map 2004-12-31 20:05:16 UTC (rev 12669)
@@ -1,6011 +1,5805 @@
-
-wine_unicode.nostrip.dll: file format pei-i386
-
-Disassembly of section .text:
-
-6b201000 <_DllMainCRTStartup@12>:
-6b201000: 55 push %ebp
-6b201001: 89 e5 mov %esp,%ebp
-6b201003: 83 ec 18 sub $0x18,%esp
-6b201006: 89 75 fc mov %esi,0xfffffffc(%ebp)
-6b201009: 8b 75 0c mov 0xc(%ebp),%esi
-6b20100c: 89 5d f8 mov %ebx,0xfffffff8(%ebp)
-6b20100f: 83 fe 01 cmp $0x1,%esi
-6b201012: 74 4f je 6b201063 <_DllMainCRTStartup@12+0x63>
-6b201014: 89 74 24 04 mov %esi,0x4(%esp)
-6b201018: 8b 45 10 mov 0x10(%ebp),%eax
-6b20101b: 89 44 24 08 mov %eax,0x8(%esp)
-6b20101f: 8b 45 08 mov 0x8(%ebp),%eax
-6b201022: 89 04 24 mov %eax,(%esp)
-6b201025: e8 16 40 00 00 call 6b205040 <_DllMain@12>
-6b20102a: 83 ec 0c sub $0xc,%esp
-6b20102d: 83 fe 01 cmp $0x1,%esi
-6b201030: 89 c3 mov %eax,%ebx
-6b201032: 74 24 je 6b201058 <_DllMainCRTStartup@12+0x58>
-6b201034: 85 f6 test %esi,%esi
-6b201036: 75 0b jne 6b201043 <_DllMainCRTStartup@12+0x43>
-6b201038: a1 00 50 2f 6b mov 0x6b2f5000,%eax
-6b20103d: 85 c0 test %eax,%eax
-6b20103f: 75 10 jne 6b201051 <_DllMainCRTStartup@12+0x51>
-6b201041: 31 db xor %ebx,%ebx
-6b201043: 89 d8 mov %ebx,%eax
-6b201045: 8b 5d f8 mov 0xfffffff8(%ebp),%ebx
-6b201048: 8b 75 fc mov 0xfffffffc(%ebp),%esi
-6b20104b: 89 ec mov %ebp,%esp
-6b20104d: 5d pop %ebp
-6b20104e: c2 0c 00 ret $0xc
-6b201051: e8 4a 00 00 00 call 6b2010a0 <___dll_exit>
-6b201056: eb eb jmp 6b201043 <_DllMainCRTStartup@12+0x43>
-6b201058: 85 c0 test %eax,%eax
-6b20105a: 75 d8 jne 6b201034 <_DllMainCRTStartup@12+0x34>
-6b20105c: e8 3f 00 00 00 call 6b2010a0 <___dll_exit>
-6b201061: eb d1 jmp 6b201034 <_DllMainCRTStartup@12+0x34>
-6b201063: c7 04 24 80 00 00 00 movl $0x80,(%esp)
-6b20106a: e8 f1 43 00 00 call 6b205460 <_malloc>
-6b20106f: a3 00 50 2f 6b mov %eax,0x6b2f5000
-6b201074: 85 c0 test %eax,%eax
-6b201076: 74 17 je 6b20108f <_DllMainCRTStartup@12+0x8f>
-6b201078: c7 00 00 00 00 00 movl $0x0,(%eax)
-6b20107e: a3 10 50 2f 6b mov %eax,0x6b2f5010
-6b201083: e8 b8 40 00 00 call 6b205140 <__pei386_runtime_relocator>
-6b201088: e8 53 40 00 00 call 6b2050e0 <___main>
-6b20108d: eb 85 jmp 6b201014 <_DllMainCRTStartup@12+0x14>
-6b20108f: e8 bc 43 00 00 call 6b205450 <__errno>
-6b201094: c7 00 0c 00 00 00 movl $0xc,(%eax)
-6b20109a: 31 c0 xor %eax,%eax
-6b20109c: eb a7 jmp 6b201045 <_DllMainCRTStartup@12+0x45>
-6b20109e: 89 f6 mov %esi,%esi
-
-6b2010a0 <___dll_exit>:
-6b2010a0: 55 push %ebp
-6b2010a1: 89 e5 mov %esp,%ebp
-6b2010a3: 83 ec 08 sub $0x8,%esp
-6b2010a6: 89 5d fc mov %ebx,0xfffffffc(%ebp)
-6b2010a9: 8b 15 00 50 2f 6b mov 0x6b2f5000,%edx
-6b2010af: 85 d2 test %edx,%edx
-6b2010b1: 74 2a je 6b2010dd <___dll_exit+0x3d>
-6b2010b3: 8b 1d 10 50 2f 6b mov 0x6b2f5010,%ebx
-6b2010b9: 83 eb 04 sub $0x4,%ebx
-6b2010bc: 39 d3 cmp %edx,%ebx
-6b2010be: 72 0d jb 6b2010cd <___dll_exit+0x2d>
-6b2010c0: 8b 03 mov (%ebx),%eax
-6b2010c2: 85 c0 test %eax,%eax
-6b2010c4: 75 2a jne 6b2010f0 <___dll_exit+0x50>
-6b2010c6: 83 eb 04 sub $0x4,%ebx
-6b2010c9: 39 d3 cmp %edx,%ebx
-6b2010cb: 73 f3 jae 6b2010c0 <___dll_exit+0x20>
-6b2010cd: 89 14 24 mov %edx,(%esp)
-6b2010d0: e8 6b 43 00 00 call 6b205440 <_free>
-6b2010d5: 31 d2 xor %edx,%edx
-6b2010d7: 89 15 00 50 2f 6b mov %edx,0x6b2f5000
-6b2010dd: c7 04 24 00 00 00 00 movl $0x0,(%esp)
-6b2010e4: e8 47 43 00 00 call 6b205430 <_fflush>
-6b2010e9: 8b 5d fc mov 0xfffffffc(%ebp),%ebx
-6b2010ec: 89 ec mov %ebp,%esp
-6b2010ee: 5d pop %ebp
-6b2010ef: c3 ret
-6b2010f0: ff d0 call *%eax
-6b2010f2: 8b 15 00 50 2f 6b mov 0x6b2f5000,%edx
-6b2010f8: eb cc jmp 6b2010c6 <___dll_exit+0x26>
-6b2010fa: 8d b6 00 00 00 00 lea 0x0(%esi),%esi
-
-6b201100 <_atexit>:
-6b201100: 55 push %ebp
-6b201101: 89 e5 mov %esp,%ebp
-6b201103: 83 ec 18 sub $0x18,%esp
-6b201106: c7 44 24 08 10 50 2f movl $0x6b2f5010,0x8(%esp)
-6b20110d: 6b
-6b20110e: 8b 45 08 mov 0x8(%ebp),%eax
-6b201111: c7 44 24 04 00 50 2f movl $0x6b2f5000,0x4(%esp)
-6b201118: 6b
-6b201119: 89 04 24 mov %eax,(%esp)
-6b20111c: e8 ff 42 00 00 call 6b205420 <___dllonexit>
-6b201121: 85 c0 test %eax,%eax
-6b201123: 0f 95 c0 setne %al
-6b201126: 89 ec mov %ebp,%esp
-6b201128: 5d pop %ebp
-6b201129: 0f b6 c0 movzbl %al,%eax
-6b20112c: 48 dec %eax
-6b20112d: c3 ret
-6b20112e: 89 f6 mov %esi,%esi
-
-6b201130 <__onexit>:
-6b201130: 55 push %ebp
-6b201131: 89 e5 mov %esp,%ebp
-6b201133: 83 ec 18 sub $0x18,%esp
-6b201136: c7 44 24 08 10 50 2f movl $0x6b2f5010,0x8(%esp)
-6b20113d: 6b
-6b20113e: 8b 45 08 mov 0x8(%ebp),%eax
-6b201141: c7 44 24 04 00 50 2f movl $0x6b2f5000,0x4(%esp)
-6b201148: 6b
-6b201149: 89 04 24 mov %eax,(%esp)
-6b20114c: e8 cf 42 00 00 call 6b205420 <___dllonexit>
-6b201151: 89 ec mov %ebp,%esp
-6b201153: 5d pop %ebp
-6b201154: c3 ret
-6b201155: 90 nop
-6b201156: 90 nop
-6b201157: 90 nop
-6b201158: 90 nop
-6b201159: 90 nop
-6b20115a: 90 nop
-6b20115b: 90 nop
-6b20115c: 90 nop
-6b20115d: 90 nop
-6b20115e: 90 nop
-6b20115f: 90 nop
-
-6b201160 <___do_sjlj_init>:
-6b201160: 55 push %ebp
-6b201161: 89 e5 mov %esp,%ebp
-6b201163: 5d pop %ebp
-6b201164: e9 77 40 00 00 jmp 6b2051e0 <___w32_sharedptr_initialize>
-6b201169: 90 nop
-6b20116a: 90 nop
-6b20116b: 90 nop
-6b20116c: 90 nop
-6b20116d: 90 nop
-6b20116e: 90 nop
-6b20116f: 90 nop
-
-6b201170 <_cmp_codepage>:
-6b201170: 55 push %ebp
-6b201171: 89 e5 mov %esp,%ebp
-6b201173: 8b 45 0c mov 0xc(%ebp),%eax
-6b201176: 8b 00 mov (%eax),%eax
-6b201178: 8b 10 mov (%eax),%edx
-6b20117a: 8b 45 08 mov 0x8(%ebp),%eax
-6b20117d: 29 d0 sub %edx,%eax
-6b20117f: 5d pop %ebp
-6b201180: c3 ret
-
-6b201181 <_wine_cp_get_table>:
-
-
-/* get the table of a given code page */
-const union cptable *wine_cp_get_table( unsigned int codepage )
-{
-6b201181: 55 push %ebp
-6b201182: 89 e5 mov %esp,%ebp
-6b201184: 83 ec 08 sub $0x8,%esp
- const union cptable **res;
-
- if (!(res = bsearch( (void *)codepage, cptables, NB_CODEPAGES,
-6b201187: 83 ec 0c sub $0xc,%esp
-6b20118a: 68 70 11 20 6b push $0x6b201170
-6b20118f: 6a 04 push $0x4
-6b201191: 6a 3b push $0x3b
-6b201193: 68 40 c7 21 6b push $0x6b21c740
-6b201198: ff 75 08 pushl 0x8(%ebp)
-6b20119b: e8 d0 42 00 00 call 6b205470 <_bsearch>
-6b2011a0: 83 c4 20 add $0x20,%esp
-6b2011a3: 89 45 fc mov %eax,0xfffffffc(%ebp)
-6b2011a6: 8b 45 fc mov 0xfffffffc(%ebp),%eax
-6b2011a9: 85 c0 test %eax,%eax
-6b2011ab: 75 09 jne 6b2011b6 <_wine_cp_get_table+0x35>
- sizeof(cptables[0]), cmp_codepage ))) return NULL;
-6b2011ad: c7 45 f8 00 00 00 00 movl $0x0,0xfffffff8(%ebp)
-6b2011b4: eb 08 jmp 6b2011be <_wine_cp_get_table+0x3d>
- return *res;
-6b2011b6: 8b 45 fc mov 0xfffffffc(%ebp),%eax
-6b2011b9: 8b 00 mov (%eax),%eax
-6b2011bb: 89 45 f8 mov %eax,0xfffffff8(%ebp)
-}
-6b2011be: 8b 45 f8 mov 0xfffffff8(%ebp),%eax
-6b2011c1: c9 leave
-6b2011c2: c3 ret
-
-6b2011c3 <_wine_cp_enum_table>:
-
-
-/* enum valid codepages */
-const union cptable *wine_cp_enum_table( unsigned int index )
-{
-6b2011c3: 55 push %ebp
-6b2011c4: 89 e5 mov %esp,%ebp
-6b2011c6: 83 ec 04 sub $0x4,%esp
- if (index >= NB_CODEPAGES) return NULL;
-6b2011c9: 83 7d 08 3a cmpl $0x3a,0x8(%ebp)
-6b2011cd: 76 09 jbe 6b2011d8 <_wine_cp_enum_table+0x15>
-6b2011cf: c7 45 fc 00 00 00 00 movl $0x0,0xfffffffc(%ebp)
-6b2011d6: eb 0d jmp 6b2011e5 <_wine_cp_enum_table+0x22>
- return cptables[index];
-6b2011d8: 8b 45 08 mov 0x8(%ebp),%eax
-6b2011db: 8b 04 85 40 c7 21 6b mov 0x6b21c740(,%eax,4),%eax
-6b2011e2: 89 45 fc mov %eax,0xfffffffc(%ebp)
-}
-6b2011e5: 8b 45 fc mov 0xfffffffc(%ebp),%eax
-6b2011e8: c9 leave
-6b2011e9: c3 ret
-6b2011ea: 90 nop
-6b2011eb: 90 nop
-6b2011ec: 90 nop
-6b2011ed: 90 nop
-6b2011ee: 90 nop
-6b2011ef: 90 nop
-
-6b2011f0 <_wine_fold_string>:
-6b2011f0: 55 push %ebp
-6b2011f1: 89 e5 mov %esp,%ebp
-6b2011f3: 83 ec 18 sub $0x18,%esp
-6b2011f6: 8b 45 14 mov 0x14(%ebp),%eax
-6b2011f9: 89 45 fc mov %eax,0xfffffffc(%ebp)
-6b2011fc: 83 7d 10 ff cmpl $0xffffffff,0x10(%ebp)
-6b201200: 75 12 jne 6b201214 <_wine_fold_string+0x24>
-6b201202: 83 ec 0c sub $0xc,%esp
-6b201205: ff 75 0c pushl 0xc(%ebp)
-6b201208: e8 73 42 00 00 call 6b205480 <_wcslen>
-6b20120d: 83 c4 10 add $0x10,%esp
-6b201210: 40 inc %eax
-6b201211: 89 45 10 mov %eax,0x10(%ebp)
-6b201214: 83 7d 18 00 cmpl $0x0,0x18(%ebp)
-6b201218: 75 5e jne 6b201278 <_wine_fold_string+0x88>
-6b20121a: 8b 45 10 mov 0x10(%ebp),%eax
-6b20121d: 89 45 18 mov %eax,0x18(%ebp)
-6b201220: 8b 45 08 mov 0x8(%ebp),%eax
-6b201223: c1 e8 0d shr $0xd,%eax
-6b201226: 83 e0 01 and $0x1,%eax
-6b201229: 85 c0 test %eax,%eax
-6b20122b: 74 31 je 6b20125e <_wine_fold_string+0x6e>
-6b20122d: 8d 45 10 lea 0x10(%ebp),%eax
-6b201230: ff 08 decl (%eax)
-6b201232: 83 7d 10 ff cmpl $0xffffffff,0x10(%ebp)
-6b201236: 74 35 je 6b20126d <_wine_fold_string+0x7d>
-6b201238: 83 ec 0c sub $0xc,%esp
-6b20123b: 8b 45 0c mov 0xc(%ebp),%eax
-6b20123e: 66 8b 00 mov (%eax),%ax
-6b201241: 25 ff ff 00 00 and $0xffff,%eax
-6b201246: 50 push %eax
-6b201247: e8 d0 02 00 00 call 6b20151c <_get_ligature_len>
-6b20124c: 83 c4 10 add $0x10,%esp
-6b20124f: 89 c2 mov %eax,%edx
-6b201251: 8d 45 18 lea 0x18(%ebp),%eax
-6b201254: 01 10 add %edx,(%eax)
-6b201256: 8d 45 0c lea 0xc(%ebp),%eax
-6b201259: 83 00 02 addl $0x2,(%eax)
-6b20125c: eb cf jmp 6b20122d <_wine_fold_string+0x3d>
-6b20125e: 8b 45 08 mov 0x8(%ebp),%eax
-6b201261: c1 e8 06 shr $0x6,%eax
-6b201264: 83 e0 01 and $0x1,%eax
-6b201267: 85 c0 test %eax,%eax
-6b201269: 74 02 je 6b20126d <_wine_fold_string+0x7d>
-6b20126b: eb 00 jmp 6b20126d <_wine_fold_string+0x7d>
-6b20126d: 8b 45 18 mov 0x18(%ebp),%eax
-6b201270: 89 45 ec mov %eax,0xffffffec(%ebp)
-6b201273: e9 78 01 00 00 jmp 6b2013f0 <_wine_fold_string+0x200>
-6b201278: 8b 45 10 mov 0x10(%ebp),%eax
-6b20127b: 3b 45 18 cmp 0x18(%ebp),%eax
-6b20127e: 7e 0c jle 6b20128c <_wine_fold_string+0x9c>
-6b201280: c7 45 ec 00 00 00 00 movl $0x0,0xffffffec(%ebp)
-6b201287: e9 64 01 00 00 jmp 6b2013f0 <_wine_fold_string+0x200>
-6b20128c: 8b 55 10 mov 0x10(%ebp),%edx
-6b20128f: 8d 45 18 lea 0x18(%ebp),%eax
-6b201292: 29 10 sub %edx,(%eax)
-6b201294: c7 45 f4 00 00 00 00 movl $0x0,0xfffffff4(%ebp)
-6b20129b: 8b 45 f4 mov 0xfffffff4(%ebp),%eax
-6b20129e: 3b 45 10 cmp 0x10(%ebp),%eax
-6b2012a1: 0f 8d 3c 01 00 00 jge 6b2013e3 <_wine_fold_string+0x1f3>
-6b2012a7: 8b 45 0c mov 0xc(%ebp),%eax
-6b2012aa: 66 8b 00 mov (%eax),%ax
-6b2012ad: 66 89 45 f2 mov %ax,0xfffffff2(%ebp)
-6b2012b1: 8b 45 08 mov 0x8(%ebp),%eax
-6b2012b4: c1 e8 0d shr $0xd,%eax
-6b2012b7: 83 e0 01 and $0x1,%eax
-6b2012ba: 85 c0 test %eax,%eax
-6b2012bc: 0f 84 a4 00 00 00 je 6b201366 <_wine_fold_string+0x176>
-6b2012c2: 83 ec 0c sub $0xc,%esp
-6b2012c5: 66 8b 45 f2 mov 0xfffffff2(%ebp),%ax
-6b2012c9: 25 ff ff 00 00 and $0xffff,%eax
-6b2012ce: 50 push %eax
-6b2012cf: e8 bd 01 00 00 call 6b201491 <_get_ligature>
-6b2012d4: 83 c4 10 add $0x10,%esp
-6b2012d7: 89 45 f8 mov %eax,0xfffffff8(%ebp)
-6b2012da: 8b 45 f8 mov 0xfffffff8(%ebp),%eax
-6b2012dd: 66 83 38 00 cmpw $0x0,(%eax)
-6b2012e1: 0f 84 8e 00 00 00 je 6b201375 <_wine_fold_string+0x185>
-6b2012e7: 8d 45 18 lea 0x18(%ebp),%eax
-6b2012ea: ff 08 decl (%eax)
-6b2012ec: 83 7d 18 ff cmpl $0xffffffff,0x18(%ebp)
-6b2012f0: 75 0c jne 6b2012fe <_wine_fold_string+0x10e>
-6b2012f2: c7 45 ec 00 00 00 00 movl $0x0,0xffffffec(%ebp)
-6b2012f9: e9 f2 00 00 00 jmp 6b2013f0 <_wine_fold_string+0x200>
-6b2012fe: 8b 55 14 mov 0x14(%ebp),%edx
-6b201301: 8b 45 f8 mov 0xfffffff8(%ebp),%eax
-6b201304: 66 8b 00 mov (%eax),%ax
-6b201307: 66 89 02 mov %ax,(%edx)
-6b20130a: 8b 45 f8 mov 0xfffffff8(%ebp),%eax
-6b20130d: 83 c0 04 add $0x4,%eax
-6b201310: 66 83 38 00 cmpw $0x0,(%eax)
-6b201314: 74 3b je 6b201351 <_wine_fold_string+0x161>
-6b201316: 8d 45 18 lea 0x18(%ebp),%eax
-6b201319: ff 08 decl (%eax)
-6b20131b: 83 7d 18 ff cmpl $0xffffffff,0x18(%ebp)
-6b20131f: 75 0c jne 6b20132d <_wine_fold_string+0x13d>
-6b201321: c7 45 ec 00 00 00 00 movl $0x0,0xffffffec(%ebp)
-6b201328: e9 c3 00 00 00 jmp 6b2013f0 <_wine_fold_string+0x200>
-6b20132d: 8d 45 14 lea 0x14(%ebp),%eax
-6b201330: 83 00 02 addl $0x2,(%eax)
-6b201333: 8b 55 14 mov 0x14(%ebp),%edx
-6b201336: 8b 45 f8 mov 0xfffffff8(%ebp),%eax
-6b201339: 83 c0 02 add $0x2,%eax
-6b20133c: 66 8b 00 mov (%eax),%ax
-6b20133f: 66 89 02 mov %ax,(%edx)
-6b201342: 8b 45 f8 mov 0xfffffff8(%ebp),%eax
-6b201345: 83 c0 04 add $0x4,%eax
-6b201348: 66 8b 00 mov (%eax),%ax
-6b20134b: 66 89 45 f2 mov %ax,0xfffffff2(%ebp)
-6b20134f: eb 0d jmp 6b20135e <_wine_fold_string+0x16e>
-6b201351: 8b 45 f8 mov 0xfffffff8(%ebp),%eax
-6b201354: 83 c0 02 add $0x2,%eax
-6b201357: 66 8b 00 mov (%eax),%ax
-6b20135a: 66 89 45 f2 mov %ax,0xfffffff2(%ebp)
-6b20135e: 8d 45 14 lea 0x14(%ebp),%eax
-6b201361: 83 00 02 addl $0x2,(%eax)
-6b201364: eb 0f jmp 6b201375 <_wine_fold_string+0x185>
-6b201366: 8b 45 08 mov 0x8(%ebp),%eax
-6b201369: c1 e8 06 shr $0x6,%eax
-6b20136c: 83 e0 01 and $0x1,%eax
-6b20136f: 85 c0 test %eax,%eax
-6b201371: 74 02 je 6b201375 <_wine_fold_string+0x185>
-6b201373: eb 00 jmp 6b201375 <_wine_fold_string+0x185>
-6b201375: 8b 45 08 mov 0x8(%ebp),%eax
-6b201378: c1 e8 07 shr $0x7,%eax
-6b20137b: 83 e0 01 and $0x1,%eax
-6b20137e: 85 c0 test %eax,%eax
-6b201380: 74 19 je 6b20139b <_wine_fold_string+0x1ab>
-6b201382: 83 ec 0c sub $0xc,%esp
-6b201385: 66 8b 45 f2 mov 0xfffffff2(%ebp),%ax
-6b201389: 25 ff ff 00 00 and $0xffff,%eax
-6b20138e: 50 push %eax
-6b20138f: e8 af 00 00 00 call 6b201443 <_to_unicode_digit>
-6b201394: 83 c4 10 add $0x10,%esp
-6b201397: 66 89 45 f2 mov %ax,0xfffffff2(%ebp)
-6b20139b: 8b 45 08 mov 0x8(%ebp),%eax
-6b20139e: c1 e8 04 shr $0x4,%eax
-6b2013a1: 83 e0 01 and $0x1,%eax
-6b2013a4: 85 c0 test %eax,%eax
-6b2013a6: 74 19 je 6b2013c1 <_wine_fold_string+0x1d1>
-6b2013a8: 83 ec 0c sub $0xc,%esp
-6b2013ab: 66 8b 45 f2 mov 0xfffffff2(%ebp),%ax
-6b2013af: 25 ff ff 00 00 and $0xffff,%eax
-6b2013b4: 50 push %eax
-6b2013b5: e8 3b 00 00 00 call 6b2013f5 <_to_unicode_native>
-6b2013ba: 83 c4 10 add $0x10,%esp
-6b2013bd: 66 89 45 f2 mov %ax,0xfffffff2(%ebp)
-6b2013c1: 8b 45 14 mov 0x14(%ebp),%eax
-6b2013c4: 89 c2 mov %eax,%edx
-6b2013c6: 66 8b 45 f2 mov 0xfffffff2(%ebp),%ax
-6b2013ca: 66 89 02 mov %ax,(%edx)
-6b2013cd: 8d 45 14 lea 0x14(%ebp),%eax
-6b2013d0: 83 00 02 addl $0x2,(%eax)
-6b2013d3: 8d 45 0c lea 0xc(%ebp),%eax
-6b2013d6: 83 00 02 addl $0x2,(%eax)
-6b2013d9: 8d 45 f4 lea 0xfffffff4(%ebp),%eax
-6b2013dc: ff 00 incl (%eax)
-6b2013de: e9 b8 fe ff ff jmp 6b20129b <_wine_fold_string+0xab>
-6b2013e3: 8b 55 fc mov 0xfffffffc(%ebp),%edx
-6b2013e6: 8b 45 14 mov 0x14(%ebp),%eax
-6b2013e9: 29 d0 sub %edx,%eax
-6b2013eb: d1 f8 sar %eax
-6b2013ed: 89 45 ec mov %eax,0xffffffec(%ebp)
-6b2013f0: 8b 45 ec mov 0xffffffec(%ebp),%eax
-6b2013f3: c9 leave
-6b2013f4: c3 ret
-
-6b2013f5 <_to_unicode_native>:
-6b2013f5: 55 push %ebp
-6b2013f6: 89 e5 mov %esp,%ebp
-6b2013f8: 83 ec 04 sub $0x4,%esp
-6b2013fb: 8b 45 08 mov 0x8(%ebp),%eax
-6b2013fe: 66 89 45 fe mov %ax,0xfffffffe(%ebp)
-6b201402: 66 8b 45 fe mov 0xfffffffe(%ebp),%ax
-6b201406: 66 c1 e8 08 shr $0x8,%ax
-6b20140a: 25 ff ff 00 00 and $0xffff,%eax
-6b20140f: 66 8b 84 00 60 bf 20 mov 0x6b20bf60(%eax,%eax,1),%ax
-6b201416: 6b
-6b201417: 89 c2 mov %eax,%edx
-6b201419: 81 e2 ff ff 00 00 and $0xffff,%edx
-6b20141f: 66 8b 45 fe mov 0xfffffffe(%ebp),%ax
-6b201423: 25 ff ff 00 00 and $0xffff,%eax
-6b201428: 25 ff 00 00 00 and $0xff,%eax
-6b20142d: 8d 14 10 lea (%eax,%edx,1),%edx
-6b201430: 66 8b 45 fe mov 0xfffffffe(%ebp),%ax
-6b201434: 66 03 84 12 60 bf 20 add 0x6b20bf60(%edx,%edx,1),%ax
-6b20143b: 6b
-6b20143c: 25 ff ff 00 00 and $0xffff,%eax
-6b201441: c9 leave
-6b201442: c3 ret
-
-6b201443 <_to_unicode_digit>:
-6b201443: 55 push %ebp
-6b201444: 89 e5 mov %esp,%ebp
-6b201446: 83 ec 04 sub $0x4,%esp
-6b201449: 8b 45 08 mov 0x8(%ebp),%eax
-6b20144c: 66 89 45 fe mov %ax,0xfffffffe(%ebp)
-6b201450: 66 8b 45 fe mov 0xfffffffe(%ebp),%ax
-6b201454: 66 c1 e8 08 shr $0x8,%ax
-6b201458: 25 ff ff 00 00 and $0xffff,%eax
-6b20145d: 66 8b 84 00 80 9e 20 mov 0x6b209e80(%eax,%eax,1),%ax
-6b201464: 6b
-6b201465: 89 c2 mov %eax,%edx
-6b201467: 81 e2 ff ff 00 00 and $0xffff,%edx
-6b20146d: 66 8b 45 fe mov 0xfffffffe(%ebp),%ax
-6b201471: 25 ff ff 00 00 and $0xffff,%eax
-6b201476: 25 ff 00 00 00 and $0xff,%eax
-6b20147b: 8d 14 10 lea (%eax,%edx,1),%edx
-6b20147e: 66 8b 45 fe mov 0xfffffffe(%ebp),%ax
-6b201482: 66 03 84 12 80 9e 20 add 0x6b209e80(%edx,%edx,1),%ax
-6b201489: 6b
-6b20148a: 25 ff ff 00 00 and $0xffff,%eax
-6b20148f: c9 leave
-6b201490: c3 ret
-
-6b201491 <_get_ligature>:
-6b201491: 55 push %ebp
-6b201492: 89 e5 mov %esp,%ebp
-6b201494: 83 ec 14 sub $0x14,%esp
-6b201497: 8b 45 08 mov 0x8(%ebp),%eax
-6b20149a: 66 89 45 fe mov %ax,0xfffffffe(%ebp)
-6b20149e: c7 45 f8 00 00 00 00 movl $0x0,0xfffffff8(%ebp)
-6b2014a5: c7 45 f4 22 00 00 00 movl $0x22,0xfffffff4(%ebp)
-6b2014ac: 8b 45 f8 mov 0xfffffff8(%ebp),%eax
-6b2014af: 3b 45 f4 cmp 0xfffffff4(%ebp),%eax
-6b2014b2: 7f 5c jg 6b201510 <_get_ligature+0x7f>
-6b2014b4: 8b 45 f4 mov 0xfffffff4(%ebp),%eax
-6b2014b7: 8b 55 f8 mov 0xfffffff8(%ebp),%edx
-6b2014ba: 01 c2 add %eax,%edx
-6b2014bc: 89 d0 mov %edx,%eax
-6b2014be: c1 f8 1f sar $0x1f,%eax
-6b2014c1: c1 e8 1f shr $0x1f,%eax
-6b2014c4: 8d 04 02 lea (%edx,%eax,1),%eax
-6b2014c7: d1 f8 sar %eax
-6b2014c9: 89 45 f0 mov %eax,0xfffffff0(%ebp)
-6b2014cc: 8b 45 f0 mov 0xfffffff0(%ebp),%eax
-6b2014cf: 66 8b 84 00 40 c8 21 mov 0x6b21c840(%eax,%eax,1),%ax
-6b2014d6: 6b
-6b2014d7: 66 3b 45 fe cmp 0xfffffffe(%ebp),%ax
-6b2014db: 73 09 jae 6b2014e6 <_get_ligature+0x55>
-6b2014dd: 8b 45 f0 mov 0xfffffff0(%ebp),%eax
-6b2014e0: 40 inc %eax
-6b2014e1: 89 45 f8 mov %eax,0xfffffff8(%ebp)
-6b2014e4: eb c6 jmp 6b2014ac <_get_ligature+0x1b>
-6b2014e6: 8b 45 f0 mov 0xfffffff0(%ebp),%eax
-6b2014e9: 66 8b 84 00 40 c8 21 mov 0x6b21c840(%eax,%eax,1),%ax
-6b2014f0: 6b
-6b2014f1: 66 3b 45 fe cmp 0xfffffffe(%ebp),%ax
-6b2014f5: 76 09 jbe 6b201500 <_get_ligature+0x6f>
-6b2014f7: 8b 45 f0 mov 0xfffffff0(%ebp),%eax
-6b2014fa: 48 dec %eax
-6b2014fb: 89 45 f4 mov %eax,0xfffffff4(%ebp)
-6b2014fe: eb ac jmp 6b2014ac <_get_ligature+0x1b>
-6b201500: 8b 45 f0 mov 0xfffffff0(%ebp),%eax
-6b201503: c1 e0 03 shl $0x3,%eax
-6b201506: 05 a0 c8 21 6b add $0x6b21c8a0,%eax
-6b20150b: 89 45 ec mov %eax,0xffffffec(%ebp)
-6b20150e: eb 07 jmp 6b201517 <_get_ligature+0x86>
-6b201510: c7 45 ec b8 c9 21 6b movl $0x6b21c9b8,0xffffffec(%ebp)
-6b201517: 8b 45 ec mov 0xffffffec(%ebp),%eax
-6b20151a: c9 leave
-6b20151b: c3 ret
-
-6b20151c <_get_ligature_len>:
-6b20151c: 55 push %ebp
-6b20151d: 89 e5 mov %esp,%ebp
-6b20151f: 83 ec 14 sub $0x14,%esp
-6b201522: 8b 45 08 mov 0x8(%ebp),%eax
-6b201525: 66 89 45 fe mov %ax,0xfffffffe(%ebp)
-6b201529: c7 45 f8 00 00 00 00 movl $0x0,0xfffffff8(%ebp)
-6b201530: c7 45 f4 22 00 00 00 movl $0x22,0xfffffff4(%ebp)
-6b201537: 8b 45 f8 mov 0xfffffff8(%ebp),%eax
-6b20153a: 3b 45 f4 cmp 0xfffffff4(%ebp),%eax
-6b20153d: 7f 61 jg 6b2015a0 <_get_ligature_len+0x84>
-6b20153f: 8b 45 f4 mov 0xfffffff4(%ebp),%eax
-6b201542: 8b 55 f8 mov 0xfffffff8(%ebp),%edx
-6b201545: 01 c2 add %eax,%edx
-6b201547: 89 d0 mov %edx,%eax
-6b201549: c1 f8 1f sar $0x1f,%eax
-6b20154c: c1 e8 1f shr $0x1f,%eax
-6b20154f: 8d 04 02 lea (%edx,%eax,1),%eax
-6b201552: d1 f8 sar %eax
-6b201554: 89 45 f0 mov %eax,0xfffffff0(%ebp)
-6b201557: 8b 45 f0 mov 0xfffffff0(%ebp),%eax
-6b20155a: 66 8b 84 00 40 c8 21 mov 0x6b21c840(%eax,%eax,1),%ax
-6b201561: 6b
-6b201562: 66 3b 45 fe cmp 0xfffffffe(%ebp),%ax
-6b201566: 73 09 jae 6b201571 <_get_ligature_len+0x55>
-6b201568: 8b 45 f0 mov 0xfffffff0(%ebp),%eax
-6b20156b: 40 inc %eax
-6b20156c: 89 45 f8 mov %eax,0xfffffff8(%ebp)
-6b20156f: eb c6 jmp 6b201537 <_get_ligature_len+0x1b>
-6b201571: 8b 45 f0 mov 0xfffffff0(%ebp),%eax
-6b201574: 66 8b 84 00 40 c8 21 mov 0x6b21c840(%eax,%eax,1),%ax
-6b20157b: 6b
-6b20157c: 66 3b 45 fe cmp 0xfffffffe(%ebp),%ax
-6b201580: 76 09 jbe 6b20158b <_get_ligature_len+0x6f>
-6b201582: 8b 45 f0 mov 0xfffffff0(%ebp),%eax
-6b201585: 48 dec %eax
-6b201586: 89 45 f4 mov %eax,0xfffffff4(%ebp)
-6b201589: eb ac jmp 6b201537 <_get_ligature_len+0x1b>
-6b20158b: 8b 45 f0 mov 0xfffffff0(%ebp),%eax
-6b20158e: 66 8b 04 c5 a6 c8 21 mov 0x6b21c8a6(,%eax,8),%ax
-6b201595: 6b
-6b201596: 25 ff ff 00 00 and $0xffff,%eax
-6b20159b: 89 45 ec mov %eax,0xffffffec(%ebp)
-6b20159e: eb 07 jmp 6b2015a7 <_get_ligature_len+0x8b>
-6b2015a0: c7 45 ec 00 00 00 00 movl $0x0,0xffffffec(%ebp)
-6b2015a7: 8b 45 ec mov 0xffffffec(%ebp),%eax
-6b2015aa: c9 leave
-6b2015ab: c3 ret
-6b2015ac: 90 nop
-6b2015ad: 90 nop
-6b2015ae: 90 nop
-6b2015af: 90 nop
-
-6b2015b0 <_get_decomposition>:
-6b2015b0: 55 push %ebp
-6b2015b1: 89 e5 mov %esp,%ebp
-6b2015b3: 83 ec 10 sub $0x10,%esp
-6b2015b6: 8b 45 08 mov 0x8(%ebp),%eax
-6b2015b9: 66 89 45 fe mov %ax,0xfffffffe(%ebp)
-6b2015bd: c7 45 f8 a0 a3 21 6b movl $0x6b21a3a0,0xfffffff8(%ebp)
-6b2015c4: 8b 55 0c mov 0xc(%ebp),%edx
-6b2015c7: 66 8b 45 fe mov 0xfffffffe(%ebp),%ax
-6b2015cb: 66 89 02 mov %ax,(%edx)
-6b2015ce: 66 8b 45 fe mov 0xfffffffe(%ebp),%ax
-6b2015d2: 66 c1 e8 08 shr $0x8,%ax
-6b2015d6: 25 ff ff 00 00 and $0xffff,%eax
-6b2015db: 8d 14 00 lea (%eax,%eax,1),%edx
-6b2015de: 8b 45 f8 mov 0xfffffff8(%ebp),%eax
-6b2015e1: 66 8b 04 02 mov (%edx,%eax,1),%ax
-6b2015e5: 25 ff ff 00 00 and $0xffff,%eax
-6b2015ea: 01 c0 add %eax,%eax
-6b2015ec: 05 a0 a3 21 6b add $0x6b21a3a0,%eax
-6b2015f1: 89 45 f8 mov %eax,0xfffffff8(%ebp)
-6b2015f4: 66 8b 45 fe mov 0xfffffffe(%ebp),%ax
-6b2015f8: 25 ff ff 00 00 and $0xffff,%eax
-6b2015fd: 83 e0 0f and $0xf,%eax
-6b201600: 8d 0c 00 lea (%eax,%eax,1),%ecx
-6b201603: 66 8b 45 fe mov 0xfffffffe(%ebp),%ax
-6b201607: 66 c1 e8 04 shr $0x4,%ax
-6b20160b: 25 ff ff 00 00 and $0xffff,%eax
-6b201610: 83 e0 0f and $0xf,%eax
-6b201613: 8d 14 00 lea (%eax,%eax,1),%edx
-6b201616: 8b 45 f8 mov 0xfffffff8(%ebp),%eax
-6b201619: 66 8b 04 02 mov (%edx,%eax,1),%ax
-6b20161d: 25 ff ff 00 00 and $0xffff,%eax
-6b201622: 8d 04 01 lea (%ecx,%eax,1),%eax
-6b201625: 01 c0 add %eax,%eax
-6b201627: 05 a0 a3 21 6b add $0x6b21a3a0,%eax
-6b20162c: 89 45 f8 mov %eax,0xfffffff8(%ebp)
-6b20162f: 8b 45 f8 mov 0xfffffff8(%ebp),%eax
-6b201632: 66 83 38 00 cmpw $0x0,(%eax)
-6b201636: 75 09 jne 6b201641 <_get_decomposition+0x91>
-6b201638: c7 45 f0 01 00 00 00 movl $0x1,0xfffffff0(%ebp)
-6b20163f: eb 58 jmp 6b201699 <_get_decomposition+0xe9>
-6b201641: 83 7d 10 01 cmpl $0x1,0x10(%ebp)
-6b201645: 77 09 ja 6b201650 <_get_decomposition+0xa0>
-6b201647: c7 45 f0 00 00 00 00 movl $0x0,0xfffffff0(%ebp)
-6b20164e: eb 49 jmp 6b201699 <_get_decomposition+0xe9>
-6b201650: 83 ec 04 sub $0x4,%esp
-6b201653: 8b 45 10 mov 0x10(%ebp),%eax
-6b201656: 48 dec %eax
-6b201657: 50 push %eax
-6b201658: ff 75 0c pushl 0xc(%ebp)
-6b20165b: 8b 45 f8 mov 0xfffffff8(%ebp),%eax
-6b20165e: 66 8b 00 mov (%eax),%ax
-6b201661: 25 ff ff 00 00 and $0xffff,%eax
-6b201666: 50 push %eax
-6b201667: e8 44 ff ff ff call 6b2015b0 <_get_decomposition>
-6b20166c: 83 c4 10 add $0x10,%esp
-6b20166f: 89 45 f4 mov %eax,0xfffffff4(%ebp)
-6b201672: 83 7d f4 00 cmpl $0x0,0xfffffff4(%ebp)
-6b201676: 74 1b je 6b201693 <_get_decomposition+0xe3>
-6b201678: 8b 45 f4 mov 0xfffffff4(%ebp),%eax
-6b20167b: 8d 0c 00 lea (%eax,%eax,1),%ecx
-6b20167e: 8b 55 0c mov 0xc(%ebp),%edx
-6b201681: 8b 45 f8 mov 0xfffffff8(%ebp),%eax
-6b201684: 83 c0 02 add $0x2,%eax
-6b201687: 66 8b 00 mov (%eax),%ax
-6b20168a: 66 89 04 11 mov %ax,(%ecx,%edx,1)
-6b20168e: 8d 45 f4 lea 0xfffffff4(%ebp),%eax
-6b201691: ff 00 incl (%eax)
-6b201693: 8b 45 f4 mov 0xfffffff4(%ebp),%eax
-6b201696: 89 45 f0 mov %eax,0xfffffff0(%ebp)
-6b201699: 8b 45 f0 mov 0xfffffff0(%ebp),%eax
-6b20169c: c9 leave
-6b20169d: c3 ret
-
-6b20169e <_mbstowcs_sbcs_decompose>:
-6b20169e: 55 push %ebp
-6b20169f: 89 e5 mov %esp,%ebp
-6b2016a1: 83 ec 18 sub $0x18,%esp
-6b2016a4: 8b 45 08 mov 0x8(%ebp),%eax
-6b2016a7: 8b 40 10 mov 0x10(%eax),%eax
-6b2016aa: 89 45 fc mov %eax,0xfffffffc(%ebp)
-6b2016ad: 83 7d 18 00 cmpl $0x0,0x18(%ebp)
-6b2016b1: 75 53 jne 6b201706 <_mbstowcs_sbcs_decompose+0x68>
-6b2016b3: c7 45 f8 00 00 00 00 movl $0x0,0xfffffff8(%ebp)
-6b2016ba: 83 7d 10 00 cmpl $0x0,0x10(%ebp)
-6b2016be: 74 3b je 6b2016fb <_mbstowcs_sbcs_decompose+0x5d>
-6b2016c0: 6a 04 push $0x4
-6b2016c2: 8d 45 f0 lea 0xfffffff0(%ebp),%eax
-6b2016c5: 50 push %eax
-6b2016c6: 8b 45 0c mov 0xc(%ebp),%eax
-6b2016c9: 8a 00 mov (%eax),%al
-6b2016cb: 25 ff 00 00 00 and $0xff,%eax
-6b2016d0: 8d 14 00 lea (%eax,%eax,1),%edx
-6b2016d3: 8b 45 fc mov 0xfffffffc(%ebp),%eax
-6b2016d6: 66 8b 04 02 mov (%edx,%eax,1),%ax
-6b2016da: 25 ff ff 00 00 and $0xffff,%eax
-6b2016df: 50 push %eax
-6b2016e0: e8 cb fe ff ff call 6b2015b0 <_get_decomposition>
-6b2016e5: 83 c4 0c add $0xc,%esp
-6b2016e8: 89 c2 mov %eax,%edx
-6b2016ea: 8d 45 f8 lea 0xfffffff8(%ebp),%eax
-6b2016ed: 01 10 add %edx,(%eax)
-6b2016ef: 8d 45 10 lea 0x10(%ebp),%eax
-6b2016f2: ff 08 decl (%eax)
-6b2016f4: 8d 45 0c lea 0xc(%ebp),%eax
-6b2016f7: ff 00 incl (%eax)
-6b2016f9: eb bf jmp 6b2016ba <_mbstowcs_sbcs_decompose+0x1c>
-6b2016fb: 8b 45 f8 mov 0xfffffff8(%ebp),%eax
-6b2016fe: 89 45 e8 mov %eax,0xffffffe8(%ebp)
-6b201701: e9 80 00 00 00 jmp 6b201786 <_mbstowcs_sbcs_decompose+0xe8>
-6b201706: 8b 45 18 mov 0x18(%ebp),%eax
-6b201709: 89 45 f8 mov %eax,0xfffffff8(%ebp)
-6b20170c: 83 7d 10 00 cmpl $0x0,0x10(%ebp)
-6b201710: 74 58 je 6b20176a <_mbstowcs_sbcs_decompose+0xcc>
-6b201712: 83 7d f8 00 cmpl $0x0,0xfffffff8(%ebp)
-6b201716: 74 52 je 6b20176a <_mbstowcs_sbcs_decompose+0xcc>
-6b201718: ff 75 f8 pushl 0xfffffff8(%ebp)
-6b20171b: ff 75 14 pushl 0x14(%ebp)
-6b20171e: 8b 45 0c mov 0xc(%ebp),%eax
-6b201721: 8a 00 mov (%eax),%al
-6b201723: 25 ff 00 00 00 and $0xff,%eax
-6b201728: 8d 14 00 lea (%eax,%eax,1),%edx
-6b20172b: 8b 45 fc mov 0xfffffffc(%ebp),%eax
-6b20172e: 66 8b 04 02 mov (%edx,%eax,1),%ax
-6b201732: 25 ff ff 00 00 and $0xffff,%eax
-6b201737: 50 push %eax
-6b201738: e8 73 fe ff ff call 6b2015b0 <_get_decomposition>
-6b20173d: 83 c4 0c add $0xc,%esp
-6b201740: 89 45 ec mov %eax,0xffffffec(%ebp)
-6b201743: 83 7d ec 00 cmpl $0x0,0xffffffec(%ebp)
-6b201747: 75 02 jne 6b20174b <_mbstowcs_sbcs_decompose+0xad>
-6b201749: eb 1f jmp 6b20176a <_mbstowcs_sbcs_decompose+0xcc>
-6b20174b: 8b 55 ec mov 0xffffffec(%ebp),%edx
-6b20174e: 8d 45 f8 lea 0xfffffff8(%ebp),%eax
-6b201751: 29 10 sub %edx,(%eax)
-6b201753: 8b 45 ec mov 0xffffffec(%ebp),%eax
-6b201756: 8d 14 00 lea (%eax,%eax,1),%edx
-6b201759: 8d 45 14 lea 0x14(%ebp),%eax
-6b20175c: 01 10 add %edx,(%eax)
-6b20175e: 8d 45 10 lea 0x10(%ebp),%eax
-6b201761: ff 08 decl (%eax)
-6b201763: 8d 45 0c lea 0xc(%ebp),%eax
-6b201766: ff 00 incl (%eax)
-6b201768: eb a2 jmp 6b20170c <_mbstowcs_sbcs_decompose+0x6e>
[truncated at 1000 lines; 11129 more skipped]