45ffc3:	85 c9                	test   %ecx,%ecx
45ffc5:	7e 06                	jle    0x45ffcd
45ffc7:	8b 40 0c             	mov    0xc(%eax),%eax
45ffca:	49                   	dec    %ecx
45ffcb:	75 fa                	jne    0x45ffc7
45ffcd:	8b 40 08             	mov    0x8(%eax),%eax
45ffd0:	eb 03                	jmp    0x45ffd5
45ffd2:	83 c8 ff             	or     $0xffffffff,%eax
45ffd5:	5d                   	pop    %ebp
45ffd6:	c2 04 00             	ret    $0x4
45ffd9:	55                   	push   %ebp
45ffda:	8b ec                	mov    %esp,%ebp
45ffdc:	8b 4d 08             	mov    0x8(%ebp),%ecx
45ffdf:	3b 0d b0 72 4c 00    	cmp    0x4c72b0,%ecx
45ffe5:	7d 18                	jge    0x45ffff
45ffe7:	85 c9                	test   %ecx,%ecx
45ffe9:	78 14                	js     0x45ffff
45ffeb:	a1 ac 72 4c 00       	mov    0x4c72ac,%eax
45fff0:	ff 34 88             	push   (%eax,%ecx,4)
45fff3:	8b 4d 0c             	mov    0xc(%ebp),%ecx
45fff6:	e8 ac 81 fa ff       	call   0x4081a7
45fffb:	b0 01                	mov    $0x1,%al
45fffd:	eb 0a                	jmp    0x460009
45ffff:	8b 4d 0c             	mov    0xc(%ebp),%ecx
460002:	e8 e5 7e fa ff       	call   0x407eec
460007:	32 c0                	xor    %al,%al
460009:	5d                   	pop    %ebp
46000a:	c2 08 00             	ret    $0x8
46000d:	55                   	push   %ebp
46000e:	8b ec                	mov    %esp,%ebp
460010:	83 ec 1c             	sub    $0x1c,%esp
460013:	8b 55 08             	mov    0x8(%ebp),%edx
460016:	53                   	push   %ebx
460017:	56                   	push   %esi
460018:	57                   	push   %edi
460019:	6a 20                	push   $0x20
46001b:	5e                   	pop    %esi
46001c:	6a 09                	push   $0x9
46001e:	33 db                	xor    %ebx,%ebx
460020:	89 4d f8             	mov    %ecx,-0x8(%ebp)
460023:	5f                   	pop    %edi
460024:	8b c3                	mov    %ebx,%eax
460026:	89 7d f4             	mov    %edi,-0xc(%ebp)
460029:	0f b7 0c 42          	movzwl (%edx,%eax,2),%ecx
46002d:	66 3b ce             	cmp    %si,%cx
460030:	74 05                	je     0x460037
460032:	66 3b cf             	cmp    %di,%cx
460035:	75 03                	jne    0x46003a
460037:	40                   	inc    %eax
460038:	eb ef                	jmp    0x460029
46003a:	0f b7 34 42          	movzwl (%edx,%eax,2),%esi
46003e:	6a 22                	push   $0x22
460040:	59                   	pop    %ecx
460041:	66 3b f1             	cmp    %cx,%si
460044:	74 08                	je     0x46004e
460046:	6a 27                	push   $0x27
460048:	59                   	pop    %ecx
460049:	66 3b f1             	cmp    %cx,%si
46004c:	75 06                	jne    0x460054
46004e:	c6 45 0b 01          	movb   $0x1,0xb(%ebp)
460052:	eb 0f                	jmp    0x460063
460054:	83 fe 3c             	cmp    $0x3c,%esi
460057:	0f 85 08 01 00 00    	jne    0x460165
46005d:	6a 3e                	push   $0x3e
46005f:	59                   	pop    %ecx
460060:	88 5d 0b             	mov    %bl,0xb(%ebp)
460063:	8b 75 0c             	mov    0xc(%ebp),%esi
460066:	40                   	inc    %eax
460067:	89 5d fc             	mov    %ebx,-0x4(%ebp)
46006a:	0f b7 3c 42          	movzwl (%edx,%eax,2),%edi
46006e:	66 3b f9             	cmp    %cx,%di
460071:	74 19                	je     0x46008c
460073:	66 85 ff             	test   %di,%di
460076:	74 0f                	je     0x460087
460078:	66 89 3c 5e          	mov    %di,(%esi,%ebx,2)
46007c:	43                   	inc    %ebx
46007d:	40                   	inc    %eax
46007e:	0f b7 3c 42          	movzwl (%edx,%eax,2),%edi
460082:	66 3b f9             	cmp    %cx,%di
460085:	75 ec                	jne    0x460073
460087:	89 5d fc             	mov    %ebx,-0x4(%ebp)
46008a:	33 db                	xor    %ebx,%ebx
46008c:	66 39 0c 42          	cmp    %cx,(%edx,%eax,2)
460090:	0f 85 cf 00 00 00    	jne    0x460165
460096:	6a 20                	push   $0x20
460098:	5f                   	pop    %edi
460099:	40                   	inc    %eax
46009a:	0f b7 0c 42          	movzwl (%edx,%eax,2),%ecx
46009e:	66 3b cf             	cmp    %di,%cx
4600a1:	74 f6                	je     0x460099
4600a3:	66 3b 4d f4          	cmp    -0xc(%ebp),%cx
4600a7:	74 f0                	je     0x460099
4600a9:	0f b7 04 42          	movzwl (%edx,%eax,2),%eax
4600ad:	66 85 c0             	test   %ax,%ax
4600b0:	74 09                	je     0x4600bb
4600b2:	83 f8 3b             	cmp    $0x3b,%eax
4600b5:	0f 85 aa 00 00 00    	jne    0x460165
4600bb:	8b 45 fc             	mov    -0x4(%ebp),%eax
4600be:	33 c9                	xor    %ecx,%ecx
4600c0:	56                   	push   %esi
4600c1:	66 89 0c 46          	mov    %cx,(%esi,%eax,2)
4600c5:	e8 f3 6f fa ff       	call   0x4070bd
4600ca:	56                   	push   %esi
4600cb:	e8 3a 70 fa ff       	call   0x40710a
4600d0:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
4600d3:	e8 ef 76 fa ff       	call   0x4077c7
4600d8:	80 7d 0b 00          	cmpb   $0x0,0xb(%ebp)
4600dc:	8b 45 f8             	mov    -0x8(%ebp),%eax
4600df:	8b 78 40             	mov    0x40(%eax),%edi
4600e2:	74 39                	je     0x46011d
4600e4:	8b ce                	mov    %esi,%ecx
4600e6:	e8 98 3d 00 00       	call   0x463e83
4600eb:	84 c0                	test   %al,%al
4600ed:	75 6a                	jne    0x460159
4600ef:	4f                   	dec    %edi
4600f0:	78 67                	js     0x460159
4600f2:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4600f5:	8b 43 3c             	mov    0x3c(%ebx),%eax
4600f8:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
4600fb:	ff 34 b8             	push   (%eax,%edi,4)
4600fe:	e8 a4 80 fa ff       	call   0x4081a7
460103:	56                   	push   %esi
460104:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
460107:	e8 ff 7c fa ff       	call   0x407e0b
46010c:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
46010f:	e8 5f 3d 00 00       	call   0x463e73
460114:	84 c0                	test   %al,%al
460116:	75 36                	jne    0x46014e
460118:	4f                   	dec    %edi
460119:	79 da                	jns    0x4600f5
46011b:	eb 3c                	jmp    0x460159
46011d:	85 ff                	test   %edi,%edi
46011f:	7e 38                	jle    0x460159
460121:	8b 40 3c             	mov    0x3c(%eax),%eax
460124:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
460127:	ff 34 98             	push   (%eax,%ebx,4)
46012a:	e8 78 80 fa ff       	call   0x4081a7
46012f:	56                   	push   %esi
460130:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
460133:	e8 d3 7c fa ff       	call   0x407e0b
460138:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
46013b:	e8 33 3d 00 00       	call   0x463e73
460140:	84 c0                	test   %al,%al
460142:	75 0a                	jne    0x46014e
460144:	8b 45 f8             	mov    -0x8(%ebp),%eax
460147:	43                   	inc    %ebx
460148:	3b df                	cmp    %edi,%ebx
46014a:	7c d5                	jl     0x460121
46014c:	eb 0b                	jmp    0x460159
46014e:	ff 75 e4             	push   -0x1c(%ebp)
460151:	56                   	push   %esi
460152:	e8 a5 2e fc ff       	call   0x422ffc
460157:	59                   	pop    %ecx
460158:	59                   	pop    %ecx
460159:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
46015c:	e8 03 59 fa ff       	call   0x405a64
460161:	b0 01                	mov    $0x1,%al
460163:	eb 02                	jmp    0x460167
460165:	32 c0                	xor    %al,%al
460167:	5f                   	pop    %edi
460168:	5e                   	pop    %esi
460169:	5b                   	pop    %ebx
46016a:	8b e5                	mov    %ebp,%esp
46016c:	5d                   	pop    %ebp
46016d:	c2 08 00             	ret    $0x8
460170:	56                   	push   %esi
460171:	8b f1                	mov    %ecx,%esi
460173:	ff 4e 08             	decl   0x8(%esi)
460176:	8b 56 08             	mov    0x8(%esi),%edx
460179:	8b 46 04             	mov    0x4(%esi),%eax
46017c:	8b 0c 90             	mov    (%eax,%edx,4),%ecx
46017f:	85 c9                	test   %ecx,%ecx
460181:	74 06                	je     0x460189
460183:	51                   	push   %ecx
460184:	e8 c1 69 ff ff       	call   0x456b4a
460189:	8b 4e 08             	mov    0x8(%esi),%ecx
46018c:	8b 46 04             	mov    0x4(%esi),%eax
46018f:	5e                   	pop    %esi
460190:	83 24 88 00          	andl   $0x0,(%eax,%ecx,4)
460194:	c3                   	ret
460195:	33 d2                	xor    %edx,%edx
460197:	33 c0                	xor    %eax,%eax
460199:	89 51 01             	mov    %edx,0x1(%ecx)
46019c:	66 89 51 05          	mov    %dx,0x5(%ecx)
4601a0:	89 41 06             	mov    %eax,0x6(%ecx)
4601a3:	8b c1                	mov    %ecx,%eax
4601a5:	c7 01 ff 00 00 00    	movl   $0xff,(%ecx)
4601ab:	66 89 51 04          	mov    %dx,0x4(%ecx)
4601af:	88 51 0a             	mov    %dl,0xa(%ecx)
4601b2:	c3                   	ret
4601b3:	55                   	push   %ebp
4601b4:	8b ec                	mov    %esp,%ebp
4601b6:	8b 55 08             	mov    0x8(%ebp),%edx
4601b9:	3b ca                	cmp    %edx,%ecx
4601bb:	74 22                	je     0x4601df
4601bd:	8a 02                	mov    (%edx),%al
4601bf:	88 01                	mov    %al,(%ecx)
4601c1:	8a 42 01             	mov    0x1(%edx),%al
4601c4:	88 41 01             	mov    %al,0x1(%ecx)
4601c7:	8a 42 03             	mov    0x3(%edx),%al
4601ca:	88 41 03             	mov    %al,0x3(%ecx)
4601cd:	8a 42 02             	mov    0x2(%edx),%al
4601d0:	88 41 02             	mov    %al,0x2(%ecx)
4601d3:	8a 42 04             	mov    0x4(%edx),%al
4601d6:	88 41 04             	mov    %al,0x4(%ecx)
4601d9:	8a 42 05             	mov    0x5(%edx),%al
4601dc:	88 41 05             	mov    %al,0x5(%ecx)
4601df:	8b c1                	mov    %ecx,%eax
4601e1:	5d                   	pop    %ebp
4601e2:	c2 04 00             	ret    $0x4
4601e5:	33 c0                	xor    %eax,%eax
4601e7:	39 41 20             	cmp    %eax,0x20(%ecx)
4601ea:	74 03                	je     0x4601ef
4601ec:	6a 02                	push   $0x2
4601ee:	58                   	pop    %eax
4601ef:	39 01                	cmp    %eax,(%ecx)
4601f1:	7d 03                	jge    0x4601f6
4601f3:	50                   	push   %eax
4601f4:	eb 02                	jmp    0x4601f8
4601f6:	ff 31                	push   (%ecx)
4601f8:	e8 55 14 00 00       	call   0x461652
4601fd:	c3                   	ret
4601fe:	33 c0                	xor    %eax,%eax
460200:	39 41 20             	cmp    %eax,0x20(%ecx)
460203:	74 03                	je     0x460208
460205:	6a 02                	push   $0x2
460207:	58                   	pop    %eax
460208:	39 41 04             	cmp    %eax,0x4(%ecx)
46020b:	7d 03                	jge    0x460210
46020d:	50                   	push   %eax
46020e:	eb 03                	jmp    0x460213
460210:	ff 71 04             	push   0x4(%ecx)
460213:	e8 3a 14 00 00       	call   0x461652
460218:	c3                   	ret
460219:	55                   	push   %ebp
46021a:	8b ec                	mov    %esp,%ebp
46021c:	81 ec 00 01 00 00    	sub    $0x100,%esp
460222:	33 c0                	xor    %eax,%eax
460224:	56                   	push   %esi
460225:	8b 75 08             	mov    0x8(%ebp),%esi
460228:	57                   	push   %edi
460229:	8b f9                	mov    %ecx,%edi
46022b:	89 06                	mov    %eax,(%esi)
46022d:	66 89 46 04          	mov    %ax,0x4(%esi)
460231:	39 47 20             	cmp    %eax,0x20(%edi)
460234:	0f 84 82 00 00 00    	je     0x4602bc
46023a:	8d 85 00 ff ff ff    	lea    -0x100(%ebp),%eax
460240:	50                   	push   %eax
460241:	ff 15 f8 f5 48 00    	call   *0x48f5f8
460247:	85 c0                	test   %eax,%eax
460249:	0f 84 52 01 00 00    	je     0x4603a1
46024f:	b8 80 00 00 00       	mov    $0x80,%eax
460254:	38 45 a0             	cmp    %al,-0x60(%ebp)
460257:	74 08                	je     0x460261
460259:	38 85 10 ff ff ff    	cmp    %al,-0xf0(%ebp)
46025f:	75 09                	jne    0x46026a
460261:	80 7f 1a 00          	cmpb   $0x0,0x1a(%edi)
460265:	75 03                	jne    0x46026a
460267:	c6 06 01             	movb   $0x1,(%esi)
46026a:	38 45 a1             	cmp    %al,-0x5f(%ebp)
46026d:	75 0a                	jne    0x460279
46026f:	80 7f 1b 00          	cmpb   $0x0,0x1b(%edi)
460273:	75 04                	jne    0x460279
460275:	c6 46 01 01          	movb   $0x1,0x1(%esi)
460279:	38 85 11 ff ff ff    	cmp    %al,-0xef(%ebp)
46027f:	75 0a                	jne    0x46028b
460281:	80 7f 1c 00          	cmpb   $0x0,0x1c(%edi)
460285:	75 04                	jne    0x46028b
460287:	c6 46 02 01          	movb   $0x1,0x2(%esi)
46028b:	38 85 12 ff ff ff    	cmp    %al,-0xee(%ebp)
460291:	75 0a                	jne    0x46029d
460293:	80 7f 1d 00          	cmpb   $0x0,0x1d(%edi)
460297:	75 04                	jne    0x46029d
460299:	c6 46 03 01          	movb   $0x1,0x3(%esi)
46029d:	38 85 5b ff ff ff    	cmp    %al,-0xa5(%ebp)
4602a3:	0f 85 f8 00 00 00    	jne    0x4603a1
4602a9:	80 7f 1e 00          	cmpb   $0x0,0x1e(%edi)
4602ad:	0f 85 ee 00 00 00    	jne    0x4603a1
4602b3:	c6 46 04 01          	movb   $0x1,0x4(%esi)
4602b7:	e9 e5 00 00 00       	jmp    0x4603a1
4602bc:	53                   	push   %ebx
4602bd:	68 a0 00 00 00       	push   $0xa0
4602c2:	ff 15 f0 f5 48 00    	call   *0x48f5f0
4602c8:	8b 1d fc f5 48 00    	mov    0x48f5fc,%ebx
4602ce:	b9 00 80 00 00       	mov    $0x8000,%ecx
4602d3:	66 85 c1             	test   %ax,%cx
4602d6:	75 11                	jne    0x4602e9
4602d8:	68 a0 00 00 00       	push   $0xa0
4602dd:	ff d3                	call   *%ebx
4602df:	b9 00 80 00 00       	mov    $0x8000,%ecx
4602e4:	66 85 c1             	test   %ax,%cx
4602e7:	74 09                	je     0x4602f2
4602e9:	80 7f 1a 00          	cmpb   $0x0,0x1a(%edi)
4602ed:	75 03                	jne    0x4602f2
4602ef:	c6 06 01             	movb   $0x1,(%esi)
4602f2:	68 a1 00 00 00       	push   $0xa1
4602f7:	ff 15 f0 f5 48 00    	call   *0x48f5f0
4602fd:	b9 00 80 00 00       	mov    $0x8000,%ecx
460302:	66 85 c1             	test   %ax,%cx
460305:	75 11                	jne    0x460318
460307:	68 a1 00 00 00       	push   $0xa1
46030c:	ff d3                	call   *%ebx
46030e:	b9 00 80 00 00       	mov    $0x8000,%ecx
460313:	66 85 c1             	test   %ax,%cx
460316:	74 0a                	je     0x460322
460318:	80 7f 1b 00          	cmpb   $0x0,0x1b(%edi)
46031c:	75 04                	jne    0x460322
46031e:	c6 46 01 01          	movb   $0x1,0x1(%esi)
460322:	6a 11                	push   $0x11
460324:	ff 15 f0 f5 48 00    	call   *0x48f5f0
46032a:	b9 00 80 00 00       	mov    $0x8000,%ecx
46032f:	66 85 c1             	test   %ax,%cx
460332:	75 0e                	jne    0x460342
460334:	6a 11                	push   $0x11
460336:	ff d3                	call   *%ebx
460338:	b9 00 80 00 00       	mov    $0x8000,%ecx
46033d:	66 85 c1             	test   %ax,%cx
460340:	74 0a                	je     0x46034c
460342:	80 7f 1c 00          	cmpb   $0x0,0x1c(%edi)
460346:	75 04                	jne    0x46034c
460348:	c6 46 02 01          	movb   $0x1,0x2(%esi)
46034c:	6a 12                	push   $0x12
46034e:	ff 15 f0 f5 48 00    	call   *0x48f5f0
460354:	b9 00 80 00 00       	mov    $0x8000,%ecx
460359:	66 85 c1             	test   %ax,%cx
46035c:	75 0e                	jne    0x46036c
46035e:	6a 12                	push   $0x12
460360:	ff d3                	call   *%ebx
460362:	b9 00 80 00 00       	mov    $0x8000,%ecx
460367:	66 85 c1             	test   %ax,%cx
46036a:	74 0a                	je     0x460376
46036c:	80 7f 1d 00          	cmpb   $0x0,0x1d(%edi)
460370:	75 04                	jne    0x460376
460372:	c6 46 03 01          	movb   $0x1,0x3(%esi)
460376:	6a 5b                	push   $0x5b
460378:	ff 15 f0 f5 48 00    	call   *0x48f5f0
46037e:	b9 00 80 00 00       	mov    $0x8000,%ecx
460383:	66 85 c1             	test   %ax,%cx
460386:	75 0e                	jne    0x460396
460388:	6a 5b                	push   $0x5b
46038a:	ff d3                	call   *%ebx
46038c:	b9 00 80 00 00       	mov    $0x8000,%ecx
460391:	66 85 c1             	test   %ax,%cx
460394:	74 0a                	je     0x4603a0
460396:	80 7f 1e 00          	cmpb   $0x0,0x1e(%edi)
46039a:	75 04                	jne    0x4603a0
46039c:	c6 46 04 01          	movb   $0x1,0x4(%esi)
4603a0:	5b                   	pop    %ebx
4603a1:	5f                   	pop    %edi
4603a2:	8b c6                	mov    %esi,%eax