53a374:	92                   	xchg   %eax,%edx
53a375:	e8 52 fe f2 ff       	call   0x46a1cc
53a37a:	b1 01                	mov    $0x1,%cl
53a37c:	8b c1                	mov    %ecx,%eax
53a37e:	c3                   	ret
53a37f:	90                   	nop
53a380:	53                   	push   %ebx
53a381:	56                   	push   %esi
53a382:	57                   	push   %edi
53a383:	8b f2                	mov    %edx,%esi
53a385:	8b d8                	mov    %eax,%ebx
53a387:	8b 7b 3c             	mov    0x3c(%ebx),%edi
53a38a:	85 ff                	test   %edi,%edi
53a38c:	74 1a                	je     0x53a3a8
53a38e:	8b 46 08             	mov    0x8(%esi),%eax
53a391:	50                   	push   %eax
53a392:	8b 46 04             	mov    0x4(%esi),%eax
53a395:	50                   	push   %eax
53a396:	8b 06                	mov    (%esi),%eax
53a398:	50                   	push   %eax
53a399:	57                   	push   %edi
53a39a:	8b 43 34             	mov    0x34(%ebx),%eax
53a39d:	50                   	push   %eax
53a39e:	e8 85 d4 ec ff       	call   0x407828
53a3a3:	89 46 0c             	mov    %eax,0xc(%esi)
53a3a6:	eb 09                	jmp    0x53a3b1
53a3a8:	8b d6                	mov    %esi,%edx
53a3aa:	8b c3                	mov    %ebx,%eax
53a3ac:	e8 17 99 ec ff       	call   0x403cc8
53a3b1:	5f                   	pop    %edi
53a3b2:	5e                   	pop    %esi
53a3b3:	5b                   	pop    %ebx
53a3b4:	c3                   	ret
53a3b5:	8d 40 00             	lea    0x0(%eax),%eax
53a3b8:	55                   	push   %ebp
53a3b9:	8b ec                	mov    %esp,%ebp
53a3bb:	51                   	push   %ecx
53a3bc:	53                   	push   %ebx
53a3bd:	56                   	push   %esi
53a3be:	57                   	push   %edi
53a3bf:	89 45 fc             	mov    %eax,-0x4(%ebp)
53a3c2:	33 c0                	xor    %eax,%eax
53a3c4:	55                   	push   %ebp
53a3c5:	68 e2 a3 53 00       	push   $0x53a3e2
53a3ca:	64 ff 30             	push   %fs:(%eax)
53a3cd:	64 89 20             	mov    %esp,%fs:(%eax)
53a3d0:	8b 45 fc             	mov    -0x4(%ebp),%eax
53a3d3:	8b 08                	mov    (%eax),%ecx
53a3d5:	ff 51 30             	call   *0x30(%ecx)
53a3d8:	33 c0                	xor    %eax,%eax
53a3da:	5a                   	pop    %edx
53a3db:	59                   	pop    %ecx
53a3dc:	59                   	pop    %ecx
53a3dd:	64 89 10             	mov    %edx,%fs:(%eax)
53a3e0:	eb 23                	jmp    0x53a405
53a3e2:	e9 71 9b ec ff       	jmp    0x403f58
53a3e7:	a1 f4 6f 6a 00       	mov    0x6a6ff4,%eax
53a3ec:	83 38 00             	cmpl   $0x0,(%eax)
53a3ef:	74 0f                	je     0x53a400
53a3f1:	a1 f4 6f 6a 00       	mov    0x6a6ff4,%eax
53a3f6:	8b 00                	mov    (%eax),%eax
53a3f8:	8b 55 fc             	mov    -0x4(%ebp),%edx
53a3fb:	e8 64 f9 f2 ff       	call   0x469d64
53a400:	e8 bb 9e ec ff       	call   0x4042c0
53a405:	5f                   	pop    %edi
53a406:	5e                   	pop    %esi
53a407:	5b                   	pop    %ebx
53a408:	59                   	pop    %ecx
53a409:	5d                   	pop    %ebp
53a40a:	c3                   	ret
53a40b:	90                   	nop
53a40c:	8b 08                	mov    (%eax),%ecx
53a40e:	ff 51 ec             	call   *-0x14(%ecx)
53a411:	c3                   	ret
53a412:	8b c0                	mov    %eax,%eax
53a414:	56                   	push   %esi
53a415:	8b f0                	mov    %eax,%esi
53a417:	8b c6                	mov    %esi,%eax
53a419:	8b 08                	mov    (%eax),%ecx
53a41b:	ff 51 f0             	call   *-0x10(%ecx)
53a41e:	8b c6                	mov    %esi,%eax
53a420:	66 be ef ff          	mov    $0xffef,%si
53a424:	e8 4b 98 ec ff       	call   0x403c74
53a429:	5e                   	pop    %esi
53a42a:	c3                   	ret
53a42b:	90                   	nop
53a42c:	53                   	push   %ebx
53a42d:	56                   	push   %esi
53a42e:	8b da                	mov    %edx,%ebx
53a430:	66 be ee ff          	mov    $0xffee,%si
53a434:	e8 3b 98 ec ff       	call   0x403c74
53a439:	33 c0                	xor    %eax,%eax
53a43b:	89 43 0c             	mov    %eax,0xc(%ebx)
53a43e:	5e                   	pop    %esi
53a43f:	5b                   	pop    %ebx
53a440:	c3                   	ret
53a441:	8d 40 00             	lea    0x0(%eax),%eax
53a444:	56                   	push   %esi
53a445:	8b f0                	mov    %eax,%esi
53a447:	8b c6                	mov    %esi,%eax
53a449:	8b 08                	mov    (%eax),%ecx
53a44b:	ff 51 f0             	call   *-0x10(%ecx)
53a44e:	33 c0                	xor    %eax,%eax
53a450:	89 46 3c             	mov    %eax,0x3c(%esi)
53a453:	5e                   	pop    %esi
53a454:	c3                   	ret
53a455:	8d 40 00             	lea    0x0(%eax),%eax
53a458:	55                   	push   %ebp
53a459:	8b ec                	mov    %esp,%ebp
53a45b:	83 c4 f0             	add    $0xfffffff0,%esp
53a45e:	53                   	push   %ebx
53a45f:	56                   	push   %esi
53a460:	8b f1                	mov    %ecx,%esi
53a462:	8b da                	mov    %edx,%ebx
53a464:	89 45 fc             	mov    %eax,-0x4(%ebp)
53a467:	e8 4c d5 ec ff       	call   0x4079b8
53a46c:	89 45 f4             	mov    %eax,-0xc(%ebp)
53a46f:	33 c0                	xor    %eax,%eax
53a471:	e8 4e 63 f2 ff       	call   0x4607c4
53a476:	89 45 f0             	mov    %eax,-0x10(%ebp)
53a479:	33 c0                	xor    %eax,%eax
53a47b:	55                   	push   %ebp
53a47c:	68 24 a5 53 00       	push   $0x53a524
53a481:	64 ff 30             	push   %fs:(%eax)
53a484:	64 89 20             	mov    %esp,%fs:(%eax)
53a487:	a1 f4 6f 6a 00       	mov    0x6a6ff4,%eax
53a48c:	83 38 00             	cmpl   $0x0,(%eax)
53a48f:	74 16                	je     0x53a4a7
53a491:	8b 45 fc             	mov    -0x4(%ebp),%eax
53a494:	50                   	push   %eax
53a495:	8b 00                	mov    (%eax),%eax
53a497:	8b 40 34             	mov    0x34(%eax),%eax
53a49a:	50                   	push   %eax
53a49b:	a1 f4 6f 6a 00       	mov    0x6a6ff4,%eax
53a4a0:	8b 00                	mov    (%eax),%eax
53a4a2:	e8 4d f6 f2 ff       	call   0x469af4
53a4a7:	33 c0                	xor    %eax,%eax
53a4a9:	55                   	push   %ebp
53a4aa:	68 fe a4 53 00       	push   $0x53a4fe
53a4af:	64 ff 30             	push   %fs:(%eax)
53a4b2:	64 89 20             	mov    %esp,%fs:(%eax)
53a4b5:	8b 45 fc             	mov    -0x4(%ebp),%eax
53a4b8:	a3 e8 a0 69 00       	mov    %eax,0x69a0e8
53a4bd:	56                   	push   %esi
53a4be:	ff d3                	call   *%ebx
53a4c0:	89 45 f8             	mov    %eax,-0x8(%ebp)
53a4c3:	a1 48 72 6a 00       	mov    0x6a7248,%eax
53a4c8:	66 8b 00             	mov    (%eax),%ax
53a4cb:	e8 64 87 ec ff       	call   0x402c34
53a4d0:	33 c0                	xor    %eax,%eax
53a4d2:	5a                   	pop    %edx
53a4d3:	59                   	pop    %ecx
53a4d4:	59                   	pop    %ecx
53a4d5:	64 89 10             	mov    %edx,%fs:(%eax)
53a4d8:	68 05 a5 53 00       	push   $0x53a505
53a4dd:	a1 f4 6f 6a 00       	mov    0x6a6ff4,%eax
53a4e2:	83 38 00             	cmpl   $0x0,(%eax)
53a4e5:	74 16                	je     0x53a4fd
53a4e7:	8b 45 fc             	mov    -0x4(%ebp),%eax
53a4ea:	50                   	push   %eax
53a4eb:	8b 00                	mov    (%eax),%eax
53a4ed:	8b 40 34             	mov    0x34(%eax),%eax
53a4f0:	50                   	push   %eax
53a4f1:	a1 f4 6f 6a 00       	mov    0x6a6ff4,%eax
53a4f6:	8b 00                	mov    (%eax),%eax
53a4f8:	e8 53 f6 f2 ff       	call   0x469b50
53a4fd:	c3                   	ret
53a4fe:	e9 09 9d ec ff       	jmp    0x40420c
53a503:	eb d8                	jmp    0x53a4dd
53a505:	33 c0                	xor    %eax,%eax
53a507:	5a                   	pop    %edx
53a508:	59                   	pop    %ecx
53a509:	59                   	pop    %ecx
53a50a:	64 89 10             	mov    %edx,%fs:(%eax)
53a50d:	68 2b a5 53 00       	push   $0x53a52b
53a512:	8b 45 f0             	mov    -0x10(%ebp),%eax
53a515:	e8 5e 63 f2 ff       	call   0x460878
53a51a:	8b 45 f4             	mov    -0xc(%ebp),%eax
53a51d:	50                   	push   %eax
53a51e:	e8 05 d8 ec ff       	call   0x407d28
53a523:	c3                   	ret
53a524:	e9 e3 9c ec ff       	jmp    0x40420c
53a529:	eb e7                	jmp    0x53a512
53a52b:	8b 45 f8             	mov    -0x8(%ebp),%eax
53a52e:	5e                   	pop    %esi
53a52f:	5b                   	pop    %ebx
53a530:	8b e5                	mov    %ebp,%esp
53a532:	5d                   	pop    %ebp
53a533:	c3                   	ret
53a534:	53                   	push   %ebx
53a535:	66 83 78 4a 00       	cmpw   $0x0,0x4a(%eax)
53a53a:	74 0a                	je     0x53a546
53a53c:	8b d8                	mov    %eax,%ebx
53a53e:	8b d0                	mov    %eax,%edx
53a540:	8b 43 4c             	mov    0x4c(%ebx),%eax
53a543:	ff 53 48             	call   *0x48(%ebx)
53a546:	5b                   	pop    %ebx
53a547:	c3                   	ret
53a548:	53                   	push   %ebx
53a549:	8b d8                	mov    %eax,%ebx
53a54b:	8b c3                	mov    %ebx,%eax
53a54d:	e8 e2 ff ff ff       	call   0x53a534
53a552:	33 d2                	xor    %edx,%edx
53a554:	8b 43 70             	mov    0x70(%ebx),%eax
53a557:	e8 ac a6 08 00       	call   0x5c4c08
53a55c:	8b 43 70             	mov    0x70(%ebx),%eax
53a55f:	e8 8c a8 08 00       	call   0x5c4df0
53a564:	8b 43 6c             	mov    0x6c(%ebx),%eax
53a567:	e8 c0 e9 09 00       	call   0x5d8f2c
53a56c:	a1 f4 6f 6a 00       	mov    0x6a6ff4,%eax
53a571:	83 38 00             	cmpl   $0x0,(%eax)
53a574:	74 0c                	je     0x53a582
53a576:	a1 f4 6f 6a 00       	mov    0x6a6ff4,%eax
53a57b:	8b 00                	mov    (%eax),%eax
53a57d:	e8 12 03 f3 ff       	call   0x46a894
53a582:	5b                   	pop    %ebx
53a583:	c3                   	ret
53a584:	53                   	push   %ebx
53a585:	66 83 78 52 00       	cmpw   $0x0,0x52(%eax)
53a58a:	74 0a                	je     0x53a596
53a58c:	8b d8                	mov    %eax,%ebx
53a58e:	8b d0                	mov    %eax,%edx
53a590:	8b 43 54             	mov    0x54(%ebx),%eax
53a593:	ff 53 50             	call   *0x50(%ebx)
53a596:	5b                   	pop    %ebx
53a597:	c3                   	ret
53a598:	55                   	push   %ebp
53a599:	8b ec                	mov    %esp,%ebp
53a59b:	51                   	push   %ecx
53a59c:	53                   	push   %ebx
53a59d:	56                   	push   %esi
53a59e:	57                   	push   %edi
53a59f:	8b 7d 14             	mov    0x14(%ebp),%edi
53a5a2:	8b 5d 0c             	mov    0xc(%ebp),%ebx
53a5a5:	8b 75 08             	mov    0x8(%ebp),%esi
53a5a8:	33 c0                	xor    %eax,%eax
53a5aa:	89 45 fc             	mov    %eax,-0x4(%ebp)
53a5ad:	81 fb 10 01 00 00    	cmp    $0x110,%ebx
53a5b3:	75 40                	jne    0x53a5f5
53a5b5:	a1 e8 a0 69 00       	mov    0x69a0e8,%eax
53a5ba:	89 70 3c             	mov    %esi,0x3c(%eax)
53a5bd:	a1 e8 a0 69 00       	mov    0x69a0e8,%eax
53a5c2:	8b 40 40             	mov    0x40(%eax),%eax
53a5c5:	50                   	push   %eax
53a5c6:	6a fc                	push   $0xfffffffc
53a5c8:	56                   	push   %esi
53a5c9:	e8 fa d7 ec ff       	call   0x407dc8
53a5ce:	8b 15 e8 a0 69 00    	mov    0x69a0e8,%edx
53a5d4:	89 42 34             	mov    %eax,0x34(%edx)
53a5d7:	57                   	push   %edi
53a5d8:	8b 45 10             	mov    0x10(%ebp),%eax
53a5db:	50                   	push   %eax
53a5dc:	53                   	push   %ebx
53a5dd:	56                   	push   %esi
53a5de:	a1 e8 a0 69 00       	mov    0x69a0e8,%eax
53a5e3:	8b 40 40             	mov    0x40(%eax),%eax
53a5e6:	50                   	push   %eax
53a5e7:	e8 3c d2 ec ff       	call   0x407828
53a5ec:	33 c0                	xor    %eax,%eax
53a5ee:	a3 e8 a0 69 00       	mov    %eax,0x69a0e8
53a5f3:	eb 1b                	jmp    0x53a610
53a5f5:	83 fb 4e             	cmp    $0x4e,%ebx
53a5f8:	75 16                	jne    0x53a610
53a5fa:	81 7f 08 a7 fd ff ff 	cmpl   $0xfffffda7,0x8(%edi)
53a601:	75 0d                	jne    0x53a610
53a603:	6a f8                	push   $0xfffffff8
53a605:	56                   	push   %esi
53a606:	e8 3d d5 ec ff       	call   0x407b48
53a60b:	e8 7c 71 0c 00       	call   0x60178c
53a610:	8b 45 fc             	mov    -0x4(%ebp),%eax
53a613:	5f                   	pop    %edi
53a614:	5e                   	pop    %esi
53a615:	5b                   	pop    %ebx
53a616:	59                   	pop    %ecx
53a617:	5d                   	pop    %ebp
53a618:	c2 10 00             	ret    $0x10
53a61b:	90                   	nop
53a61c:	55                   	push   %ebp
53a61d:	8b ec                	mov    %esp,%ebp
53a61f:	b9 0e 00 00 00       	mov    $0xe,%ecx
53a624:	6a 00                	push   $0x0
53a626:	6a 00                	push   $0x0
53a628:	49                   	dec    %ecx
53a629:	75 f9                	jne    0x53a624
53a62b:	53                   	push   %ebx
53a62c:	56                   	push   %esi
53a62d:	57                   	push   %edi
53a62e:	89 55 f8             	mov    %edx,-0x8(%ebp)
53a631:	89 45 fc             	mov    %eax,-0x4(%ebp)
53a634:	33 c0                	xor    %eax,%eax
53a636:	55                   	push   %ebp
53a637:	68 cc aa 53 00       	push   $0x53aacc
53a63c:	64 ff 30             	push   %fs:(%eax)
53a63f:	64 89 20             	mov    %esp,%fs:(%eax)
53a642:	e8 19 72 09 00       	call   0x5d1860
53a647:	8d 4d d8             	lea    -0x28(%ebp),%ecx
53a64a:	8b 45 fc             	mov    -0x4(%ebp),%eax
53a64d:	8a 50 30             	mov    0x30(%eax),%dl
53a650:	b0 83                	mov    $0x83,%al
53a652:	e8 f1 72 0b 00       	call   0x5f1948
53a657:	8b 55 d8             	mov    -0x28(%ebp),%edx
53a65a:	8d 45 ec             	lea    -0x14(%ebp),%eax
53a65d:	b9 e4 aa 53 00       	mov    $0x53aae4,%ecx
53a662:	e8 05 a5 ec ff       	call   0x404b6c
53a667:	8b 45 f8             	mov    -0x8(%ebp),%eax
53a66a:	e8 f9 a1 ec ff       	call   0x404868
53a66f:	a1 fc 70 6a 00       	mov    0x6a70fc,%eax
53a674:	8b 00                	mov    (%eax),%eax
53a676:	8b 40 08             	mov    0x8(%eax),%eax
53a679:	48                   	dec    %eax
53a67a:	85 c0                	test   %eax,%eax
53a67c:	0f 8c b1 01 00 00    	jl     0x53a833
53a682:	40                   	inc    %eax
53a683:	89 45 dc             	mov    %eax,-0x24(%ebp)
53a686:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
53a68d:	a1 fc 70 6a 00       	mov    0x6a70fc,%eax
53a692:	8b 00                	mov    (%eax),%eax
53a694:	8b 55 f4             	mov    -0xc(%ebp),%edx
53a697:	e8 24 17 ee ff       	call   0x41bdc0
53a69c:	8b f0                	mov    %eax,%esi
53a69e:	8b 45 fc             	mov    -0x4(%ebp),%eax
53a6a1:	8b 15 50 a0 53 00    	mov    0x53a050,%edx
53a6a7:	e8 58 95 ec ff       	call   0x403c04
53a6ac:	84 c0                	test   %al,%al
53a6ae:	74 09                	je     0x53a6b9
53a6b0:	83 be b0 00 00 00 00 	cmpl   $0x0,0xb0(%esi)
53a6b7:	75 23                	jne    0x53a6dc
53a6b9:	8b 45 fc             	mov    -0x4(%ebp),%eax
53a6bc:	8b 15 50 a0 53 00    	mov    0x53a050,%edx
53a6c2:	e8 3d 95 ec ff       	call   0x403c04
53a6c7:	84 c0                	test   %al,%al
53a6c9:	0f 85 58 01 00 00    	jne    0x53a827
53a6cf:	83 be ac 00 00 00 00 	cmpl   $0x0,0xac(%esi)
53a6d6:	0f 84 4b 01 00 00    	je     0x53a827
53a6dc:	8d 4d d0             	lea    -0x30(%ebp),%ecx
53a6df:	33 d2                	xor    %edx,%edx
53a6e1:	8b 06                	mov    (%esi),%eax
53a6e3:	e8 98 66 09 00       	call   0x5d0d80
53a6e8:	8b 45 d0             	mov    -0x30(%ebp),%eax
53a6eb:	8d 55 d4             	lea    -0x2c(%ebp),%edx
53a6ee:	e8 81 ea ec ff       	call   0x409174
53a6f3:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
53a6f6:	8d 45 e8             	lea    -0x18(%ebp),%eax
53a6f9:	ba f0 aa 53 00       	mov    $0x53aaf0,%edx
53a6fe:	e8 69 a4 ec ff       	call   0x404b6c
53a703:	80 be a6 00 00 00 00 	cmpb   $0x0,0xa6(%esi)
53a70a:	74 0b                	je     0x53a717
53a70c:	8d 45 ec             	lea    -0x14(%ebp),%eax
53a70f:	8b 55 e8             	mov    -0x18(%ebp),%edx
53a712:	e8 11 a4 ec ff       	call   0x404b28