a7a544:	cc                   	int3
a7a545:	cc                   	int3
a7a546:	cc                   	int3
a7a547:	cc                   	int3
a7a548:	cc                   	int3
a7a549:	cc                   	int3
a7a54a:	cc                   	int3
a7a54b:	cc                   	int3
a7a54c:	cc                   	int3
a7a54d:	cc                   	int3
a7a54e:	cc                   	int3
a7a54f:	cc                   	int3
a7a550:	55                   	push   %ebp
a7a551:	8b ec                	mov    %esp,%ebp
a7a553:	a1 60 18 d8 00       	mov    0xd81860,%eax
a7a558:	f7 d0                	not    %eax
a7a55a:	a8 01                	test   $0x1,%al
a7a55c:	8b 45 08             	mov    0x8(%ebp),%eax
a7a55f:	8b 04 85 10 d8 c7 00 	mov    0xc7d810(,%eax,4),%eax
a7a566:	75 03                	jne    0xa7a56b
a7a568:	83 c0 02             	add    $0x2,%eax
a7a56b:	5d                   	pop    %ebp
a7a56c:	c3                   	ret
a7a56d:	cc                   	int3
a7a56e:	cc                   	int3
a7a56f:	cc                   	int3
a7a570:	cc                   	int3
a7a571:	cc                   	int3
a7a572:	cc                   	int3
a7a573:	cc                   	int3
a7a574:	55                   	push   %ebp
a7a575:	8b ec                	mov    %esp,%ebp
a7a577:	56                   	push   %esi
a7a578:	57                   	push   %edi
a7a579:	8b 7d 08             	mov    0x8(%ebp),%edi
a7a57c:	8b f1                	mov    %ecx,%esi
a7a57e:	85 ff                	test   %edi,%edi
a7a580:	74 2e                	je     0xa7a5b0
a7a582:	6a 00                	push   $0x0
a7a584:	6a 10                	push   $0x10
a7a586:	b9 6c 18 d8 00       	mov    $0xd8186c,%ecx
a7a58b:	e8 11 3e 9c ff       	call   0x43e3a1
a7a590:	85 c0                	test   %eax,%eax
a7a592:	74 14                	je     0xa7a5a8
a7a594:	8b 0e                	mov    (%esi),%ecx
a7a596:	83 48 0c ff          	orl    $0xffffffff,0xc(%eax)
a7a59a:	c7 00 18 e5 c7 00    	movl   $0xc7e518,(%eax)
a7a5a0:	89 48 04             	mov    %ecx,0x4(%eax)
a7a5a3:	89 78 08             	mov    %edi,0x8(%eax)
a7a5a6:	eb 02                	jmp    0xa7a5aa
a7a5a8:	33 c0                	xor    %eax,%eax
a7a5aa:	89 06                	mov    %eax,(%esi)
a7a5ac:	85 c0                	test   %eax,%eax
a7a5ae:	75 04                	jne    0xa7a5b4
a7a5b0:	c6 46 04 03          	movb   $0x3,0x4(%esi)
a7a5b4:	5f                   	pop    %edi
a7a5b5:	5e                   	pop    %esi
a7a5b6:	5d                   	pop    %ebp
a7a5b7:	c2 04 00             	ret    $0x4
a7a5ba:	cc                   	int3
a7a5bb:	cc                   	int3
a7a5bc:	cc                   	int3
a7a5bd:	cc                   	int3
a7a5be:	cc                   	int3
a7a5bf:	cc                   	int3
a7a5c0:	cc                   	int3
a7a5c1:	cc                   	int3
a7a5c2:	cc                   	int3
a7a5c3:	cc                   	int3
a7a5c4:	cc                   	int3
a7a5c5:	cc                   	int3
a7a5c6:	cc                   	int3
a7a5c7:	cc                   	int3
a7a5c8:	cc                   	int3
a7a5c9:	cc                   	int3
a7a5ca:	cc                   	int3
a7a5cb:	55                   	push   %ebp
a7a5cc:	8b ec                	mov    %esp,%ebp
a7a5ce:	83 ec 60             	sub    $0x60,%esp
a7a5d1:	81 65 d4 00 00 ff ff 	andl   $0xffff0000,-0x2c(%ebp)
a7a5d8:	33 c0                	xor    %eax,%eax
a7a5da:	53                   	push   %ebx
a7a5db:	57                   	push   %edi
a7a5dc:	89 45 fc             	mov    %eax,-0x4(%ebp)
a7a5df:	89 45 d0             	mov    %eax,-0x30(%ebp)
a7a5e2:	e8 75 d0 99 ff       	call   0x41765c
a7a5e7:	8b 7d 0c             	mov    0xc(%ebp),%edi
a7a5ea:	8b d8                	mov    %eax,%ebx
a7a5ec:	33 c0                	xor    %eax,%eax
a7a5ee:	33 c9                	xor    %ecx,%ecx
a7a5f0:	40                   	inc    %eax
a7a5f1:	39 0f                	cmp    %ecx,(%edi)
a7a5f3:	74 0c                	je     0xa7a601
a7a5f5:	f7 47 04 00 02 00 00 	testl  $0x200,0x4(%edi)
a7a5fc:	89 45 ec             	mov    %eax,-0x14(%ebp)
a7a5ff:	75 03                	jne    0xa7a604
a7a601:	89 4d ec             	mov    %ecx,-0x14(%ebp)
a7a604:	81 fb ff ff 00 00    	cmp    $0xffff,%ebx
a7a60a:	75 12                	jne    0xa7a61e
a7a60c:	8b 4d 08             	mov    0x8(%ebp),%ecx
a7a60f:	6a 02                	push   $0x2
a7a611:	e8 58 5a 99 ff       	call   0x41006e
a7a616:	8b 45 08             	mov    0x8(%ebp),%eax
a7a619:	e9 a3 0c 00 00       	jmp    0xa7b2c1
a7a61e:	81 fb fe ff 00 00    	cmp    $0xfffe,%ebx
a7a624:	75 0f                	jne    0xa7a635
a7a626:	57                   	push   %edi
a7a627:	50                   	push   %eax
a7a628:	ff 75 08             	push   0x8(%ebp)
a7a62b:	e8 d3 98 98 ff       	call   0x403f03
a7a630:	83 c4 0c             	add    $0xc,%esp
a7a633:	eb e1                	jmp    0xa7a616
a7a635:	81 fb fd ff 00 00    	cmp    $0xfffd,%ebx
a7a63b:	75 12                	jne    0xa7a64f
a7a63d:	8b 45 08             	mov    0x8(%ebp),%eax
a7a640:	8b 0f                	mov    (%edi),%ecx
a7a642:	89 08                	mov    %ecx,(%eax)
a7a644:	8b 4f 04             	mov    0x4(%edi),%ecx
a7a647:	89 48 04             	mov    %ecx,0x4(%eax)
a7a64a:	e9 72 0c 00 00       	jmp    0xa7b2c1
a7a64f:	56                   	push   %esi
a7a650:	8b f3                	mov    %ebx,%esi
a7a652:	81 e6 00 80 00 00    	and    $0x8000,%esi
a7a658:	89 75 d8             	mov    %esi,-0x28(%ebp)
a7a65b:	0f 84 96 06 00 00    	je     0xa7acf7
a7a661:	8b c3                	mov    %ebx,%eax
a7a663:	33 d2                	xor    %edx,%edx
a7a665:	25 00 18 00 00       	and    $0x1800,%eax
a7a66a:	3d 00 08 00 00       	cmp    $0x800,%eax
a7a66f:	89 45 e0             	mov    %eax,-0x20(%ebp)
a7a672:	8b c3                	mov    %ebx,%eax
a7a674:	0f 94 c2             	sete   %dl
a7a677:	89 55 f8             	mov    %edx,-0x8(%ebp)
a7a67a:	85 d2                	test   %edx,%edx
a7a67c:	74 07                	je     0xa7a685
a7a67e:	25 00 04 00 00       	and    $0x400,%eax
a7a683:	eb 05                	jmp    0xa7a68a
a7a685:	25 00 10 00 00       	and    $0x1000,%eax
a7a68a:	85 c0                	test   %eax,%eax
a7a68c:	74 12                	je     0xa7a6a0
a7a68e:	8b c3                	mov    %ebx,%eax
a7a690:	25 00 1b 00 00       	and    $0x1b00,%eax
a7a695:	3d 00 10 00 00       	cmp    $0x1000,%eax
a7a69a:	0f 84 57 06 00 00    	je     0xa7acf7
a7a6a0:	8b c3                	mov    %ebx,%eax
a7a6a2:	85 d2                	test   %edx,%edx
a7a6a4:	74 07                	je     0xa7a6ad
a7a6a6:	25 00 04 00 00       	and    $0x400,%eax
a7a6ab:	eb 05                	jmp    0xa7a6b2
a7a6ad:	25 00 10 00 00       	and    $0x1000,%eax
a7a6b2:	85 c0                	test   %eax,%eax
a7a6b4:	74 1d                	je     0xa7a6d3
a7a6b6:	8b c3                	mov    %ebx,%eax
a7a6b8:	25 00 1b 00 00       	and    $0x1b00,%eax
a7a6bd:	3d 00 11 00 00       	cmp    $0x1100,%eax
a7a6c2:	0f 84 2f 06 00 00    	je     0xa7acf7
a7a6c8:	3d 00 12 00 00       	cmp    $0x1200,%eax
a7a6cd:	0f 84 24 06 00 00    	je     0xa7acf7
a7a6d3:	f7 c3 00 40 00 00    	test   $0x4000,%ebx
a7a6d9:	74 5e                	je     0xa7a739
a7a6db:	8b 0d 60 18 d8 00    	mov    0xd81860,%ecx
a7a6e1:	c1 e9 02             	shr    $0x2,%ecx
a7a6e4:	0b 0d 60 18 d8 00    	or     0xd81860,%ecx
a7a6ea:	d1 e9                	shr    $1,%ecx
a7a6ec:	f7 d1                	not    %ecx
a7a6ee:	f6 c1 01             	test   $0x1,%cl
a7a6f1:	74 2e                	je     0xa7a721
a7a6f3:	8d 45 b8             	lea    -0x48(%ebp),%eax
a7a6f6:	50                   	push   %eax
a7a6f7:	e8 6d ea 99 ff       	call   0x419169
a7a6fc:	59                   	pop    %ecx
a7a6fd:	50                   	push   %eax
a7a6fe:	8d 45 b0             	lea    -0x50(%ebp),%eax
a7a701:	50                   	push   %eax
a7a702:	6a 20                	push   $0x20
a7a704:	8d 4d c0             	lea    -0x40(%ebp),%ecx
a7a707:	e8 fc 90 9a ff       	call   0x423808
a7a70c:	8b c8                	mov    %eax,%ecx
a7a70e:	e8 8b 19 9a ff       	call   0x41c09e
a7a713:	8b 45 b0             	mov    -0x50(%ebp),%eax
a7a716:	89 45 d0             	mov    %eax,-0x30(%ebp)
a7a719:	8b 45 b4             	mov    -0x4c(%ebp),%eax
a7a71c:	89 45 d4             	mov    %eax,-0x2c(%ebp)
a7a71f:	eb 13                	jmp    0xa7a734
a7a721:	8d 45 b0             	lea    -0x50(%ebp),%eax
a7a724:	50                   	push   %eax
a7a725:	e8 3f ea 99 ff       	call   0x419169
a7a72a:	59                   	pop    %ecx
a7a72b:	50                   	push   %eax
a7a72c:	8d 4d d0             	lea    -0x30(%ebp),%ecx
a7a72f:	e8 04 1e 9c ff       	call   0x43c538
a7a734:	8b 55 f8             	mov    -0x8(%ebp),%edx
a7a737:	33 c9                	xor    %ecx,%ecx
a7a739:	8b c3                	mov    %ebx,%eax
a7a73b:	be 00 10 00 00       	mov    $0x1000,%esi
a7a740:	85 d2                	test   %edx,%edx
a7a742:	74 07                	je     0xa7a74b
a7a744:	25 00 04 00 00       	and    $0x400,%eax
a7a749:	eb 02                	jmp    0xa7a74d
a7a74b:	23 c6                	and    %esi,%eax
a7a74d:	85 c0                	test   %eax,%eax
a7a74f:	0f 84 18 01 00 00    	je     0xa7a86d
a7a755:	81 7d e0 00 18 00 00 	cmpl   $0x1800,-0x20(%ebp)
a7a75c:	0f 85 0b 01 00 00    	jne    0xa7a86d
a7a762:	51                   	push   %ecx
a7a763:	8d 45 b0             	lea    -0x50(%ebp),%eax
a7a766:	50                   	push   %eax
a7a767:	e8 0e 85 98 ff       	call   0x402c7a
a7a76c:	59                   	pop    %ecx
a7a76d:	59                   	pop    %ecx
a7a76e:	8d 45 b0             	lea    -0x50(%ebp),%eax
a7a771:	8b cf                	mov    %edi,%ecx
a7a773:	50                   	push   %eax
a7a774:	8d 45 b8             	lea    -0x48(%ebp),%eax
a7a777:	50                   	push   %eax
a7a778:	6a 7b                	push   $0x7b
a7a77a:	8d 45 c0             	lea    -0x40(%ebp),%eax
a7a77d:	50                   	push   %eax
a7a77e:	e8 13 17 9a ff       	call   0x41be96
a7a783:	8b c8                	mov    %eax,%ecx
a7a785:	e8 14 19 9a ff       	call   0x41c09e
a7a78a:	50                   	push   %eax
a7a78b:	8d 4d d0             	lea    -0x30(%ebp),%ecx
a7a78e:	e8 61 03 9b ff       	call   0x42aaf4
a7a793:	8d 45 b0             	lea    -0x50(%ebp),%eax
a7a796:	50                   	push   %eax
a7a797:	e8 e9 41 99 ff       	call   0x40e985
a7a79c:	59                   	pop    %ecx
a7a79d:	85 35 60 18 d8 00    	test   %esi,0xd81860
a7a7a3:	75 3e                	jne    0xa7a7e3
a7a7a5:	8d 45 b0             	lea    -0x50(%ebp),%eax
a7a7a8:	50                   	push   %eax
a7a7a9:	8d 45 b8             	lea    -0x48(%ebp),%eax
a7a7ac:	50                   	push   %eax
a7a7ad:	6a 2c                	push   $0x2c
a7a7af:	8d 4d c0             	lea    -0x40(%ebp),%ecx
a7a7b2:	e8 51 90 9a ff       	call   0x423808
a7a7b7:	8b c8                	mov    %eax,%ecx
a7a7b9:	e8 e0 18 9a ff       	call   0x41c09e
a7a7be:	8b 45 b8             	mov    -0x48(%ebp),%eax
a7a7c1:	8d 4d b0             	lea    -0x50(%ebp),%ecx
a7a7c4:	89 45 b0             	mov    %eax,-0x50(%ebp)
a7a7c7:	8b 45 bc             	mov    -0x44(%ebp),%eax
a7a7ca:	68 6c e1 c7 00       	push   $0xc7e16c
a7a7cf:	89 45 b4             	mov    %eax,-0x4c(%ebp)
a7a7d2:	e8 cd 3d 9c ff       	call   0x43e5a4
a7a7d7:	8d 45 b0             	lea    -0x50(%ebp),%eax
a7a7da:	50                   	push   %eax
a7a7db:	8d 4d d0             	lea    -0x30(%ebp),%ecx
a7a7de:	e8 11 03 9b ff       	call   0x42aaf4
a7a7e3:	68 70 e1 c7 00       	push   $0xc7e170
a7a7e8:	8d 4d d0             	lea    -0x30(%ebp),%ecx
a7a7eb:	e8 b4 3d 9c ff       	call   0x43e5a4
a7a7f0:	8d 45 b0             	lea    -0x50(%ebp),%eax
a7a7f3:	50                   	push   %eax
a7a7f4:	e8 40 14 9a ff       	call   0x41bc39
a7a7f9:	59                   	pop    %ecx
a7a7fa:	8b 0d 60 18 d8 00    	mov    0xd81860,%ecx
a7a800:	8b c1                	mov    %ecx,%eax
a7a802:	c1 e8 03             	shr    $0x3,%eax
a7a805:	0b c1                	or     %ecx,%eax
a7a807:	d1 e8                	shr    $1,%eax
a7a809:	f7 d0                	not    %eax
a7a80b:	a8 01                	test   $0x1,%al
a7a80d:	0f 84 d6 04 00 00    	je     0xa7ace9
a7a813:	85 ce                	test   %ecx,%esi
a7a815:	0f 85 ce 04 00 00    	jne    0xa7ace9
a7a81b:	8d 45 b0             	lea    -0x50(%ebp),%eax
a7a81e:	50                   	push   %eax
a7a81f:	8d 45 b8             	lea    -0x48(%ebp),%eax
a7a822:	50                   	push   %eax
a7a823:	6a 20                	push   $0x20
a7a825:	8d 4d c0             	lea    -0x40(%ebp),%ecx
a7a828:	e8 db 8f 9a ff       	call   0x423808
a7a82d:	8b c8                	mov    %eax,%ecx
a7a82f:	e8 6a 18 9a ff       	call   0x41c09e
a7a834:	8b 45 b8             	mov    -0x48(%ebp),%eax
a7a837:	8d 4d b0             	lea    -0x50(%ebp),%ecx
a7a83a:	89 45 b0             	mov    %eax,-0x50(%ebp)
a7a83d:	8b 45 bc             	mov    -0x44(%ebp),%eax
a7a840:	6a 20                	push   $0x20
a7a842:	89 45 b4             	mov    %eax,-0x4c(%ebp)
a7a845:	e8 9d 4f 9c ff       	call   0x43f7e7
a7a84a:	8b 45 b0             	mov    -0x50(%ebp),%eax
a7a84d:	8d 4d b8             	lea    -0x48(%ebp),%ecx
a7a850:	89 45 b8             	mov    %eax,-0x48(%ebp)
a7a853:	8b 45 b4             	mov    -0x4c(%ebp),%eax
a7a856:	89 45 bc             	mov    %eax,-0x44(%ebp)
a7a859:	8d 45 d0             	lea    -0x30(%ebp),%eax
a7a85c:	50                   	push   %eax
a7a85d:	e8 92 02 9b ff       	call   0x42aaf4
a7a862:	8b 4d b8             	mov    -0x48(%ebp),%ecx
a7a865:	8b 7d bc             	mov    -0x44(%ebp),%edi
a7a868:	e9 fa 06 00 00       	jmp    0xa7af67
a7a86d:	b8 00 00 ff ff       	mov    $0xffff0000,%eax
a7a872:	89 4d b8             	mov    %ecx,-0x48(%ebp)
a7a875:	21 45 b4             	and    %eax,-0x4c(%ebp)
a7a878:	8b 75 b4             	mov    -0x4c(%ebp),%esi
a7a87b:	21 45 bc             	and    %eax,-0x44(%ebp)
a7a87e:	23 f0                	and    %eax,%esi
a7a880:	21 45 cc             	and    %eax,-0x34(%ebp)
a7a883:	21 45 c4             	and    %eax,-0x3c(%ebp)
a7a886:	8b c3                	mov    %ebx,%eax
a7a888:	89 75 e0             	mov    %esi,-0x20(%ebp)
a7a88b:	be 00 10 00 00       	mov    $0x1000,%esi
a7a890:	89 4d b0             	mov    %ecx,-0x50(%ebp)
a7a893:	89 4d c8             	mov    %ecx,-0x38(%ebp)
a7a896:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
a7a899:	89 4d c0             	mov    %ecx,-0x40(%ebp)
a7a89c:	85 d2                	test   %edx,%edx
a7a89e:	74 07                	je     0xa7a8a7
a7a8a0:	25 00 04 00 00       	and    $0x400,%eax
a7a8a5:	eb 02                	jmp    0xa7a8a9
a7a8a7:	23 c6                	and    %esi,%eax
a7a8a9:	85 c0                	test   %eax,%eax
a7a8ab:	0f 84 97 00 00 00    	je     0xa7a948
a7a8b1:	85 d2                	test   %edx,%edx
a7a8b3:	74 77                	je     0xa7a92c
a7a8b5:	8b c3                	mov    %ebx,%eax
a7a8b7:	25 00 07 00 00       	and    $0x700,%eax
a7a8bc:	3d 00 06 00 00       	cmp    $0x600,%eax
a7a8c1:	75 3e                	jne    0xa7a901
a7a8c3:	8d 45 dc             	lea    -0x24(%ebp),%eax
a7a8c6:	6a 01                	push   $0x1
a7a8c8:	50                   	push   %eax
a7a8c9:	e8 ac 83 98 ff       	call   0x402c7a
a7a8ce:	8b 45 dc             	mov    -0x24(%ebp),%eax
a7a8d1:	89 45 b8             	mov    %eax,-0x48(%ebp)
a7a8d4:	8b 45 e0             	mov    -0x20(%ebp),%eax
a7a8d7:	89 45 bc             	mov    %eax,-0x44(%ebp)
a7a8da:	8d 45 dc             	lea    -0x24(%ebp),%eax
a7a8dd:	6a 01                	push   $0x1
a7a8df:	50                   	push   %eax
a7a8e0:	e8 95 83 98 ff       	call   0x402c7a
a7a8e5:	8b 45 dc             	mov    -0x24(%ebp),%eax
a7a8e8:	89 45 b0             	mov    %eax,-0x50(%ebp)
a7a8eb:	8b 45 e0             	mov    -0x20(%ebp),%eax
a7a8ee:	89 45 b4             	mov    %eax,-0x4c(%ebp)
a7a8f1:	8d 45 dc             	lea    -0x24(%ebp),%eax
a7a8f4:	6a 01                	push   $0x1
a7a8f6:	50                   	push   %eax
a7a8f7:	e8 7e 83 98 ff       	call   0x402c7a
a7a8fc:	83 c4 18             	add    $0x18,%esp
a7a8ff:	eb 1f                	jmp    0xa7a920
a7a901:	85 d2                	test   %edx,%edx
a7a903:	74 27                	je     0xa7a92c
a7a905:	8b c3                	mov    %ebx,%eax
a7a907:	25 00 07 00 00       	and    $0x700,%eax
a7a90c:	3d 00 05 00 00       	cmp    $0x500,%eax
a7a911:	75 19                	jne    0xa7a92c