54a101:	8b ec                	mov    %esp,%ebp
54a103:	56                   	push   %esi
54a104:	8b 75 08             	mov    0x8(%ebp),%esi
54a107:	57                   	push   %edi
54a108:	81 7e 14 a3 0d f2 2d 	cmpl   $0x2df20da3,0x14(%esi)
54a10f:	8b 3e                	mov    (%esi),%edi
54a111:	74 06                	je     0x54a119
54a113:	5f                   	pop    %edi
54a114:	33 c0                	xor    %eax,%eax
54a116:	5e                   	pop    %esi
54a117:	5d                   	pop    %ebp
54a118:	c3                   	ret
54a119:	80 7f 51 00          	cmpb   $0x0,0x51(%edi)
54a11d:	74 07                	je     0x54a126
54a11f:	c7 46 28 07 00 00 00 	movl   $0x7,0x28(%esi)
54a126:	53                   	push   %ebx
54a127:	56                   	push   %esi
54a128:	e8 43 ee fa ff       	call   0x4f8f70
54a12d:	83 c4 04             	add    $0x4,%esp
54a130:	83 7e 24 00          	cmpl   $0x0,0x24(%esi)
54a134:	0f 8c c1 02 00 00    	jl     0x54a3fb
54a13a:	f7 86 98 00 00 00 00 	testl  $0x200,0x98(%esi)
54a141:	02 00 00
54a144:	0f 84 81 02 00 00    	je     0x54a3cb
54a14a:	56                   	push   %esi
54a14b:	33 db                	xor    %ebx,%ebx
54a14d:	e8 de 85 ff ff       	call   0x542730
54a152:	8b 46 28             	mov    0x28(%esi),%eax
54a155:	83 c4 04             	add    $0x4,%esp
54a158:	25 ff 00 00 00       	and    $0xff,%eax
54a15d:	83 f8 07             	cmp    $0x7,%eax
54a160:	74 16                	je     0x54a178
54a162:	83 f8 0a             	cmp    $0xa,%eax
54a165:	74 11                	je     0x54a178
54a167:	83 f8 09             	cmp    $0x9,%eax
54a16a:	74 0c                	je     0x54a178
54a16c:	83 f8 0d             	cmp    $0xd,%eax
54a16f:	74 07                	je     0x54a178
54a171:	33 d2                	xor    %edx,%edx
54a173:	89 55 08             	mov    %edx,0x8(%ebp)
54a176:	eb 50                	jmp    0x54a1c8
54a178:	8b 8e 98 00 00 00    	mov    0x98(%esi),%ecx
54a17e:	ba 01 00 00 00       	mov    $0x1,%edx
54a183:	89 55 08             	mov    %edx,0x8(%ebp)
54a186:	f7 c1 00 01 00 00    	test   $0x100,%ecx
54a18c:	74 05                	je     0x54a193
54a18e:	83 f8 09             	cmp    $0x9,%eax
54a191:	74 35                	je     0x54a1c8
54a193:	83 f8 07             	cmp    $0x7,%eax
54a196:	74 05                	je     0x54a19d
54a198:	83 f8 0d             	cmp    $0xd,%eax
54a19b:	75 0b                	jne    0x54a1a8
54a19d:	84 c9                	test   %cl,%cl
54a19f:	79 07                	jns    0x54a1a8
54a1a1:	bb 02 00 00 00       	mov    $0x2,%ebx
54a1a6:	eb 20                	jmp    0x54a1c8
54a1a8:	68 04 02 00 00       	push   $0x204
54a1ad:	57                   	push   %edi
54a1ae:	e8 7d e4 fe ff       	call   0x538630
54a1b3:	57                   	push   %edi
54a1b4:	e8 97 43 fd ff       	call   0x51e550
54a1b9:	c6 47 4f 01          	movb   $0x1,0x4f(%edi)
54a1bd:	83 c4 0c             	add    $0xc,%esp
54a1c0:	89 5e 2c             	mov    %ebx,0x2c(%esi)
54a1c3:	ba 01 00 00 00       	mov    $0x1,%edx
54a1c8:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
54a1cc:	74 0d                	je     0x54a1db
54a1ce:	80 be 92 00 00 00 03 	cmpb   $0x3,0x92(%esi)
54a1d5:	75 2e                	jne    0x54a205
54a1d7:	85 d2                	test   %edx,%edx
54a1d9:	75 2a                	jne    0x54a205
54a1db:	83 7e 44 00          	cmpl   $0x0,0x44(%esi)
54a1df:	7c 24                	jl     0x54a205
54a1e1:	7f 06                	jg     0x54a1e9
54a1e3:	83 7e 40 00          	cmpl   $0x0,0x40(%esi)
54a1e7:	76 1c                	jbe    0x54a205
54a1e9:	68 30 87 6b 00       	push   $0x6b8730
54a1ee:	56                   	push   %esi
54a1ef:	c7 46 28 13 03 00 00 	movl   $0x313,0x28(%esi)
54a1f6:	c6 86 92 00 00 00 02 	movb   $0x2,0x92(%esi)
54a1fd:	e8 ae 85 ff ff       	call   0x5427b0
54a202:	83 c4 08             	add    $0x8,%esp
54a205:	83 bf 64 01 00 00 00 	cmpl   $0x0,0x164(%edi)
54a20c:	7e 0d                	jle    0x54a21b
54a20e:	83 bf 7c 01 00 00 00 	cmpl   $0x0,0x17c(%edi)
54a215:	0f 84 00 01 00 00    	je     0x54a31b
54a21b:	80 7f 4f 00          	cmpb   $0x0,0x4f(%edi)
54a21f:	0f 84 f6 00 00 00    	je     0x54a31b
54a225:	8b 86 98 00 00 00    	mov    0x98(%esi),%eax
54a22b:	c1 e8 08             	shr    $0x8,%eax
54a22e:	f7 d0                	not    %eax
54a230:	83 e0 01             	and    $0x1,%eax
54a233:	39 87 b8 00 00 00    	cmp    %eax,0xb8(%edi)
54a239:	0f 85 dc 00 00 00    	jne    0x54a31b
54a23f:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
54a243:	74 0f                	je     0x54a254
54a245:	80 be 92 00 00 00 03 	cmpb   $0x3,0x92(%esi)
54a24c:	75 70                	jne    0x54a2be
54a24e:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
54a252:	75 6a                	jne    0x54a2be
54a254:	6a 01                	push   $0x1
54a256:	56                   	push   %esi
54a257:	e8 44 7e ff ff       	call   0x5420a0
54a25c:	83 c4 08             	add    $0x8,%esp
54a25f:	85 c0                	test   %eax,%eax
54a261:	74 26                	je     0x54a289
54a263:	f7 86 98 00 00 00 00 	testl  $0x100,0x98(%esi)
54a26a:	01 00 00
54a26d:	74 13                	je     0x54a282
54a26f:	56                   	push   %esi
54a270:	e8 2b 05 00 00       	call   0x54a7a0
54a275:	83 c4 04             	add    $0x4,%esp
54a278:	b8 01 00 00 00       	mov    $0x1,%eax
54a27d:	5b                   	pop    %ebx
54a27e:	5f                   	pop    %edi
54a27f:	5e                   	pop    %esi
54a280:	5d                   	pop    %ebp
54a281:	c3                   	ret
54a282:	b8 13 03 00 00       	mov    $0x313,%eax
54a287:	eb 32                	jmp    0x54a2bb
54a289:	56                   	push   %esi
54a28a:	57                   	push   %edi
54a28b:	e8 90 fb 00 00       	call   0x559e20
54a290:	83 c4 08             	add    $0x8,%esp
54a293:	83 f8 05             	cmp    $0x5,%eax
54a296:	75 1f                	jne    0x54a2b7
54a298:	f7 86 98 00 00 00 00 	testl  $0x100,0x98(%esi)
54a29f:	01 00 00
54a2a2:	74 17                	je     0x54a2bb
54a2a4:	56                   	push   %esi
54a2a5:	e8 f6 04 00 00       	call   0x54a7a0
54a2aa:	83 c4 04             	add    $0x4,%esp
54a2ad:	b8 05 00 00 00       	mov    $0x5,%eax
54a2b2:	5b                   	pop    %ebx
54a2b3:	5f                   	pop    %edi
54a2b4:	5e                   	pop    %esi
54a2b5:	5d                   	pop    %ebp
54a2b6:	c3                   	ret
54a2b7:	85 c0                	test   %eax,%eax
54a2b9:	74 17                	je     0x54a2d2
54a2bb:	89 46 28             	mov    %eax,0x28(%esi)
54a2be:	6a 00                	push   $0x0
54a2c0:	57                   	push   %edi
54a2c1:	e8 6a e3 fe ff       	call   0x538630
54a2c6:	83 c4 08             	add    $0x8,%esp
54a2c9:	c7 46 2c 00 00 00 00 	movl   $0x0,0x2c(%esi)
54a2d0:	eb 39                	jmp    0x54a30b
54a2d2:	81 67 20 ff ff f7 ff 	andl   $0xfff7ffff,0x20(%edi)
54a2d9:	8b 47 24             	mov    0x24(%edi),%eax
54a2dc:	83 67 18 fe          	andl   $0xfffffffe,0x18(%edi)
54a2e0:	c7 87 e8 01 00 00 00 	movl   $0x0,0x1e8(%edi)
54a2e7:	00 00 00
54a2ea:	c7 87 ec 01 00 00 00 	movl   $0x0,0x1ec(%edi)
54a2f1:	00 00 00
54a2f4:	c7 87 f0 01 00 00 00 	movl   $0x0,0x1f0(%edi)
54a2fb:	00 00 00
54a2fe:	c7 87 f4 01 00 00 00 	movl   $0x0,0x1f4(%edi)
54a305:	00 00 00
54a308:	89 47 24             	mov    %eax,0x24(%edi)
54a30b:	c7 87 e0 01 00 00 00 	movl   $0x0,0x1e0(%edi)
54a312:	00 00 00
54a315:	85 db                	test   %ebx,%ebx
54a317:	74 79                	je     0x54a392
54a319:	eb 23                	jmp    0x54a33e
54a31b:	85 db                	test   %ebx,%ebx
54a31d:	75 1f                	jne    0x54a33e
54a31f:	39 5e 28             	cmp    %ebx,0x28(%esi)
54a322:	74 15                	je     0x54a339
54a324:	8a 86 92 00 00 00    	mov    0x92(%esi),%al
54a32a:	3c 03                	cmp    $0x3,%al
54a32c:	74 0b                	je     0x54a339
54a32e:	3c 02                	cmp    $0x2,%al
54a330:	75 41                	jne    0x54a373
54a332:	bb 02 00 00 00       	mov    $0x2,%ebx
54a337:	eb 05                	jmp    0x54a33e
54a339:	bb 01 00 00 00       	mov    $0x1,%ebx
54a33e:	53                   	push   %ebx
54a33f:	56                   	push   %esi
54a340:	e8 9b 80 ff ff       	call   0x5423e0
54a345:	83 c4 08             	add    $0x8,%esp
54a348:	85 c0                	test   %eax,%eax
54a34a:	74 46                	je     0x54a392
54a34c:	8b 4e 28             	mov    0x28(%esi),%ecx
54a34f:	85 c9                	test   %ecx,%ecx
54a351:	74 05                	je     0x54a358
54a353:	80 f9 13             	cmp    $0x13,%cl
54a356:	75 1b                	jne    0x54a373
54a358:	89 46 28             	mov    %eax,0x28(%esi)
54a35b:	8b 46 7c             	mov    0x7c(%esi),%eax
54a35e:	85 c0                	test   %eax,%eax
54a360:	74 0a                	je     0x54a36c
54a362:	50                   	push   %eax
54a363:	57                   	push   %edi
54a364:	e8 07 70 fd ff       	call   0x521370
54a369:	83 c4 08             	add    $0x8,%esp
54a36c:	c7 46 7c 00 00 00 00 	movl   $0x0,0x7c(%esi)
54a373:	68 04 02 00 00       	push   $0x204
54a378:	57                   	push   %edi
54a379:	e8 b2 e2 fe ff       	call   0x538630
54a37e:	57                   	push   %edi
54a37f:	e8 cc 41 fd ff       	call   0x51e550
54a384:	c6 47 4f 01          	movb   $0x1,0x4f(%edi)
54a388:	83 c4 0c             	add    $0xc,%esp
54a38b:	c7 46 2c 00 00 00 00 	movl   $0x0,0x2c(%esi)
54a392:	f6 86 98 00 00 00 20 	testb  $0x20,0x98(%esi)
54a399:	74 1e                	je     0x54a3b9
54a39b:	83 fb 02             	cmp    $0x2,%ebx
54a39e:	74 0b                	je     0x54a3ab
54a3a0:	8b 46 2c             	mov    0x2c(%esi),%eax
54a3a3:	01 47 68             	add    %eax,0x68(%edi)
54a3a6:	89 47 64             	mov    %eax,0x64(%edi)
54a3a9:	eb 07                	jmp    0x54a3b2
54a3ab:	c7 47 64 00 00 00 00 	movl   $0x0,0x64(%edi)
54a3b2:	c7 46 2c 00 00 00 00 	movl   $0x0,0x2c(%esi)
54a3b9:	83 be a0 00 00 00 00 	cmpl   $0x0,0xa0(%esi)
54a3c0:	74 09                	je     0x54a3cb
54a3c2:	56                   	push   %esi
54a3c3:	e8 78 09 01 00       	call   0x55ad40
54a3c8:	83 c4 04             	add    $0x4,%esp
54a3cb:	83 7e 24 00          	cmpl   $0x0,0x24(%esi)
54a3cf:	7c 2a                	jl     0x54a3fb
54a3d1:	ff 8f b0 00 00 00    	decl   0xb0(%edi)
54a3d7:	f7 86 98 00 00 00 00 	testl  $0x100,0x98(%esi)
54a3de:	01 00 00
54a3e1:	75 06                	jne    0x54a3e9
54a3e3:	ff 8f b8 00 00 00    	decl   0xb8(%edi)
54a3e9:	f7 86 98 00 00 00 00 	testl  $0x200,0x98(%esi)
54a3f0:	02 00 00
54a3f3:	74 06                	je     0x54a3fb
54a3f5:	ff 8f b4 00 00 00    	decl   0xb4(%edi)
54a3fb:	c7 46 14 73 29 9c 31 	movl   $0x319c2973,0x14(%esi)
54a402:	80 7f 51 00          	cmpb   $0x0,0x51(%edi)
54a406:	74 07                	je     0x54a40f
54a408:	c7 46 28 07 00 00 00 	movl   $0x7,0x28(%esi)
54a40f:	b9 05 00 00 00       	mov    $0x5,%ecx
54a414:	33 c0                	xor    %eax,%eax
54a416:	39 4e 28             	cmp    %ecx,0x28(%esi)
54a419:	5b                   	pop    %ebx
54a41a:	5f                   	pop    %edi
54a41b:	0f 44 c1             	cmove  %ecx,%eax
54a41e:	5e                   	pop    %esi
54a41f:	5d                   	pop    %ebp
54a420:	c3                   	ret
54a421:	cc                   	int3
54a422:	cc                   	int3
54a423:	cc                   	int3
54a424:	cc                   	int3
54a425:	cc                   	int3
54a426:	cc                   	int3
54a427:	cc                   	int3
54a428:	cc                   	int3
54a429:	cc                   	int3
54a42a:	cc                   	int3
54a42b:	cc                   	int3
54a42c:	cc                   	int3
54a42d:	cc                   	int3
54a42e:	cc                   	int3
54a42f:	cc                   	int3
54a430:	55                   	push   %ebp
54a431:	8b ec                	mov    %esp,%ebp
54a433:	83 ec 2c             	sub    $0x2c,%esp
54a436:	a1 d4 89 72 00       	mov    0x7289d4,%eax
54a43b:	33 c5                	xor    %ebp,%eax
54a43d:	89 45 fc             	mov    %eax,-0x4(%ebp)
54a440:	8b 45 0c             	mov    0xc(%ebp),%eax
54a443:	53                   	push   %ebx
54a444:	8b 5d 10             	mov    0x10(%ebp),%ebx
54a447:	56                   	push   %esi
54a448:	8b 75 14             	mov    0x14(%ebp),%esi
54a44b:	57                   	push   %edi
54a44c:	8b 78 28             	mov    0x28(%eax),%edi
54a44f:	57                   	push   %edi
54a450:	e8 5b b7 fb ff       	call   0x505bb0
54a455:	8b 57 2c             	mov    0x2c(%edi),%edx
54a458:	33 c0                	xor    %eax,%eax
54a45a:	83 c4 04             	add    $0x4,%esp
54a45d:	8b ca                	mov    %edx,%ecx
54a45f:	83 c1 ff             	add    $0xffffffff,%ecx
54a462:	83 d0 ff             	adc    $0xffffffff,%eax
54a465:	85 c0                	test   %eax,%eax
54a467:	77 71                	ja     0x54a4da
54a469:	72 08                	jb     0x54a473
54a46b:	81 f9 fe ff ff 7f    	cmp    $0x7ffffffe,%ecx
54a471:	77 67                	ja     0x54a4da
54a473:	33 c0                	xor    %eax,%eax
54a475:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
54a47c:	66 89 45 dc          	mov    %ax,-0x24(%ebp)
54a480:	8b 45 08             	mov    0x8(%ebp),%eax
54a483:	89 45 f4             	mov    %eax,-0xc(%ebp)
54a486:	8d 45 d4             	lea    -0x2c(%ebp),%eax
54a489:	50                   	push   %eax
54a48a:	52                   	push   %edx
54a48b:	6a 00                	push   $0x0
54a48d:	57                   	push   %edi
54a48e:	e8 ed 0f 00 00       	call   0x54b480
54a493:	83 c4 10             	add    $0x10,%esp
54a496:	85 c0                	test   %eax,%eax
54a498:	75 69                	jne    0x54a503
54a49a:	50                   	push   %eax
54a49b:	53                   	push   %ebx
54a49c:	ff 75 e4             	push   -0x1c(%ebp)
54a49f:	ff 75 e0             	push   -0x20(%ebp)
54a4a2:	e8 99 20 00 00       	call   0x54c540
54a4a7:	83 c4 10             	add    $0x10,%esp
54a4aa:	89 06                	mov    %eax,(%esi)
54a4ac:	f7 45 dc 00 24 00 00 	testl  $0x2400,-0x24(%ebp)
54a4b3:	75 06                	jne    0x54a4bb
54a4b5:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
54a4b9:	74 0c                	je     0x54a4c7
54a4bb:	8d 45 d4             	lea    -0x2c(%ebp),%eax
54a4be:	50                   	push   %eax
54a4bf:	e8 4c 09 01 00       	call   0x55ae10
54a4c4:	83 c4 04             	add    $0x4,%esp
54a4c7:	5f                   	pop    %edi
54a4c8:	5e                   	pop    %esi
54a4c9:	33 c0                	xor    %eax,%eax
54a4cb:	5b                   	pop    %ebx
54a4cc:	8b 4d fc             	mov    -0x4(%ebp),%ecx
54a4cf:	33 cd                	xor    %ebp,%ecx
54a4d1:	e8 04 70 09 00       	call   0x5e14da
54a4d6:	8b e5                	mov    %ebp,%esp
54a4d8:	5d                   	pop    %ebp
54a4d9:	c3                   	ret
54a4da:	68 fc c4 6b 00       	push   $0x6bc4fc
54a4df:	68 57 41 01 00       	push   $0x14157
54a4e4:	68 94 c4 6b 00       	push   $0x6bc494
54a4e9:	68 78 c4 6b 00       	push   $0x6bc478
54a4ee:	6a 0b                	push   $0xb
54a4f0:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
54a4f6:	e8 e5 5a f9 ff       	call   0x4dffe0
54a4fb:	83 c4 14             	add    $0x14,%esp
54a4fe:	b8 0b 00 00 00       	mov    $0xb,%eax
54a503:	8b 4d fc             	mov    -0x4(%ebp),%ecx
54a506:	5f                   	pop    %edi
54a507:	5e                   	pop    %esi
54a508:	33 cd                	xor    %ebp,%ecx
54a50a:	5b                   	pop    %ebx
54a50b:	e8 ca 6f 09 00       	call   0x5e14da
54a510:	8b e5                	mov    %ebp,%esp
54a512:	5d                   	pop    %ebp
54a513:	c3                   	ret
54a514:	cc                   	int3
54a515:	cc                   	int3
54a516:	cc                   	int3
54a517:	cc                   	int3
54a518:	cc                   	int3
54a519:	cc                   	int3
54a51a:	cc                   	int3
54a51b:	cc                   	int3
54a51c:	cc                   	int3