51204f:	e8 1c f3 00 00       	call   0x521370
512054:	83 c4 08             	add    $0x8,%esp
512057:	83 c6 28             	add    $0x28,%esi
51205a:	8d 46 ec             	lea    -0x14(%esi),%eax
51205d:	3b c3                	cmp    %ebx,%eax
51205f:	72 e0                	jb     0x512041
512061:	5f                   	pop    %edi
512062:	5b                   	pop    %ebx
512063:	5e                   	pop    %esi
512064:	5d                   	pop    %ebp
512065:	c3                   	ret
512066:	83 c6 18             	add    $0x18,%esi
512069:	b8 00 24 00 00       	mov    $0x2400,%eax
51206e:	66 90                	xchg   %ax,%ax
512070:	66 85 46 f0          	test   %ax,-0x10(%esi)
512074:	74 0e                	je     0x512084
512076:	8d 46 e8             	lea    -0x18(%esi),%eax
512079:	50                   	push   %eax
51207a:	e8 91 8d 04 00       	call   0x55ae10
51207f:	83 c4 04             	add    $0x4,%esp
512082:	eb 17                	jmp    0x51209b
512084:	83 3e 00             	cmpl   $0x0,(%esi)
512087:	74 12                	je     0x51209b
512089:	ff 76 fc             	push   -0x4(%esi)
51208c:	57                   	push   %edi
51208d:	e8 de f2 00 00       	call   0x521370
512092:	83 c4 08             	add    $0x8,%esp
512095:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
51209b:	b8 80 00 00 00       	mov    $0x80,%eax
5120a0:	66 89 46 f0          	mov    %ax,-0x10(%esi)
5120a4:	83 c6 28             	add    $0x28,%esi
5120a7:	8d 46 e8             	lea    -0x18(%esi),%eax
5120aa:	3b c3                	cmp    %ebx,%eax
5120ac:	b8 00 24 00 00       	mov    $0x2400,%eax
5120b1:	72 bd                	jb     0x512070
5120b3:	5f                   	pop    %edi
5120b4:	5b                   	pop    %ebx
5120b5:	5e                   	pop    %esi
5120b6:	5d                   	pop    %ebp
5120b7:	c3                   	ret
5120b8:	cc                   	int3
5120b9:	cc                   	int3
5120ba:	cc                   	int3
5120bb:	cc                   	int3
5120bc:	cc                   	int3
5120bd:	cc                   	int3
5120be:	cc                   	int3
5120bf:	cc                   	int3
5120c0:	55                   	push   %ebp
5120c1:	8b ec                	mov    %esp,%ebp
5120c3:	8b 45 08             	mov    0x8(%ebp),%eax
5120c6:	8b 50 48             	mov    0x48(%eax),%edx
5120c9:	f6 42 1c 20          	testb  $0x20,0x1c(%edx)
5120cd:	74 43                	je     0x512112
5120cf:	8b 42 14             	mov    0x14(%edx),%eax
5120d2:	56                   	push   %esi
5120d3:	57                   	push   %edi
5120d4:	ff 48 78             	decl   0x78(%eax)
5120d7:	8b 88 88 00 00 00    	mov    0x88(%eax),%ecx
5120dd:	89 4a 10             	mov    %ecx,0x10(%edx)
5120e0:	8b 70 3c             	mov    0x3c(%eax),%esi
5120e3:	89 90 88 00 00 00    	mov    %edx,0x88(%eax)
5120e9:	ff 72 04             	push   0x4(%edx)
5120ec:	8b 4a 18             	mov    0x18(%edx),%ecx
5120ef:	8b 80 98 00 00 00    	mov    0x98(%eax),%eax
5120f5:	49                   	dec    %ecx
5120f6:	8b 3e                	mov    (%esi),%edi
5120f8:	99                   	cltd
5120f9:	52                   	push   %edx
5120fa:	50                   	push   %eax
5120fb:	6a 00                	push   $0x0
5120fd:	51                   	push   %ecx
5120fe:	e8 fd f9 0c 00       	call   0x5e1b00
512103:	52                   	push   %edx
512104:	50                   	push   %eax
512105:	8b 47 48             	mov    0x48(%edi),%eax
512108:	56                   	push   %esi
512109:	ff d0                	call   *%eax
51210b:	83 c4 10             	add    $0x10,%esp
51210e:	5f                   	pop    %edi
51210f:	5e                   	pop    %esi
512110:	5d                   	pop    %ebp
512111:	c3                   	ret
512112:	89 55 08             	mov    %edx,0x8(%ebp)
512115:	5d                   	pop    %ebp
512116:	e9 d5 24 02 00       	jmp    0x5345f0
51211b:	cc                   	int3
51211c:	cc                   	int3
51211d:	cc                   	int3
51211e:	cc                   	int3
51211f:	cc                   	int3
512120:	55                   	push   %ebp
512121:	8b ec                	mov    %esp,%ebp
512123:	8b 45 08             	mov    0x8(%ebp),%eax
512126:	56                   	push   %esi
512127:	8b 40 48             	mov    0x48(%eax),%eax
51212a:	50                   	push   %eax
51212b:	8b 70 14             	mov    0x14(%eax),%esi
51212e:	e8 bd 24 02 00       	call   0x5345f0
512133:	8b 86 d4 00 00 00    	mov    0xd4(%esi),%eax
512139:	83 c4 04             	add    $0x4,%esp
51213c:	83 78 0c 00          	cmpl   $0x0,0xc(%eax)
512140:	75 09                	jne    0x51214b
512142:	56                   	push   %esi
512143:	e8 a8 b2 ff ff       	call   0x50d3f0
512148:	83 c4 04             	add    $0x4,%esp
51214b:	5e                   	pop    %esi
51214c:	5d                   	pop    %ebp
51214d:	c3                   	ret
51214e:	cc                   	int3
51214f:	cc                   	int3
512150:	55                   	push   %ebp
512151:	8b ec                	mov    %esp,%ebp
512153:	51                   	push   %ecx
512154:	8b 45 08             	mov    0x8(%ebp),%eax
512157:	57                   	push   %edi
512158:	8b 7d 0c             	mov    0xc(%ebp),%edi
51215b:	8b 00                	mov    (%eax),%eax
51215d:	8b 4f 04             	mov    0x4(%edi),%ecx
512160:	89 4d fc             	mov    %ecx,-0x4(%ebp)
512163:	83 f9 03             	cmp    $0x3,%ecx
512166:	73 28                	jae    0x512190
512168:	68 fc c4 6b 00       	push   $0x6bc4fc
51216d:	68 af 08 01 00       	push   $0x108af
512172:	68 94 c4 6b 00       	push   $0x6bc494
512177:	68 78 c4 6b 00       	push   $0x6bc478
51217c:	6a 0b                	push   $0xb
51217e:	e8 5d de fc ff       	call   0x4dffe0
512183:	83 c4 14             	add    $0x14,%esp
512186:	b8 0b 00 00 00       	mov    $0xb,%eax
51218b:	5f                   	pop    %edi
51218c:	8b e5                	mov    %ebp,%esp
51218e:	5d                   	pop    %ebp
51218f:	c3                   	ret
512190:	56                   	push   %esi
512191:	ff 75 1c             	push   0x1c(%ebp)
512194:	ff 75 18             	push   0x18(%ebp)
512197:	ff 77 48             	push   0x48(%edi)
51219a:	50                   	push   %eax
51219b:	e8 10 07 02 00       	call   0x5328b0
5121a0:	8b f0                	mov    %eax,%esi
5121a2:	83 c4 10             	add    $0x10,%esp
5121a5:	89 75 0c             	mov    %esi,0xc(%ebp)
5121a8:	85 f6                	test   %esi,%esi
5121aa:	0f 85 d2 00 00 00    	jne    0x512282
5121b0:	8b 4d 18             	mov    0x18(%ebp),%ecx
5121b3:	53                   	push   %ebx
5121b4:	8b 5d 10             	mov    0x10(%ebp),%ebx
5121b7:	89 4f 04             	mov    %ecx,0x4(%edi)
5121ba:	80 fb 05             	cmp    $0x5,%bl
5121bd:	74 34                	je     0x5121f3
5121bf:	80 fb 01             	cmp    $0x1,%bl
5121c2:	74 2f                	je     0x5121f3
5121c4:	8b 47 38             	mov    0x38(%edi),%eax
5121c7:	8b 7d 08             	mov    0x8(%ebp),%edi
5121ca:	8b 00                	mov    (%eax),%eax
5121cc:	0f c8                	bswap  %eax
5121ce:	85 c0                	test   %eax,%eax
5121d0:	74 33                	je     0x512205
5121d2:	8d 55 0c             	lea    0xc(%ebp),%edx
5121d5:	52                   	push   %edx
5121d6:	51                   	push   %ecx
5121d7:	6a 04                	push   $0x4
5121d9:	50                   	push   %eax
5121da:	57                   	push   %edi
5121db:	e8 b0 e8 ff ff       	call   0x510a90
5121e0:	8b 75 0c             	mov    0xc(%ebp),%esi
5121e3:	83 c4 14             	add    $0x14,%esp
5121e6:	85 f6                	test   %esi,%esi
5121e8:	74 1b                	je     0x512205
5121ea:	5b                   	pop    %ebx
5121eb:	8b c6                	mov    %esi,%eax
5121ed:	5e                   	pop    %esi
5121ee:	5f                   	pop    %edi
5121ef:	8b e5                	mov    %ebp,%esp
5121f1:	5d                   	pop    %ebp
5121f2:	c3                   	ret
5121f3:	57                   	push   %edi
5121f4:	e8 47 4d 00 00       	call   0x516f40
5121f9:	8b f0                	mov    %eax,%esi
5121fb:	83 c4 04             	add    $0x4,%esp
5121fe:	85 f6                	test   %esi,%esi
512200:	75 7f                	jne    0x512281
512202:	8b 7d 08             	mov    0x8(%ebp),%edi
512205:	80 fb 01             	cmp    $0x1,%bl
512208:	74 75                	je     0x51227f
51220a:	6a 00                	push   $0x0
51220c:	8d 45 0c             	lea    0xc(%ebp),%eax
51220f:	50                   	push   %eax
512210:	ff 75 14             	push   0x14(%ebp)
512213:	57                   	push   %edi
512214:	e8 e7 49 fe ff       	call   0x4f6c00
512219:	83 c4 10             	add    $0x10,%esp
51221c:	85 c0                	test   %eax,%eax
51221e:	75 61                	jne    0x512281
512220:	8b 7d 0c             	mov    0xc(%ebp),%edi
512223:	ff 77 48             	push   0x48(%edi)
512226:	e8 15 17 02 00       	call   0x533940
51222b:	8b f0                	mov    %eax,%esi
51222d:	83 c4 04             	add    $0x4,%esp
512230:	85 f6                	test   %esi,%esi
512232:	74 12                	je     0x512246
512234:	57                   	push   %edi
512235:	e8 86 fe ff ff       	call   0x5120c0
51223a:	83 c4 04             	add    $0x4,%esp
51223d:	8b c6                	mov    %esi,%eax
51223f:	5b                   	pop    %ebx
512240:	5e                   	pop    %esi
512241:	5f                   	pop    %edi
512242:	8b e5                	mov    %ebp,%esp
512244:	5d                   	pop    %ebp
512245:	c3                   	ret
512246:	53                   	push   %ebx
512247:	ff 75 18             	push   0x18(%ebp)
51224a:	ff 75 fc             	push   -0x4(%ebp)
51224d:	57                   	push   %edi
51224e:	e8 7d 75 ff ff       	call   0x5097d0
512253:	8b f0                	mov    %eax,%esi
512255:	57                   	push   %edi
512256:	89 75 0c             	mov    %esi,0xc(%ebp)
512259:	e8 62 fe ff ff       	call   0x5120c0
51225e:	83 c4 14             	add    $0x14,%esp
512261:	85 f6                	test   %esi,%esi
512263:	75 1a                	jne    0x51227f
512265:	8d 45 0c             	lea    0xc(%ebp),%eax
512268:	50                   	push   %eax
512269:	ff 75 14             	push   0x14(%ebp)
51226c:	8b 45 08             	mov    0x8(%ebp),%eax
51226f:	53                   	push   %ebx
512270:	ff 75 18             	push   0x18(%ebp)
512273:	50                   	push   %eax
512274:	e8 17 e8 ff ff       	call   0x510a90
512279:	8b 75 0c             	mov    0xc(%ebp),%esi
51227c:	83 c4 14             	add    $0x14,%esp
51227f:	8b c6                	mov    %esi,%eax
512281:	5b                   	pop    %ebx
512282:	5e                   	pop    %esi
512283:	5f                   	pop    %edi
512284:	8b e5                	mov    %ebp,%esp
512286:	5d                   	pop    %ebp
512287:	c3                   	ret
512288:	cc                   	int3
512289:	cc                   	int3
51228a:	cc                   	int3
51228b:	cc                   	int3
51228c:	cc                   	int3
51228d:	cc                   	int3
51228e:	cc                   	int3
51228f:	cc                   	int3
512290:	55                   	push   %ebp
512291:	8b ec                	mov    %esp,%ebp
512293:	8b 4d 0c             	mov    0xc(%ebp),%ecx
512296:	56                   	push   %esi
512297:	8b 75 08             	mov    0x8(%ebp),%esi
51229a:	8b 51 04             	mov    0x4(%ecx),%edx
51229d:	8b 01                	mov    (%ecx),%eax
51229f:	85 d2                	test   %edx,%edx
5122a1:	74 04                	je     0x5122a7
5122a3:	89 02                	mov    %eax,(%edx)
5122a5:	eb 03                	jmp    0x5122aa
5122a7:	89 46 08             	mov    %eax,0x8(%esi)
5122aa:	8b 11                	mov    (%ecx),%edx
5122ac:	85 d2                	test   %edx,%edx
5122ae:	74 06                	je     0x5122b6
5122b0:	8b 41 04             	mov    0x4(%ecx),%eax
5122b3:	89 42 04             	mov    %eax,0x4(%edx)
5122b6:	8b 56 0c             	mov    0xc(%esi),%edx
5122b9:	85 d2                	test   %edx,%edx
5122bb:	74 13                	je     0x5122d0
5122bd:	8b 45 10             	mov    0x10(%ebp),%eax
5122c0:	39 4c c2 04          	cmp    %ecx,0x4(%edx,%eax,8)
5122c4:	8d 14 c2             	lea    (%edx,%eax,8),%edx
5122c7:	75 05                	jne    0x5122ce
5122c9:	8b 01                	mov    (%ecx),%eax
5122cb:	89 42 04             	mov    %eax,0x4(%edx)
5122ce:	ff 0a                	decl   (%edx)
5122d0:	51                   	push   %ecx
5122d1:	e8 ba 8a fd ff       	call   0x4ead90
5122d6:	83 c4 04             	add    $0x4,%esp
5122d9:	83 46 04 ff          	addl   $0xffffffff,0x4(%esi)
5122dd:	75 09                	jne    0x5122e8
5122df:	56                   	push   %esi
5122e0:	e8 fb b6 01 00       	call   0x52d9e0
5122e5:	83 c4 04             	add    $0x4,%esp
5122e8:	5e                   	pop    %esi
5122e9:	5d                   	pop    %ebp
5122ea:	c3                   	ret
5122eb:	cc                   	int3
5122ec:	cc                   	int3
5122ed:	cc                   	int3
5122ee:	cc                   	int3
5122ef:	cc                   	int3
5122f0:	55                   	push   %ebp
5122f1:	8b ec                	mov    %esp,%ebp
5122f3:	56                   	push   %esi
5122f4:	57                   	push   %edi
5122f5:	33 ff                	xor    %edi,%edi
5122f7:	80 3d 14 18 72 00 00 	cmpb   $0x0,0x721814
5122fe:	75 04                	jne    0x512304
512300:	33 f6                	xor    %esi,%esi
512302:	eb 1b                	jmp    0x51231f
512304:	6a 02                	push   $0x2
512306:	ff 15 58 18 72 00    	call   *0x721858
51230c:	8b f0                	mov    %eax,%esi
51230e:	83 c4 04             	add    $0x4,%esp
512311:	85 f6                	test   %esi,%esi
512313:	74 0a                	je     0x51231f
512315:	56                   	push   %esi
512316:	ff 15 60 18 72 00    	call   *0x721860
51231c:	83 c4 04             	add    $0x4,%esp
51231f:	8b 55 08             	mov    0x8(%ebp),%edx
512322:	ff 4a 40             	decl   0x40(%edx)
512325:	39 7a 40             	cmp    %edi,0x40(%edx)
512328:	7f 43                	jg     0x51236d
51232a:	8b 0d 84 02 73 00    	mov    0x730284,%ecx
512330:	3b ca                	cmp    %edx,%ecx
512332:	75 0a                	jne    0x51233e
512334:	8b 42 44             	mov    0x44(%edx),%eax
512337:	a3 84 02 73 00       	mov    %eax,0x730284
51233c:	eb 19                	jmp    0x512357
51233e:	85 c9                	test   %ecx,%ecx
512340:	74 15                	je     0x512357
512342:	8b 41 44             	mov    0x44(%ecx),%eax
512345:	3b c2                	cmp    %edx,%eax
512347:	74 08                	je     0x512351
512349:	8b c8                	mov    %eax,%ecx
51234b:	85 c9                	test   %ecx,%ecx
51234d:	75 f3                	jne    0x512342
51234f:	eb 06                	jmp    0x512357
512351:	8b 42 44             	mov    0x44(%edx),%eax
512354:	89 41 44             	mov    %eax,0x44(%ecx)
512357:	8b 42 38             	mov    0x38(%edx),%eax
51235a:	85 c0                	test   %eax,%eax
51235c:	74 0a                	je     0x512368
51235e:	50                   	push   %eax
51235f:	ff 15 5c 18 72 00    	call   *0x72185c
512365:	83 c4 04             	add    $0x4,%esp
512368:	bf 01 00 00 00       	mov    $0x1,%edi
51236d:	85 f6                	test   %esi,%esi
51236f:	74 0a                	je     0x51237b
512371:	56                   	push   %esi
512372:	ff 15 68 18 72 00    	call   *0x721868
512378:	83 c4 04             	add    $0x4,%esp
51237b:	8b c7                	mov    %edi,%eax
51237d:	5f                   	pop    %edi
51237e:	5e                   	pop    %esi
51237f:	5d                   	pop    %ebp
512380:	c3                   	ret
512381:	cc                   	int3
512382:	cc                   	int3