653fd9:	e8 76 af df ff       	call   0x44ef54
653fde:	50                   	push   %eax
653fdf:	e8 14 3b db ff       	call   0x407af8
653fe4:	8b 45 fc             	mov    -0x4(%ebp),%eax
653fe7:	3b 45 f8             	cmp    -0x8(%ebp),%eax
653fea:	0f 95 c0             	setne  %al
653fed:	5b                   	pop    %ebx
653fee:	59                   	pop    %ecx
653fef:	59                   	pop    %ecx
653ff0:	5d                   	pop    %ebp
653ff1:	c3                   	ret
653ff2:	8b c0                	mov    %eax,%eax
653ff4:	55                   	push   %ebp
653ff5:	8b ec                	mov    %esp,%ebp
653ff7:	83 c4 f8             	add    $0xfffffff8,%esp
653ffa:	8b 45 08             	mov    0x8(%ebp),%eax
653ffd:	8b 40 d4             	mov    -0x2c(%eax),%eax
654000:	50                   	push   %eax
654001:	8b 45 08             	mov    0x8(%ebp),%eax
654004:	8b 48 a4             	mov    -0x5c(%eax),%ecx
654007:	8b 45 08             	mov    0x8(%ebp),%eax
65400a:	8d 50 98             	lea    -0x68(%eax),%edx
65400d:	8b 45 08             	mov    0x8(%ebp),%eax
654010:	8b 40 f8             	mov    -0x8(%eax),%eax
654013:	e8 80 e2 ff ff       	call   0x652298
654018:	8b 45 08             	mov    0x8(%ebp),%eax
65401b:	8b 40 f8             	mov    -0x8(%eax),%eax
65401e:	8b 80 1c 02 00 00    	mov    0x21c(%eax),%eax
654024:	48                   	dec    %eax
654025:	8b 55 08             	mov    0x8(%ebp),%edx
654028:	89 42 90             	mov    %eax,-0x70(%edx)
65402b:	8b 45 08             	mov    0x8(%ebp),%eax
65402e:	8b 40 f8             	mov    -0x8(%eax),%eax
654031:	8b 80 4c 02 00 00    	mov    0x24c(%eax),%eax
654037:	48                   	dec    %eax
654038:	8b 55 08             	mov    0x8(%ebp),%edx
65403b:	89 42 94             	mov    %eax,-0x6c(%edx)
65403e:	8d 45 f8             	lea    -0x8(%ebp),%eax
654041:	50                   	push   %eax
654042:	8b 45 08             	mov    0x8(%ebp),%eax
654045:	8d 48 98             	lea    -0x68(%eax),%ecx
654048:	8b 45 08             	mov    0x8(%ebp),%eax
65404b:	8d 50 90             	lea    -0x70(%eax),%edx
65404e:	8b 45 08             	mov    0x8(%ebp),%eax
654051:	8b 40 f8             	mov    -0x8(%eax),%eax
654054:	e8 f3 e3 ff ff       	call   0x65244c
654059:	8b 45 08             	mov    0x8(%ebp),%eax
65405c:	8b 55 f8             	mov    -0x8(%ebp),%edx
65405f:	89 50 90             	mov    %edx,-0x70(%eax)
654062:	8b 55 fc             	mov    -0x4(%ebp),%edx
654065:	89 50 94             	mov    %edx,-0x6c(%eax)
654068:	59                   	pop    %ecx
654069:	59                   	pop    %ecx
65406a:	5d                   	pop    %ebp
65406b:	c3                   	ret
65406c:	55                   	push   %ebp
65406d:	8b ec                	mov    %esp,%ebp
65406f:	51                   	push   %ecx
654070:	53                   	push   %ebx
654071:	56                   	push   %esi
654072:	57                   	push   %edi
654073:	89 4d fc             	mov    %ecx,-0x4(%ebp)
654076:	8b fa                	mov    %edx,%edi
654078:	8b d8                	mov    %eax,%ebx
65407a:	8b 75 0c             	mov    0xc(%ebp),%esi
65407d:	8b 45 10             	mov    0x10(%ebp),%eax
654080:	50                   	push   %eax
654081:	e8 6e ff ff ff       	call   0x653ff4
654086:	59                   	pop    %ecx
654087:	8b 03                	mov    (%ebx),%eax
654089:	3b 45 08             	cmp    0x8(%ebp),%eax
65408c:	7e 1d                	jle    0x6540ab
65408e:	6a ff                	push   $0xffffffff
654090:	6a 7f                	push   $0x7f
654092:	6a 00                	push   $0x0
654094:	0f b7 c6             	movzwl %si,%eax
654097:	50                   	push   %eax
654098:	8b 45 10             	mov    0x10(%ebp),%eax
65409b:	8b 40 f8             	mov    -0x8(%eax),%eax
65409e:	e8 b1 ae df ff       	call   0x44ef54
6540a3:	50                   	push   %eax
6540a4:	e8 0f 3d db ff       	call   0x407db8
6540a9:	eb 1b                	jmp    0x6540c6
6540ab:	6a ff                	push   $0xffffffff
6540ad:	6a 00                	push   $0x0
6540af:	6a 00                	push   $0x0
6540b1:	0f b7 c6             	movzwl %si,%eax
6540b4:	50                   	push   %eax
6540b5:	8b 45 10             	mov    0x10(%ebp),%eax
6540b8:	8b 40 f8             	mov    -0x8(%eax),%eax
6540bb:	e8 94 ae df ff       	call   0x44ef54
6540c0:	50                   	push   %eax
6540c1:	e8 f2 3c db ff       	call   0x407db8
6540c6:	8b 07                	mov    (%edi),%eax
6540c8:	3b 03                	cmp    (%ebx),%eax
6540ca:	7e 11                	jle    0x6540dd
6540cc:	8b 45 10             	mov    0x10(%ebp),%eax
6540cf:	50                   	push   %eax
6540d0:	e8 8b fe ff ff       	call   0x653f60
6540d5:	59                   	pop    %ecx
6540d6:	8b 03                	mov    (%ebx),%eax
6540d8:	8b 55 fc             	mov    -0x4(%ebp),%edx
6540db:	89 02                	mov    %eax,(%edx)
6540dd:	5f                   	pop    %edi
6540de:	5e                   	pop    %esi
6540df:	5b                   	pop    %ebx
6540e0:	59                   	pop    %ecx
6540e1:	5d                   	pop    %ebp
6540e2:	c2 08 00             	ret    $0x8
6540e5:	8d 40 00             	lea    0x0(%eax),%eax
6540e8:	55                   	push   %ebp
6540e9:	8b ec                	mov    %esp,%ebp
6540eb:	53                   	push   %ebx
6540ec:	8b 45 08             	mov    0x8(%ebp),%eax
6540ef:	8a 40 87             	mov    -0x79(%eax),%al
6540f2:	2c 01                	sub    $0x1,%al
6540f4:	74 04                	je     0x6540fa
6540f6:	2c 02                	sub    $0x2,%al
6540f8:	75 7c                	jne    0x654176
6540fa:	8b 45 08             	mov    0x8(%ebp),%eax
6540fd:	8b 40 f8             	mov    -0x8(%eax),%eax
654100:	83 b8 1c 02 00 00 01 	cmpl   $0x1,0x21c(%eax)
654107:	75 3c                	jne    0x654145
654109:	8b 45 08             	mov    0x8(%ebp),%eax
65410c:	8b 40 f8             	mov    -0x8(%eax),%eax
65410f:	33 d2                	xor    %edx,%edx
654111:	e8 72 11 00 00       	call   0x655288
654116:	8b d8                	mov    %eax,%ebx
654118:	8b 45 08             	mov    0x8(%ebp),%eax
65411b:	8b 40 f8             	mov    -0x8(%eax),%eax
65411e:	e8 ad 40 df ff       	call   0x4481d0
654123:	2b d8                	sub    %eax,%ebx
654125:	85 db                	test   %ebx,%ebx
654127:	7d 02                	jge    0x65412b
654129:	33 db                	xor    %ebx,%ebx
65412b:	6a ff                	push   $0xffffffff
65412d:	53                   	push   %ebx
65412e:	6a 00                	push   $0x0
654130:	6a 00                	push   $0x0
654132:	8b 45 08             	mov    0x8(%ebp),%eax
654135:	8b 40 f8             	mov    -0x8(%eax),%eax
654138:	e8 17 ae df ff       	call   0x44ef54
65413d:	50                   	push   %eax
65413e:	e8 75 3c db ff       	call   0x407db8
654143:	eb 31                	jmp    0x654176
654145:	8b 45 08             	mov    0x8(%ebp),%eax
654148:	50                   	push   %eax
654149:	6a 00                	push   $0x0
65414b:	8b 45 08             	mov    0x8(%ebp),%eax
65414e:	8b 40 f8             	mov    -0x8(%eax),%eax
654151:	8b 80 38 02 00 00    	mov    0x238(%eax),%eax
654157:	50                   	push   %eax
654158:	8b 45 08             	mov    0x8(%ebp),%eax
65415b:	8b 40 f8             	mov    -0x8(%eax),%eax
65415e:	8d 88 58 02 00 00    	lea    0x258(%eax),%ecx
654164:	8b 45 08             	mov    0x8(%ebp),%eax
654167:	8d 50 88             	lea    -0x78(%eax),%edx
65416a:	8b 45 08             	mov    0x8(%ebp),%eax
65416d:	83 c0 90             	add    $0xffffff90,%eax
654170:	e8 f7 fe ff ff       	call   0x65406c
654175:	59                   	pop    %ecx
654176:	5b                   	pop    %ebx
654177:	5d                   	pop    %ebp
654178:	c3                   	ret
654179:	8d 40 00             	lea    0x0(%eax),%eax
65417c:	55                   	push   %ebp
65417d:	8b ec                	mov    %esp,%ebp
65417f:	8b 45 08             	mov    0x8(%ebp),%eax
654182:	8a 40 87             	mov    -0x79(%eax),%al
654185:	04 fe                	add    $0xfe,%al
654187:	2c 02                	sub    $0x2,%al
654189:	73 31                	jae    0x6541bc
65418b:	8b 45 08             	mov    0x8(%ebp),%eax
65418e:	50                   	push   %eax
65418f:	6a 01                	push   $0x1
654191:	8b 45 08             	mov    0x8(%ebp),%eax
654194:	8b 40 f8             	mov    -0x8(%eax),%eax
654197:	8b 80 3c 02 00 00    	mov    0x23c(%eax),%eax
65419d:	50                   	push   %eax
65419e:	8b 45 08             	mov    0x8(%ebp),%eax
6541a1:	8b 40 f8             	mov    -0x8(%eax),%eax
6541a4:	8d 88 5c 02 00 00    	lea    0x25c(%eax),%ecx
6541aa:	8b 45 08             	mov    0x8(%ebp),%eax
6541ad:	8d 50 8c             	lea    -0x74(%eax),%edx
6541b0:	8b 45 08             	mov    0x8(%ebp),%eax
6541b3:	83 c0 94             	add    $0xffffff94,%eax
6541b6:	e8 b1 fe ff ff       	call   0x65406c
6541bb:	59                   	pop    %ecx
6541bc:	5d                   	pop    %ebp
6541bd:	c3                   	ret
6541be:	8b c0                	mov    %eax,%eax
6541c0:	55                   	push   %ebp
6541c1:	8b ec                	mov    %esp,%ebp
6541c3:	83 c4 84             	add    $0xffffff84,%esp
6541c6:	89 45 f8             	mov    %eax,-0x8(%ebp)
6541c9:	8b 45 f8             	mov    -0x8(%ebp),%eax
6541cc:	80 b8 54 02 00 00 00 	cmpb   $0x0,0x254(%eax)
6541d3:	0f 84 2b 01 00 00    	je     0x654304
6541d9:	8b 45 f8             	mov    -0x8(%ebp),%eax
6541dc:	e8 77 b0 df ff       	call   0x44f258
6541e1:	84 c0                	test   %al,%al
6541e3:	0f 84 1b 01 00 00    	je     0x654304
6541e9:	8b 45 f8             	mov    -0x8(%ebp),%eax
6541ec:	80 b8 a6 01 00 00 00 	cmpb   $0x0,0x1a6(%eax)
6541f3:	0f 84 0b 01 00 00    	je     0x654304
6541f9:	8b 45 f8             	mov    -0x8(%ebp),%eax
6541fc:	e8 cf 3f df ff       	call   0x4481d0
654201:	89 45 a4             	mov    %eax,-0x5c(%ebp)
654204:	8b 45 f8             	mov    -0x8(%ebp),%eax
654207:	e8 08 40 df ff       	call   0x448214
65420c:	89 45 d4             	mov    %eax,-0x2c(%ebp)
65420f:	55                   	push   %ebp
654210:	33 c0                	xor    %eax,%eax
654212:	e8 6d fd ff ff       	call   0x653f84
654217:	59                   	pop    %ecx
654218:	84 c0                	test   %al,%al
65421a:	74 0a                	je     0x654226
65421c:	6a 03                	push   $0x3
65421e:	e8 fd 38 db ff       	call   0x407b20
654223:	01 45 d4             	add    %eax,-0x2c(%ebp)
654226:	55                   	push   %ebp
654227:	66 b8 01 00          	mov    $0x1,%ax
65422b:	e8 54 fd ff ff       	call   0x653f84
654230:	59                   	pop    %ecx
654231:	84 c0                	test   %al,%al
654233:	74 0a                	je     0x65423f
654235:	6a 02                	push   $0x2
654237:	e8 e4 38 db ff       	call   0x407b20
65423c:	01 45 a4             	add    %eax,-0x5c(%ebp)
65423f:	8b 45 f8             	mov    -0x8(%ebp),%eax
654242:	8b 90 58 02 00 00    	mov    0x258(%eax),%edx
654248:	89 55 88             	mov    %edx,-0x78(%ebp)
65424b:	8b 90 5c 02 00 00    	mov    0x25c(%eax),%edx
654251:	89 55 8c             	mov    %edx,-0x74(%ebp)
654254:	8b 45 f8             	mov    -0x8(%ebp),%eax
654257:	8a 80 54 02 00 00    	mov    0x254(%eax),%al
65425d:	88 45 87             	mov    %al,-0x79(%ebp)
654260:	8b 45 f8             	mov    -0x8(%ebp),%eax
654263:	c6 80 54 02 00 00 00 	movb   $0x0,0x254(%eax)
65426a:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
65426e:	33 c0                	xor    %eax,%eax
654270:	55                   	push   %ebp
654271:	68 ce 42 65 00       	push   $0x6542ce
654276:	64 ff 30             	push   %fs:(%eax)
654279:	64 89 20             	mov    %esp,%fs:(%eax)
65427c:	55                   	push   %ebp
65427d:	e8 66 fe ff ff       	call   0x6540e8
654282:	59                   	pop    %ecx
654283:	8b 45 f8             	mov    -0x8(%ebp),%eax
654286:	e8 89 3f df ff       	call   0x448214
65428b:	89 45 d4             	mov    %eax,-0x2c(%ebp)
65428e:	55                   	push   %ebp
65428f:	e8 e8 fe ff ff       	call   0x65417c
654294:	59                   	pop    %ecx
654295:	8b 45 f8             	mov    -0x8(%ebp),%eax
654298:	e8 33 3f df ff       	call   0x4481d0
65429d:	3b 45 a4             	cmp    -0x5c(%ebp),%eax
6542a0:	74 12                	je     0x6542b4
6542a2:	8b 45 f8             	mov    -0x8(%ebp),%eax
6542a5:	e8 26 3f df ff       	call   0x4481d0
6542aa:	89 45 a4             	mov    %eax,-0x5c(%ebp)
6542ad:	55                   	push   %ebp
6542ae:	e8 35 fe ff ff       	call   0x6540e8
6542b3:	59                   	pop    %ecx
6542b4:	33 c0                	xor    %eax,%eax
6542b6:	5a                   	pop    %edx
6542b7:	59                   	pop    %ecx
6542b8:	59                   	pop    %ecx
6542b9:	64 89 10             	mov    %edx,%fs:(%eax)
6542bc:	68 d5 42 65 00       	push   $0x6542d5
6542c1:	8b 45 f8             	mov    -0x8(%ebp),%eax
6542c4:	8a 55 87             	mov    -0x79(%ebp),%dl
6542c7:	88 90 54 02 00 00    	mov    %dl,0x254(%eax)
6542cd:	c3                   	ret
6542ce:	e9 39 ff da ff       	jmp    0x40420c
6542d3:	eb ec                	jmp    0x6542c1
6542d5:	8b 45 f8             	mov    -0x8(%ebp),%eax
6542d8:	e8 37 fb ff ff       	call   0x653e14
6542dd:	8b 45 f8             	mov    -0x8(%ebp),%eax
6542e0:	8b 80 58 02 00 00    	mov    0x258(%eax),%eax
6542e6:	3b 45 88             	cmp    -0x78(%ebp),%eax
6542e9:	75 0e                	jne    0x6542f9
6542eb:	8b 45 f8             	mov    -0x8(%ebp),%eax
6542ee:	8b 80 5c 02 00 00    	mov    0x25c(%eax),%eax
6542f4:	3b 45 8c             	cmp    -0x74(%ebp),%eax
6542f7:	74 0b                	je     0x654304
6542f9:	8d 55 88             	lea    -0x78(%ebp),%edx
6542fc:	8b 45 f8             	mov    -0x8(%ebp),%eax
6542ff:	e8 10 fa ff ff       	call   0x653d14
654304:	8b e5                	mov    %ebp,%esp
654306:	5d                   	pop    %ebp
654307:	c3                   	ret
654308:	8b c8                	mov    %eax,%ecx
65430a:	b2 01                	mov    $0x1,%dl
65430c:	a1 04 e8 64 00       	mov    0x64e804,%eax
654311:	e8 fe be ff ff       	call   0x650214
654316:	c3                   	ret
654317:	90                   	nop
654318:	53                   	push   %ebx
654319:	56                   	push   %esi
65431a:	8b f2                	mov    %edx,%esi
65431c:	8b d8                	mov    %eax,%ebx
65431e:	8b d6                	mov    %esi,%edx
654320:	8b c3                	mov    %ebx,%eax
654322:	e8 51 7b df ff       	call   0x44be78
654327:	81 4e 04 00 00 01 00 	orl    $0x10000,0x4(%esi)
65432e:	8a 83 54 02 00 00    	mov    0x254(%ebx),%al
654334:	04 fe                	add    $0xfe,%al
654336:	2c 02                	sub    $0x2,%al
654338:	73 07                	jae    0x654341
65433a:	81 4e 04 00 00 20 00 	orl    $0x200000,0x4(%esi)
654341:	8a 83 54 02 00 00    	mov    0x254(%ebx),%al
654347:	2c 01                	sub    $0x1,%al
654349:	74 04                	je     0x65434f
65434b:	2c 02                	sub    $0x2,%al
65434d:	75 07                	jne    0x654356
65434f:	81 4e 04 00 00 10 00 	orl    $0x100000,0x4(%esi)
654356:	c7 46 24 08 00 00 00 	movl   $0x8,0x24(%esi)
65435d:	80 bb 18 02 00 00 01 	cmpb   $0x1,0x218(%ebx)
654364:	75 2a                	jne    0x654390
654366:	a1 a4 6e 6a 00       	mov    0x6a6ea4,%eax
65436b:	80 38 00             	cmpb   $0x0,(%eax)
65436e:	74 19                	je     0x654389
654370:	80 bb a5 01 00 00 00 	cmpb   $0x0,0x1a5(%ebx)
654377:	74 10                	je     0x654389
654379:	81 66 04 ff ff 7f ff 	andl   $0xff7fffff,0x4(%esi)
654380:	81 4e 08 00 02 00 00 	orl    $0x200,0x8(%esi)
654387:	eb 07                	jmp    0x654390
654389:	81 4e 04 00 00 80 00 	orl    $0x800000,0x4(%esi)
654390:	5e                   	pop    %esi
654391:	5b                   	pop    %ebx
654392:	c3                   	ret
654393:	90                   	nop
654394:	55                   	push   %ebp
654395:	8b ec                	mov    %esp,%ebp
654397:	8b 45 08             	mov    0x8(%ebp),%eax
65439a:	8d 50 a0             	lea    -0x60(%eax),%edx
65439d:	8b 45 08             	mov    0x8(%ebp),%eax
6543a0:	8b 40 9c             	mov    -0x64(%eax),%eax
6543a3:	e8 6c de ff ff       	call   0x652214
6543a8:	8b 45 08             	mov    0x8(%ebp),%eax
6543ab:	8b 40 b0             	mov    -0x50(%eax),%eax
6543ae:	8b 55 08             	mov    0x8(%ebp),%edx
6543b1:	8b 52 9c             	mov    -0x64(%edx),%edx
6543b4:	2b 82 58 02 00 00    	sub    0x258(%edx),%eax
6543ba:	8b 55 08             	mov    0x8(%ebp),%edx
6543bd:	89 42 98             	mov    %eax,-0x68(%edx)
6543c0:	8b 45 08             	mov    0x8(%ebp),%eax
6543c3:	83 78 98 01          	cmpl   $0x1,-0x68(%eax)
6543c7:	7d 0a                	jge    0x6543d3