a9657d:	8b ff                	mov    %edi,%edi
a9657f:	56                   	push   %esi
a96580:	8b f1                	mov    %ecx,%esi
a96582:	e8 ce 0b 9a ff       	call   0x437155
a96587:	84 c0                	test   %al,%al
a96589:	75 04                	jne    0xa9658f
a9658b:	32 c0                	xor    %al,%al
a9658d:	5e                   	pop    %esi
a9658e:	c3                   	ret
a9658f:	83 be 5c 04 00 00 02 	cmpl   $0x2,0x45c(%esi)
a96596:	75 4f                	jne    0xa965e7
a96598:	83 be 58 04 00 00 01 	cmpl   $0x1,0x458(%esi)
a9659f:	75 46                	jne    0xa965e7
a965a1:	8b 86 a4 0a 00 00    	mov    0xaa4(%esi),%eax
a965a7:	8d 96 74 04 00 00    	lea    0x474(%esi),%edx
a965ad:	c1 e0 04             	shl    $0x4,%eax
a965b0:	8d 8e 64 04 00 00    	lea    0x464(%esi),%ecx
a965b6:	03 d0                	add    %eax,%edx
a965b8:	eb 29                	jmp    0xa965e3
a965ba:	8b 46 14             	mov    0x14(%esi),%eax
a965bd:	89 41 08             	mov    %eax,0x8(%ecx)
a965c0:	8b 01                	mov    (%ecx),%eax
a965c2:	83 e8 01             	sub    $0x1,%eax
a965c5:	74 15                	je     0xa965dc
a965c7:	83 e8 01             	sub    $0x1,%eax
a965ca:	74 0a                	je     0xa965d6
a965cc:	83 e8 01             	sub    $0x1,%eax
a965cf:	74 0b                	je     0xa965dc
a965d1:	83 e8 01             	sub    $0x1,%eax
a965d4:	75 15                	jne    0xa965eb
a965d6:	83 46 14 08          	addl   $0x8,0x14(%esi)
a965da:	eb 04                	jmp    0xa965e0
a965dc:	83 46 14 04          	addl   $0x4,0x14(%esi)
a965e0:	83 c1 10             	add    $0x10,%ecx
a965e3:	3b ca                	cmp    %edx,%ecx
a965e5:	75 d3                	jne    0xa965ba
a965e7:	b0 01                	mov    $0x1,%al
a965e9:	5e                   	pop    %esi
a965ea:	c3                   	ret
a965eb:	e8 7f 82 9a ff       	call   0x43e86f
a965f0:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
a965f6:	e8 fd 8c 98 ff       	call   0x41f2f8
a965fb:	eb 8e                	jmp    0xa9658b
a965fd:	cc                   	int3
a965fe:	cc                   	int3
a965ff:	cc                   	int3
a96600:	cc                   	int3
a96601:	cc                   	int3
a96602:	cc                   	int3
a96603:	cc                   	int3
a96604:	cc                   	int3
a96605:	cc                   	int3
a96606:	cc                   	int3
a96607:	cc                   	int3
a96608:	cc                   	int3
a96609:	cc                   	int3
a9660a:	cc                   	int3
a9660b:	cc                   	int3
a9660c:	cc                   	int3
a9660d:	cc                   	int3
a9660e:	cc                   	int3
a9660f:	cc                   	int3
a96610:	cc                   	int3
a96611:	cc                   	int3
a96612:	cc                   	int3
a96613:	cc                   	int3
a96614:	cc                   	int3
a96615:	cc                   	int3
a96616:	cc                   	int3
a96617:	cc                   	int3
a96618:	cc                   	int3
a96619:	cc                   	int3
a9661a:	cc                   	int3
a9661b:	cc                   	int3
a9661c:	cc                   	int3
a9661d:	b0 01                	mov    $0x1,%al
a9661f:	c3                   	ret
a96620:	b0 01                	mov    $0x1,%al
a96622:	c3                   	ret
a96623:	b0 01                	mov    $0x1,%al
a96625:	c3                   	ret
a96626:	b0 01                	mov    $0x1,%al
a96628:	c3                   	ret
a96629:	83 b9 5c 04 00 00 02 	cmpl   $0x2,0x45c(%ecx)
a96630:	75 47                	jne    0xa96679
a96632:	83 b9 58 04 00 00 01 	cmpl   $0x1,0x458(%ecx)
a96639:	75 3e                	jne    0xa96679
a9663b:	8b 91 a8 0a 00 00    	mov    0xaa8(%ecx),%edx
a96641:	85 d2                	test   %edx,%edx
a96643:	78 21                	js     0xa96666
a96645:	83 fa 64             	cmp    $0x64,%edx
a96648:	7d 1c                	jge    0xa96666
a9664a:	ff 71 2c             	push   0x2c(%ecx)
a9664d:	0f b6 41 31          	movzbl 0x31(%ecx),%eax
a96651:	50                   	push   %eax
a96652:	c1 e2 04             	shl    $0x4,%edx
a96655:	8d 81 64 04 00 00    	lea    0x464(%ecx),%eax
a9665b:	6a 04                	push   $0x4
a9665d:	03 c2                	add    %edx,%eax
a9665f:	50                   	push   %eax
a96660:	e8 69 b8 96 ff       	call   0x401ece
a96665:	c3                   	ret
a96666:	e8 04 82 9a ff       	call   0x43e86f
a9666b:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
a96671:	e8 82 8c 98 ff       	call   0x41f2f8
a96676:	32 c0                	xor    %al,%al
a96678:	c3                   	ret
a96679:	b0 01                	mov    $0x1,%al
a9667b:	c3                   	ret
a9667c:	cc                   	int3
a9667d:	cc                   	int3
a9667e:	cc                   	int3
a9667f:	cc                   	int3
a96680:	cc                   	int3
a96681:	cc                   	int3
a96682:	cc                   	int3
a96683:	cc                   	int3
a96684:	cc                   	int3
a96685:	cc                   	int3
a96686:	cc                   	int3
a96687:	cc                   	int3
a96688:	cc                   	int3
a96689:	cc                   	int3
a9668a:	cc                   	int3
a9668b:	cc                   	int3
a9668c:	cc                   	int3
a9668d:	cc                   	int3
a9668e:	cc                   	int3
a9668f:	cc                   	int3
a96690:	83 b9 5c 04 00 00 02 	cmpl   $0x2,0x45c(%ecx)
a96697:	75 47                	jne    0xa966e0
a96699:	83 b9 58 04 00 00 01 	cmpl   $0x1,0x458(%ecx)
a966a0:	75 3e                	jne    0xa966e0
a966a2:	8b 91 a8 0a 00 00    	mov    0xaa8(%ecx),%edx
a966a8:	85 d2                	test   %edx,%edx
a966aa:	78 21                	js     0xa966cd
a966ac:	83 fa 64             	cmp    $0x64,%edx
a966af:	7d 1c                	jge    0xa966cd
a966b1:	ff 71 2c             	push   0x2c(%ecx)
a966b4:	0f b6 41 31          	movzbl 0x31(%ecx),%eax
a966b8:	50                   	push   %eax
a966b9:	c1 e2 04             	shl    $0x4,%edx
a966bc:	8d 81 64 04 00 00    	lea    0x464(%ecx),%eax
a966c2:	6a 04                	push   $0x4
a966c4:	03 c2                	add    %edx,%eax
a966c6:	50                   	push   %eax
a966c7:	e8 3d bc 98 ff       	call   0x422309
a966cc:	c3                   	ret
a966cd:	e8 9d 81 9a ff       	call   0x43e86f
a966d2:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
a966d8:	e8 1b 8c 98 ff       	call   0x41f2f8
a966dd:	32 c0                	xor    %al,%al
a966df:	c3                   	ret
a966e0:	b0 01                	mov    $0x1,%al
a966e2:	c3                   	ret
a966e3:	cc                   	int3
a966e4:	cc                   	int3
a966e5:	cc                   	int3
a966e6:	cc                   	int3
a966e7:	cc                   	int3
a966e8:	cc                   	int3
a966e9:	cc                   	int3
a966ea:	cc                   	int3
a966eb:	cc                   	int3
a966ec:	cc                   	int3
a966ed:	cc                   	int3
a966ee:	cc                   	int3
a966ef:	cc                   	int3
a966f0:	cc                   	int3
a966f1:	cc                   	int3
a966f2:	cc                   	int3
a966f3:	cc                   	int3
a966f4:	cc                   	int3
a966f5:	cc                   	int3
a966f6:	cc                   	int3
a966f7:	83 b9 5c 04 00 00 02 	cmpl   $0x2,0x45c(%ecx)
a966fe:	75 47                	jne    0xa96747
a96700:	83 b9 58 04 00 00 01 	cmpl   $0x1,0x458(%ecx)
a96707:	75 3e                	jne    0xa96747
a96709:	8b 91 a8 0a 00 00    	mov    0xaa8(%ecx),%edx
a9670f:	85 d2                	test   %edx,%edx
a96711:	78 21                	js     0xa96734
a96713:	83 fa 64             	cmp    $0x64,%edx
a96716:	7d 1c                	jge    0xa96734
a96718:	ff 71 2c             	push   0x2c(%ecx)
a9671b:	0f b7 41 32          	movzwl 0x32(%ecx),%eax
a9671f:	50                   	push   %eax
a96720:	c1 e2 04             	shl    $0x4,%edx
a96723:	8d 81 64 04 00 00    	lea    0x464(%ecx),%eax
a96729:	6a 04                	push   $0x4
a9672b:	03 c2                	add    %edx,%eax
a9672d:	50                   	push   %eax
a9672e:	e8 db 07 98 ff       	call   0x416f0e
a96733:	c3                   	ret
a96734:	e8 36 81 9a ff       	call   0x43e86f
a96739:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
a9673f:	e8 b4 8b 98 ff       	call   0x41f2f8
a96744:	32 c0                	xor    %al,%al
a96746:	c3                   	ret
a96747:	b0 01                	mov    $0x1,%al
a96749:	c3                   	ret
a9674a:	cc                   	int3
a9674b:	cc                   	int3
a9674c:	cc                   	int3
a9674d:	cc                   	int3
a9674e:	cc                   	int3
a9674f:	cc                   	int3
a96750:	cc                   	int3
a96751:	cc                   	int3
a96752:	cc                   	int3
a96753:	cc                   	int3
a96754:	cc                   	int3
a96755:	cc                   	int3
a96756:	cc                   	int3
a96757:	cc                   	int3
a96758:	cc                   	int3
a96759:	cc                   	int3
a9675a:	cc                   	int3
a9675b:	cc                   	int3
a9675c:	cc                   	int3
a9675d:	cc                   	int3
a9675e:	83 b9 5c 04 00 00 02 	cmpl   $0x2,0x45c(%ecx)
a96765:	75 47                	jne    0xa967ae
a96767:	83 b9 58 04 00 00 01 	cmpl   $0x1,0x458(%ecx)
a9676e:	75 3e                	jne    0xa967ae
a96770:	8b 91 a8 0a 00 00    	mov    0xaa8(%ecx),%edx
a96776:	85 d2                	test   %edx,%edx
a96778:	78 21                	js     0xa9679b
a9677a:	83 fa 64             	cmp    $0x64,%edx
a9677d:	7d 1c                	jge    0xa9679b
a9677f:	ff 71 2c             	push   0x2c(%ecx)
a96782:	0f b7 41 32          	movzwl 0x32(%ecx),%eax
a96786:	50                   	push   %eax
a96787:	c1 e2 04             	shl    $0x4,%edx
a9678a:	8d 81 64 04 00 00    	lea    0x464(%ecx),%eax
a96790:	6a 04                	push   $0x4
a96792:	03 c2                	add    %edx,%eax
a96794:	50                   	push   %eax
a96795:	e8 9e ec 97 ff       	call   0x415438
a9679a:	c3                   	ret
a9679b:	e8 cf 80 9a ff       	call   0x43e86f
a967a0:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
a967a6:	e8 4d 8b 98 ff       	call   0x41f2f8
a967ab:	32 c0                	xor    %al,%al
a967ad:	c3                   	ret
a967ae:	b0 01                	mov    $0x1,%al
a967b0:	c3                   	ret
a967b1:	cc                   	int3
a967b2:	cc                   	int3
a967b3:	cc                   	int3
a967b4:	cc                   	int3
a967b5:	cc                   	int3
a967b6:	cc                   	int3
a967b7:	cc                   	int3
a967b8:	cc                   	int3
a967b9:	cc                   	int3
a967ba:	cc                   	int3
a967bb:	cc                   	int3
a967bc:	cc                   	int3
a967bd:	cc                   	int3
a967be:	cc                   	int3
a967bf:	cc                   	int3
a967c0:	cc                   	int3
a967c1:	cc                   	int3
a967c2:	cc                   	int3
a967c3:	cc                   	int3
a967c4:	cc                   	int3
a967c5:	b0 01                	mov    $0x1,%al
a967c7:	c3                   	ret
a967c8:	b0 01                	mov    $0x1,%al
a967ca:	c3                   	ret
a967cb:	b0 01                	mov    $0x1,%al
a967cd:	c3                   	ret
a967ce:	b0 01                	mov    $0x1,%al
a967d0:	c3                   	ret
a967d1:	8b ff                	mov    %edi,%edi
a967d3:	55                   	push   %ebp
a967d4:	8b ec                	mov    %esp,%ebp
a967d6:	8b 4d 08             	mov    0x8(%ebp),%ecx
a967d9:	56                   	push   %esi
a967da:	8b 41 0c             	mov    0xc(%ecx),%eax
a967dd:	c1 e8 0c             	shr    $0xc,%eax
a967e0:	a8 01                	test   $0x1,%al
a967e2:	75 6a                	jne    0xa9684e
a967e4:	51                   	push   %ecx
a967e5:	e8 00 60 9a ff       	call   0x43c7ea
a967ea:	8b d0                	mov    %eax,%edx
a967ec:	be 80 fa d5 00       	mov    $0xd5fa80,%esi
a967f1:	59                   	pop    %ecx
a967f2:	83 fa ff             	cmp    $0xffffffff,%edx
a967f5:	74 19                	je     0xa96810
a967f7:	83 fa fe             	cmp    $0xfffffffe,%edx
a967fa:	74 14                	je     0xa96810
a967fc:	83 e0 3f             	and    $0x3f,%eax
a967ff:	8b ca                	mov    %edx,%ecx
a96801:	6b c0 30             	imul   $0x30,%eax,%eax
a96804:	c1 f9 06             	sar    $0x6,%ecx
a96807:	03 04 8d 50 26 d8 00 	add    0xd82650(,%ecx,4),%eax
a9680e:	eb 02                	jmp    0xa96812
a96810:	8b c6                	mov    %esi,%eax
a96812:	80 78 29 00          	cmpb   $0x0,0x29(%eax)
a96816:	75 22                	jne    0xa9683a
a96818:	83 fa ff             	cmp    $0xffffffff,%edx
a9681b:	74 17                	je     0xa96834
a9681d:	83 fa fe             	cmp    $0xfffffffe,%edx
a96820:	74 12                	je     0xa96834
a96822:	8b c2                	mov    %edx,%eax
a96824:	83 e2 3f             	and    $0x3f,%edx
a96827:	6b f2 30             	imul   $0x30,%edx,%esi
a9682a:	c1 f8 06             	sar    $0x6,%eax
a9682d:	03 34 85 50 26 d8 00 	add    0xd82650(,%eax,4),%esi
a96834:	f6 46 2d 01          	testb  $0x1,0x2d(%esi)
a96838:	74 14                	je     0xa9684e
a9683a:	e8 30 80 9a ff       	call   0x43e86f
a9683f:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
a96845:	e8 ae 8a 98 ff       	call   0x41f2f8
a9684a:	32 c0                	xor    %al,%al
a9684c:	eb 02                	jmp    0xa96850
a9684e:	b0 01                	mov    $0x1,%al
a96850:	5e                   	pop    %esi
a96851:	5d                   	pop    %ebp
a96852:	c3                   	ret
a96853:	cc                   	int3
a96854:	cc                   	int3
a96855:	cc                   	int3
a96856:	cc                   	int3
a96857:	cc                   	int3
a96858:	cc                   	int3
a96859:	cc                   	int3
a9685a:	cc                   	int3
a9685b:	cc                   	int3
a9685c:	cc                   	int3
a9685d:	cc                   	int3
a9685e:	cc                   	int3
a9685f:	cc                   	int3
a96860:	cc                   	int3
a96861:	cc                   	int3
a96862:	cc                   	int3
a96863:	cc                   	int3
a96864:	cc                   	int3
a96865:	cc                   	int3
a96866:	cc                   	int3
a96867:	cc                   	int3
a96868:	cc                   	int3
a96869:	cc                   	int3
a9686a:	cc                   	int3
a9686b:	cc                   	int3
a9686c:	cc                   	int3
a9686d:	cc                   	int3
a9686e:	cc                   	int3