46862e:	47                   	inc    %edi
46862f:	89 7d f4             	mov    %edi,-0xc(%ebp)
468632:	3b 7d f0             	cmp    -0x10(%ebp),%edi
468635:	0f 86 3b ff ff ff    	jbe    0x468576
46863b:	83 f8 ff             	cmp    $0xffffffff,%eax
46863e:	75 16                	jne    0x468656
468640:	8b 75 0c             	mov    0xc(%ebp),%esi
468643:	8b ce                	mov    %esi,%ecx
468645:	e8 d6 a5 fa ff       	call   0x412c20
46864a:	83 26 00             	andl   $0x0,(%esi)
46864d:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
468654:	eb 31                	jmp    0x468687
468656:	8b 75 e4             	mov    -0x1c(%ebp),%esi
468659:	b2 01                	mov    $0x1,%dl
46865b:	8b ce                	mov    %esi,%ecx
46865d:	e8 f3 d8 fd ff       	call   0x445f55
468662:	6a 00                	push   $0x0
468664:	ff 75 ec             	push   -0x14(%ebp)
468667:	68 11 01 00 00       	push   $0x111
46866c:	56                   	push   %esi
46866d:	ff 15 78 d6 48 00    	call   *0x48d678
468673:	32 d2                	xor    %dl,%dl
468675:	8b ce                	mov    %esi,%ecx
468677:	e8 d9 d8 fd ff       	call   0x445f55
46867c:	8b 8b 14 03 00 00    	mov    0x314(%ebx),%ecx
468682:	e8 d1 f3 fd ff       	call   0x447a58
468687:	8d 4d dc             	lea    -0x24(%ebp),%ecx
46868a:	e8 53 c1 f9 ff       	call   0x4047e2
46868f:	5f                   	pop    %edi
468690:	5e                   	pop    %esi
468691:	33 c0                	xor    %eax,%eax
468693:	5b                   	pop    %ebx
468694:	c9                   	leave
468695:	c2 08 00             	ret    $0x8
468698:	56                   	push   %esi
468699:	6a 00                	push   $0x0
46869b:	68 ec 35 4b 00       	push   $0x4b35ec
4686a0:	8b f1                	mov    %ecx,%esi
4686a2:	ff 15 c8 d5 48 00    	call   *0x48d5c8
4686a8:	6a 00                	push   $0x0
4686aa:	68 97 01 00 00       	push   $0x197
4686af:	68 11 01 00 00       	push   $0x111
4686b4:	50                   	push   %eax
4686b5:	ff 15 78 d6 48 00    	call   *0x48d678
4686bb:	8b 8e 14 03 00 00    	mov    0x314(%esi),%ecx
4686c1:	e8 92 f3 fd ff       	call   0x447a58
4686c6:	33 c0                	xor    %eax,%eax
4686c8:	5e                   	pop    %esi
4686c9:	c2 08 00             	ret    $0x8
4686cc:	56                   	push   %esi
4686cd:	6a 00                	push   $0x0
4686cf:	68 a0 01 00 00       	push   $0x1a0
4686d4:	68 11 01 00 00       	push   $0x111
4686d9:	6a 00                	push   $0x0
4686db:	68 ec 35 4b 00       	push   $0x4b35ec
4686e0:	8b f1                	mov    %ecx,%esi
4686e2:	ff 15 c8 d5 48 00    	call   *0x48d5c8
4686e8:	50                   	push   %eax
4686e9:	ff 15 78 d6 48 00    	call   *0x48d678
4686ef:	8b 8e 14 03 00 00    	mov    0x314(%esi),%ecx
4686f5:	e8 5e f3 fd ff       	call   0x447a58
4686fa:	33 c0                	xor    %eax,%eax
4686fc:	5e                   	pop    %esi
4686fd:	c2 08 00             	ret    $0x8
468700:	55                   	push   %ebp
468701:	8b ec                	mov    %esp,%ebp
468703:	83 e4 f8             	and    $0xfffffff8,%esp
468706:	83 ec 24             	sub    $0x24,%esp
468709:	53                   	push   %ebx
46870a:	56                   	push   %esi
46870b:	57                   	push   %edi
46870c:	8b 7d 08             	mov    0x8(%ebp),%edi
46870f:	57                   	push   %edi
468710:	8b 5f 08             	mov    0x8(%edi),%ebx
468713:	8b f1                	mov    %ecx,%esi
468715:	89 5c 24 18          	mov    %ebx,0x18(%esp)
468719:	e8 36 a3 f9 ff       	call   0x402a54
46871e:	6a 01                	push   $0x1
468720:	8b ce                	mov    %esi,%ecx
468722:	e8 52 a5 f9 ff       	call   0x402c79
468727:	85 c0                	test   %eax,%eax
468729:	7f 2c                	jg     0x468757
46872b:	79 11                	jns    0x46873e
46872d:	f7 d8                	neg    %eax
46872f:	6a 00                	push   $0x0
468731:	50                   	push   %eax
468732:	8b 06                	mov    (%esi),%eax
468734:	8b 48 04             	mov    0x4(%eax),%ecx
468737:	03 ce                	add    %esi,%ecx
468739:	e8 0e 48 fe ff       	call   0x44cf4c
46873e:	8b 75 0c             	mov    0xc(%ebp),%esi
468741:	8b ce                	mov    %esi,%ecx
468743:	e8 d8 a4 fa ff       	call   0x412c20
468748:	83 26 00             	andl   $0x0,(%esi)
46874b:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
468752:	e9 a7 01 00 00       	jmp    0x4688fe
468757:	8b 86 f8 01 00 00    	mov    0x1f8(%esi),%eax
46875d:	6a f0                	push   $0xfffffff0
46875f:	ff 30                	push   (%eax)
468761:	ff 15 44 d6 48 00    	call   *0x48d644
468767:	8b 8e f8 01 00 00    	mov    0x1f8(%esi),%ecx
46876d:	a9 00 00 00 40       	test   $0x40000000,%eax
468772:	8d 44 24 20          	lea    0x20(%esp),%eax
468776:	74 04                	je     0x46877c
468778:	6a 01                	push   $0x1
46877a:	eb 02                	jmp    0x46877e
46877c:	6a 00                	push   $0x0
46877e:	50                   	push   %eax
46877f:	e8 fe 4c fd ff       	call   0x43d482
468784:	83 fb 05             	cmp    $0x5,%ebx
468787:	72 1e                	jb     0x4687a7
468789:	8b 47 04             	mov    0x4(%edi),%eax
46878c:	6a 29                	push   $0x29
46878e:	8b 58 10             	mov    0x10(%eax),%ebx
468791:	8b cb                	mov    %ebx,%ecx
468793:	e8 54 94 f9 ff       	call   0x401bec
468798:	84 c0                	test   %al,%al
46879a:	75 0b                	jne    0x4687a7
46879c:	8b cb                	mov    %ebx,%ecx
46879e:	e8 e3 4a fa ff       	call   0x40d286
4687a3:	8b d8                	mov    %eax,%ebx
4687a5:	eb 08                	jmp    0x4687af
4687a7:	8b 5c 24 28          	mov    0x28(%esp),%ebx
4687ab:	2b 5c 24 20          	sub    0x20(%esp),%ebx
4687af:	83 7c 24 14 06       	cmpl   $0x6,0x14(%esp)
4687b4:	72 1e                	jb     0x4687d4
4687b6:	8b 47 04             	mov    0x4(%edi),%eax
4687b9:	6a 29                	push   $0x29
4687bb:	8b 78 14             	mov    0x14(%eax),%edi
4687be:	8b cf                	mov    %edi,%ecx
4687c0:	e8 27 94 f9 ff       	call   0x401bec
4687c5:	84 c0                	test   %al,%al
4687c7:	75 0b                	jne    0x4687d4
4687c9:	8b cf                	mov    %edi,%ecx
4687cb:	e8 b6 4a fa ff       	call   0x40d286
4687d0:	8b f8                	mov    %eax,%edi
4687d2:	eb 08                	jmp    0x4687dc
4687d4:	8b 7c 24 2c          	mov    0x2c(%esp),%edi
4687d8:	2b 7c 24 24          	sub    0x24(%esp),%edi
4687dc:	8b 45 08             	mov    0x8(%ebp),%eax
4687df:	6a 29                	push   $0x29
4687e1:	8b 40 04             	mov    0x4(%eax),%eax
4687e4:	8b 40 08             	mov    0x8(%eax),%eax
4687e7:	8b c8                	mov    %eax,%ecx
4687e9:	89 44 24 20          	mov    %eax,0x20(%esp)
4687ed:	e8 fa 93 f9 ff       	call   0x401bec
4687f2:	84 c0                	test   %al,%al
4687f4:	74 06                	je     0x4687fc
4687f6:	8b 44 24 20          	mov    0x20(%esp),%eax
4687fa:	eb 09                	jmp    0x468805
4687fc:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
468800:	e8 81 4a fa ff       	call   0x40d286
468805:	89 44 24 10          	mov    %eax,0x10(%esp)
468809:	8b 45 08             	mov    0x8(%ebp),%eax
46880c:	6a 29                	push   $0x29
46880e:	8b 48 04             	mov    0x4(%eax),%ecx
468811:	8b 41 0c             	mov    0xc(%ecx),%eax
468814:	8b c8                	mov    %eax,%ecx
468816:	89 44 24 20          	mov    %eax,0x20(%esp)
46881a:	e8 cd 93 f9 ff       	call   0x401bec
46881f:	84 c0                	test   %al,%al
468821:	74 06                	je     0x468829
468823:	8b 44 24 24          	mov    0x24(%esp),%eax
468827:	eb 09                	jmp    0x468832
468829:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
46882d:	e8 54 4a fa ff       	call   0x40d286
468832:	83 7c 24 14 07       	cmpl   $0x7,0x14(%esp)
468837:	89 44 24 0c          	mov    %eax,0xc(%esp)
46883b:	0f 82 8d 00 00 00    	jb     0x4688ce
468841:	8b 45 08             	mov    0x8(%ebp),%eax
468844:	8b 48 04             	mov    0x4(%eax),%ecx
468847:	8b 49 18             	mov    0x18(%ecx),%ecx
46884a:	e8 37 4a fa ff       	call   0x40d286
46884f:	89 44 24 1c          	mov    %eax,0x1c(%esp)
468853:	83 f8 ff             	cmp    $0xffffffff,%eax
468856:	74 76                	je     0x4688ce
468858:	85 c0                	test   %eax,%eax
46885a:	7e 05                	jle    0x468861
46885c:	83 f8 64             	cmp    $0x64,%eax
46885f:	7e 07                	jle    0x468868
468861:	6a 0a                	push   $0xa
468863:	58                   	pop    %eax
468864:	89 44 24 1c          	mov    %eax,0x1c(%esp)
468868:	8b 54 24 20          	mov    0x20(%esp),%edx
46886c:	8b 4c 24 24          	mov    0x24(%esp),%ecx
468870:	89 54 24 18          	mov    %edx,0x18(%esp)
468874:	89 4c 24 14          	mov    %ecx,0x14(%esp)
468878:	39 54 24 10          	cmp    %edx,0x10(%esp)
46887c:	75 0c                	jne    0x46888a
46887e:	39 4c 24 0c          	cmp    %ecx,0xc(%esp)
468882:	75 06                	jne    0x46888a
468884:	57                   	push   %edi
468885:	53                   	push   %ebx
468886:	51                   	push   %ecx
468887:	52                   	push   %edx
468888:	eb 4e                	jmp    0x4688d8
46888a:	8b 54 24 0c          	mov    0xc(%esp),%edx
46888e:	8d 4c 24 14          	lea    0x14(%esp),%ecx
468892:	51                   	push   %ecx
468893:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
468897:	51                   	push   %ecx
468898:	8b 4c 24 18          	mov    0x18(%esp),%ecx
46889c:	6a 01                	push   $0x1
46889e:	50                   	push   %eax
46889f:	e8 e4 ef fd ff       	call   0x447888
4688a4:	83 c4 10             	add    $0x10,%esp
4688a7:	84 c0                	test   %al,%al
4688a9:	74 38                	je     0x4688e3
4688ab:	8b 8e f8 01 00 00    	mov    0x1f8(%esi),%ecx
4688b1:	57                   	push   %edi
4688b2:	53                   	push   %ebx
4688b3:	ff 74 24 1c          	push   0x1c(%esp)
4688b7:	ff 74 24 24          	push   0x24(%esp)
4688bb:	e8 59 4d fd ff       	call   0x43d619
4688c0:	6a 32                	push   $0x32
4688c2:	59                   	pop    %ecx
4688c3:	e8 90 f1 fd ff       	call   0x447a58
4688c8:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4688cc:	eb bc                	jmp    0x46888a
4688ce:	57                   	push   %edi
4688cf:	53                   	push   %ebx
4688d0:	ff 74 24 14          	push   0x14(%esp)
4688d4:	ff 74 24 1c          	push   0x1c(%esp)
4688d8:	8b 8e f8 01 00 00    	mov    0x1f8(%esi),%ecx
4688de:	e8 36 4d fd ff       	call   0x43d619
4688e3:	8b 86 f8 01 00 00    	mov    0x1f8(%esi),%eax
4688e9:	8b 75 0c             	mov    0xc(%ebp),%esi
4688ec:	8b 38                	mov    (%eax),%edi
4688ee:	8b ce                	mov    %esi,%ecx
4688f0:	e8 2b a3 fa ff       	call   0x412c20
4688f5:	c7 46 0c 07 00 00 00 	movl   $0x7,0xc(%esi)
4688fc:	89 3e                	mov    %edi,(%esi)
4688fe:	5f                   	pop    %edi
4688ff:	5e                   	pop    %esi
468900:	33 c0                	xor    %eax,%eax
468902:	5b                   	pop    %ebx
468903:	8b e5                	mov    %ebp,%esp
468905:	5d                   	pop    %ebp
468906:	c2 08 00             	ret    $0x8
468909:	55                   	push   %ebp
46890a:	8b ec                	mov    %esp,%ebp
46890c:	53                   	push   %ebx
46890d:	56                   	push   %esi
46890e:	57                   	push   %edi
46890f:	8b 7d 08             	mov    0x8(%ebp),%edi
468912:	57                   	push   %edi
468913:	8b f1                	mov    %ecx,%esi
468915:	e8 3a a1 f9 ff       	call   0x402a54
46891a:	33 db                	xor    %ebx,%ebx
46891c:	43                   	inc    %ebx
46891d:	53                   	push   %ebx
46891e:	8b ce                	mov    %esi,%ecx
468920:	e8 54 a3 f9 ff       	call   0x402c79
468925:	85 c0                	test   %eax,%eax
468927:	7f 27                	jg     0x468950
468929:	33 ff                	xor    %edi,%edi
46892b:	85 c0                	test   %eax,%eax
46892d:	79 10                	jns    0x46893f
46892f:	f7 d8                	neg    %eax
468931:	57                   	push   %edi
468932:	50                   	push   %eax
468933:	8b 06                	mov    (%esi),%eax
468935:	8b 48 04             	mov    0x4(%eax),%ecx
468938:	03 ce                	add    %esi,%ecx
46893a:	e8 0d 46 fe ff       	call   0x44cf4c
46893f:	8b 75 0c             	mov    0xc(%ebp),%esi
468942:	8b ce                	mov    %esi,%ecx
468944:	e8 d7 a2 fa ff       	call   0x412c20
468949:	89 5e 0c             	mov    %ebx,0xc(%esi)
46894c:	89 3e                	mov    %edi,(%esi)
46894e:	eb 4f                	jmp    0x46899f
468950:	8b 86 f8 01 00 00    	mov    0x1f8(%esi),%eax
468956:	ff 30                	push   (%eax)
468958:	e8 de 86 f9 ff       	call   0x40103b
46895d:	84 c0                	test   %al,%al
46895f:	74 12                	je     0x468973
468961:	8b 75 0c             	mov    0xc(%ebp),%esi
468964:	8b ce                	mov    %esi,%ecx
468966:	e8 b5 a2 fa ff       	call   0x412c20
46896b:	83 26 00             	andl   $0x0,(%esi)
46896e:	89 5e 0c             	mov    %ebx,0xc(%esi)
468971:	eb 2c                	jmp    0x46899f
468973:	8b 86 f8 01 00 00    	mov    0x1f8(%esi),%eax
468979:	8b 30                	mov    (%eax),%esi
46897b:	8b 47 04             	mov    0x4(%edi),%eax
46897e:	8b 48 08             	mov    0x8(%eax),%ecx
468981:	e8 00 49 fa ff       	call   0x40d286
468986:	33 ff                	xor    %edi,%edi
468988:	6a 13                	push   $0x13
46898a:	57                   	push   %edi
46898b:	57                   	push   %edi
46898c:	57                   	push   %edi
46898d:	57                   	push   %edi
46898e:	3b c3                	cmp    %ebx,%eax
468990:	75 04                	jne    0x468996
468992:	6a ff                	push   $0xffffffff
468994:	eb 02                	jmp    0x468998
468996:	6a fe                	push   $0xfffffffe
468998:	56                   	push   %esi
468999:	ff 15 b4 d4 48 00    	call   *0x48d4b4
46899f:	5f                   	pop    %edi
4689a0:	5e                   	pop    %esi
4689a1:	33 c0                	xor    %eax,%eax
4689a3:	5b                   	pop    %ebx
4689a4:	5d                   	pop    %ebp
4689a5:	c2 08 00             	ret    $0x8
4689a8:	55                   	push   %ebp
4689a9:	8b ec                	mov    %esp,%ebp
4689ab:	53                   	push   %ebx
4689ac:	56                   	push   %esi
4689ad:	57                   	push   %edi
4689ae:	8b 7d 08             	mov    0x8(%ebp),%edi
4689b1:	57                   	push   %edi
4689b2:	8b f1                	mov    %ecx,%esi
4689b4:	e8 9b a0 f9 ff       	call   0x402a54
4689b9:	33 db                	xor    %ebx,%ebx
4689bb:	43                   	inc    %ebx
4689bc:	53                   	push   %ebx
4689bd:	8b ce                	mov    %esi,%ecx
4689bf:	e8 b5 a2 f9 ff       	call   0x402c79
4689c4:	85 c0                	test   %eax,%eax
4689c6:	7f 25                	jg     0x4689ed
4689c8:	79 11                	jns    0x4689db
4689ca:	f7 d8                	neg    %eax
4689cc:	6a 00                	push   $0x0
4689ce:	50                   	push   %eax
4689cf:	8b 06                	mov    (%esi),%eax
4689d1:	8b 48 04             	mov    0x4(%eax),%ecx
4689d4:	03 ce                	add    %esi,%ecx
4689d6:	e8 71 45 fe ff       	call   0x44cf4c
4689db:	8b 75 0c             	mov    0xc(%ebp),%esi
4689de:	8b ce                	mov    %esi,%ecx
4689e0:	e8 3b a2 fa ff       	call   0x412c20
4689e5:	83 26 00             	andl   $0x0,(%esi)
4689e8:	89 5e 0c             	mov    %ebx,0xc(%esi)
4689eb:	eb 41                	jmp    0x468a2e
4689ed:	8b 47 04             	mov    0x4(%edi),%eax
4689f0:	8b 48 08             	mov    0x8(%eax),%ecx
4689f3:	e8 8e 48 fa ff       	call   0x40d286
4689f8:	83 f8 40             	cmp    $0x40,%eax
4689fb:	75 03                	jne    0x468a00
4689fd:	53                   	push   %ebx
4689fe:	eb 07                	jmp    0x468a07
468a00:	83 f8 41             	cmp    $0x41,%eax
468a03:	75 0f                	jne    0x468a14
468a05:	6a 00                	push   $0x0
468a07:	8b 8e f8 01 00 00    	mov    0x1f8(%esi),%ecx
468a0d:	e8 79 49 fd ff       	call   0x43d38b
468a12:	eb 1a                	jmp    0x468a2e
468a14:	50                   	push   %eax