5ab7e1:	75 14                	jne    0x5ab7f7
5ab7e3:	85 c9                	test   %ecx,%ecx
5ab7e5:	0f 8e 9d 01 00 00    	jle    0x5ab988
5ab7eb:	8b 45 00             	mov    0x0(%ebp),%eax
5ab7ee:	f6 00 01             	testb  $0x1,(%eax)
5ab7f1:	0f 84 91 01 00 00    	je     0x5ab988
5ab7f7:	6a 00                	push   $0x0
5ab7f9:	55                   	push   %ebp
5ab7fa:	c7 44 24 18 00 00 00 	movl   $0x0,0x18(%esp)
5ab801:	00
5ab802:	e8 39 7a f0 ff       	call   0x4b3240
5ab807:	83 c4 08             	add    $0x8,%esp
5ab80a:	85 c0                	test   %eax,%eax
5ab80c:	75 1a                	jne    0x5ab828
5ab80e:	33 db                	xor    %ebx,%ebx
5ab810:	43                   	inc    %ebx
5ab811:	53                   	push   %ebx
5ab812:	55                   	push   %ebp
5ab813:	e8 28 7a f0 ff       	call   0x4b3240
5ab818:	83 c4 08             	add    $0x8,%esp
5ab81b:	85 c0                	test   %eax,%eax
5ab81d:	74 f1                	je     0x5ab810
5ab81f:	89 5c 24 10          	mov    %ebx,0x10(%esp)
5ab823:	bb fe ff ff ff       	mov    $0xfffffffe,%ebx
5ab828:	ff 74 24 10          	push   0x10(%esp)
5ab82c:	55                   	push   %ebp
5ab82d:	55                   	push   %ebp
5ab82e:	e8 ed 8e f0 ff       	call   0x4b4720
5ab833:	83 c4 0c             	add    $0xc,%esp
5ab836:	8b f0                	mov    %eax,%esi
5ab838:	f7 de                	neg    %esi
5ab83a:	1b f6                	sbb    %esi,%esi
5ab83c:	83 c6 01             	add    $0x1,%esi
5ab83f:	0f 85 4b 01 00 00    	jne    0x5ab990
5ab845:	f6 44 24 10 01       	testb  $0x1,0x10(%esp)
5ab84a:	74 23                	je     0x5ab86f
5ab84c:	39 77 04             	cmp    %esi,0x4(%edi)
5ab84f:	75 0e                	jne    0x5ab85f
5ab851:	33 c0                	xor    %eax,%eax
5ab853:	83 e0 07             	and    $0x7,%eax
5ab856:	8b 04 85 18 d5 6c 00 	mov    0x6cd518(,%eax,4),%eax
5ab85d:	eb 15                	jmp    0x5ab874
5ab85f:	8b 07                	mov    (%edi),%eax
5ab861:	8b 00                	mov    (%eax),%eax
5ab863:	83 e0 07             	and    $0x7,%eax
5ab866:	8b 04 85 18 d5 6c 00 	mov    0x6cd518(,%eax,4),%eax
5ab86d:	eb 05                	jmp    0x5ab874
5ab86f:	b8 01 00 00 00       	mov    $0x1,%eax
5ab874:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
5ab878:	89 44 24 10          	mov    %eax,0x10(%esp)
5ab87c:	74 13                	je     0x5ab891
5ab87e:	c7 45 0c 00 00 00 00 	movl   $0x0,0xc(%ebp)
5ab885:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
5ab889:	74 06                	je     0x5ab891
5ab88b:	f7 d8                	neg    %eax
5ab88d:	89 44 24 10          	mov    %eax,0x10(%esp)
5ab891:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
5ab895:	0f 84 d9 00 00 00    	je     0x5ab974
5ab89b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
5ab8a0:	33 db                	xor    %ebx,%ebx
5ab8a2:	53                   	push   %ebx
5ab8a3:	57                   	push   %edi
5ab8a4:	e8 97 79 f0 ff       	call   0x4b3240
5ab8a9:	83 c4 08             	add    $0x8,%esp
5ab8ac:	85 c0                	test   %eax,%eax
5ab8ae:	75 0f                	jne    0x5ab8bf
5ab8b0:	43                   	inc    %ebx
5ab8b1:	53                   	push   %ebx
5ab8b2:	57                   	push   %edi
5ab8b3:	e8 88 79 f0 ff       	call   0x4b3240
5ab8b8:	83 c4 08             	add    $0x8,%esp
5ab8bb:	85 c0                	test   %eax,%eax
5ab8bd:	74 f1                	je     0x5ab8b0
5ab8bf:	53                   	push   %ebx
5ab8c0:	57                   	push   %edi
5ab8c1:	57                   	push   %edi
5ab8c2:	e8 59 8e f0 ff       	call   0x4b4720
5ab8c7:	83 c4 0c             	add    $0xc,%esp
5ab8ca:	8b f0                	mov    %eax,%esi
5ab8cc:	f7 de                	neg    %esi
5ab8ce:	1b f6                	sbb    %esi,%esi
5ab8d0:	83 c6 01             	add    $0x1,%esi
5ab8d3:	0f 85 b3 00 00 00    	jne    0x5ab98c
5ab8d9:	f6 c3 01             	test   $0x1,%bl
5ab8dc:	74 23                	je     0x5ab901
5ab8de:	39 75 04             	cmp    %esi,0x4(%ebp)
5ab8e1:	75 04                	jne    0x5ab8e7
5ab8e3:	33 c0                	xor    %eax,%eax
5ab8e5:	eb 05                	jmp    0x5ab8ec
5ab8e7:	8b 45 00             	mov    0x0(%ebp),%eax
5ab8ea:	8b 00                	mov    (%eax),%eax
5ab8ec:	83 e0 07             	and    $0x7,%eax
5ab8ef:	8b 1c 85 18 d5 6c 00 	mov    0x6cd518(,%eax,4),%ebx
5ab8f6:	0f af 5c 24 10       	imul   0x10(%esp),%ebx
5ab8fb:	89 5c 24 10          	mov    %ebx,0x10(%esp)
5ab8ff:	eb 04                	jmp    0x5ab905
5ab901:	8b 5c 24 10          	mov    0x10(%esp),%ebx
5ab905:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
5ab909:	74 14                	je     0x5ab91f
5ab90b:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
5ab90f:	75 06                	jne    0x5ab917
5ab911:	33 c9                	xor    %ecx,%ecx
5ab913:	f7 d1                	not    %ecx
5ab915:	eb 16                	jmp    0x5ab92d
5ab917:	8b 07                	mov    (%edi),%eax
5ab919:	8b 08                	mov    (%eax),%ecx
5ab91b:	f7 d1                	not    %ecx
5ab91d:	eb 0e                	jmp    0x5ab92d
5ab91f:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
5ab923:	75 04                	jne    0x5ab929
5ab925:	33 c9                	xor    %ecx,%ecx
5ab927:	eb 04                	jmp    0x5ab92d
5ab929:	8b 07                	mov    (%edi),%eax
5ab92b:	8b 08                	mov    (%eax),%ecx
5ab92d:	83 7d 04 00          	cmpl   $0x0,0x4(%ebp)
5ab931:	75 04                	jne    0x5ab937
5ab933:	33 c0                	xor    %eax,%eax
5ab935:	eb 05                	jmp    0x5ab93c
5ab937:	8b 45 00             	mov    0x0(%ebp),%eax
5ab93a:	8b 00                	mov    (%eax),%eax
5ab93c:	23 c1                	and    %ecx,%eax
5ab93e:	a8 02                	test   $0x2,%al
5ab940:	74 06                	je     0x5ab948
5ab942:	f7 db                	neg    %ebx
5ab944:	89 5c 24 10          	mov    %ebx,0x10(%esp)
5ab948:	ff 74 24 20          	push   0x20(%esp)
5ab94c:	57                   	push   %edi
5ab94d:	55                   	push   %ebp
5ab94e:	55                   	push   %ebp
5ab94f:	e8 fc 33 fc ff       	call   0x56ed50
5ab954:	83 c4 10             	add    $0x10,%esp
5ab957:	8b f0                	mov    %eax,%esi
5ab959:	f7 de                	neg    %esi
5ab95b:	1b f6                	sbb    %esi,%esi
5ab95d:	83 c6 01             	add    $0x1,%esi
5ab960:	75 2e                	jne    0x5ab990
5ab962:	8b c7                	mov    %edi,%eax
5ab964:	8b fd                	mov    %ebp,%edi
5ab966:	8b e8                	mov    %eax,%ebp
5ab968:	89 70 0c             	mov    %esi,0xc(%eax)
5ab96b:	39 77 04             	cmp    %esi,0x4(%edi)
5ab96e:	0f 85 2c ff ff ff    	jne    0x5ab8a0
5ab974:	83 7d 04 01          	cmpl   $0x1,0x4(%ebp)
5ab978:	75 0e                	jne    0x5ab988
5ab97a:	8b 45 00             	mov    0x0(%ebp),%eax
5ab97d:	83 38 01             	cmpl   $0x1,(%eax)
5ab980:	75 06                	jne    0x5ab988
5ab982:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
5ab986:	74 04                	je     0x5ab98c
5ab988:	33 db                	xor    %ebx,%ebx
5ab98a:	eb 04                	jmp    0x5ab990
5ab98c:	8b 5c 24 10          	mov    0x10(%esp),%ebx
5ab990:	ff 74 24 20          	push   0x20(%esp)
5ab994:	e8 b7 c3 f2 ff       	call   0x4d7d50
5ab999:	83 c4 04             	add    $0x4,%esp
5ab99c:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
5ab9a1:	85 f6                	test   %esi,%esi
5ab9a3:	0f 45 d8             	cmovne %eax,%ebx
5ab9a6:	5f                   	pop    %edi
5ab9a7:	5e                   	pop    %esi
5ab9a8:	5d                   	pop    %ebp
5ab9a9:	8b c3                	mov    %ebx,%eax
5ab9ab:	5b                   	pop    %ebx
5ab9ac:	59                   	pop    %ecx
5ab9ad:	c3                   	ret
5ab9ae:	cc                   	int3
5ab9af:	cc                   	int3
5ab9b0:	b8 18 00 00 00       	mov    $0x18,%eax
5ab9b5:	e8 36 5b 03 00       	call   0x5e14f0
5ab9ba:	8b 54 24 1c          	mov    0x1c(%esp),%edx
5ab9be:	53                   	push   %ebx
5ab9bf:	8b 5c 24 28          	mov    0x28(%esp),%ebx
5ab9c3:	55                   	push   %ebp
5ab9c4:	8b 6c 24 30          	mov    0x30(%esp),%ebp
5ab9c8:	56                   	push   %esi
5ab9c9:	8b 4b 04             	mov    0x4(%ebx),%ecx
5ab9cc:	8b f2                	mov    %edx,%esi
5ab9ce:	89 74 24 18          	mov    %esi,0x18(%esp)
5ab9d2:	57                   	push   %edi
5ab9d3:	85 c9                	test   %ecx,%ecx
5ab9d5:	0f 8e 86 06 00 00    	jle    0x5ac061
5ab9db:	8b 03                	mov    (%ebx),%eax
5ab9dd:	8b 00                	mov    (%eax),%eax
5ab9df:	a8 01                	test   $0x1,%al
5ab9e1:	0f 84 7a 06 00 00    	je     0x5ac061
5ab9e7:	83 f9 01             	cmp    $0x1,%ecx
5ab9ea:	75 08                	jne    0x5ab9f4
5ab9ec:	3b c1                	cmp    %ecx,%eax
5ab9ee:	0f 84 6d 06 00 00    	je     0x5ac061
5ab9f4:	8b 7c 24 30          	mov    0x30(%esp),%edi
5ab9f8:	8b 47 04             	mov    0x4(%edi),%eax
5ab9fb:	85 c0                	test   %eax,%eax
5ab9fd:	0f 84 0c 06 00 00    	je     0x5ac00f
5aba03:	83 f8 01             	cmp    $0x1,%eax
5aba06:	75 11                	jne    0x5aba19
5aba08:	8b 07                	mov    (%edi),%eax
5aba0a:	83 38 01             	cmpl   $0x1,(%eax)
5aba0d:	75 0a                	jne    0x5aba19
5aba0f:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
5aba13:	0f 84 f6 05 00 00    	je     0x5ac00f
5aba19:	55                   	push   %ebp
5aba1a:	e8 81 c4 f2 ff       	call   0x4d7ea0
5aba1f:	55                   	push   %ebp
5aba20:	e8 9b c3 f2 ff       	call   0x4d7dc0
5aba25:	55                   	push   %ebp
5aba26:	89 44 24 20          	mov    %eax,0x20(%esp)
5aba2a:	e8 91 c3 f2 ff       	call   0x4d7dc0
5aba2f:	55                   	push   %ebp
5aba30:	89 44 24 30          	mov    %eax,0x30(%esp)
5aba34:	e8 87 c3 f2 ff       	call   0x4d7dc0
5aba39:	55                   	push   %ebp
5aba3a:	89 44 24 2c          	mov    %eax,0x2c(%esp)
5aba3e:	e8 7d c3 f2 ff       	call   0x4d7dc0
5aba43:	55                   	push   %ebp
5aba44:	8b f0                	mov    %eax,%esi
5aba46:	e8 75 c3 f2 ff       	call   0x4d7dc0
5aba4b:	55                   	push   %ebp
5aba4c:	89 44 24 2c          	mov    %eax,0x2c(%esp)
5aba50:	e8 6b c3 f2 ff       	call   0x4d7dc0
5aba55:	83 c4 1c             	add    $0x1c,%esp
5aba58:	89 44 24 34          	mov    %eax,0x34(%esp)
5aba5c:	85 c0                	test   %eax,%eax
5aba5e:	0f 84 f3 03 00 00    	je     0x5abe57
5aba64:	83 7c 24 2c 00       	cmpl   $0x0,0x2c(%esp)
5aba69:	75 11                	jne    0x5aba7c
5aba6b:	e8 a0 78 f0 ff       	call   0x4b3310
5aba70:	89 44 24 1c          	mov    %eax,0x1c(%esp)
5aba74:	85 c0                	test   %eax,%eax
5aba76:	0f 84 00 06 00 00    	je     0x5ac07c
5aba7c:	55                   	push   %ebp
5aba7d:	53                   	push   %ebx
5aba7e:	57                   	push   %edi
5aba7f:	ff 74 24 20          	push   0x20(%esp)
5aba83:	e8 c8 32 fc ff       	call   0x56ed50
5aba88:	83 c4 10             	add    $0x10,%esp
5aba8b:	85 c0                	test   %eax,%eax
5aba8d:	0f 84 c4 03 00 00    	je     0x5abe57
5aba93:	bf 01 00 00 00       	mov    $0x1,%edi
5aba98:	57                   	push   %edi
5aba99:	53                   	push   %ebx
5aba9a:	e8 a1 77 f0 ff       	call   0x4b3240
5aba9f:	83 c4 08             	add    $0x8,%esp
5abaa2:	85 c0                	test   %eax,%eax
5abaa4:	0f 85 c6 04 00 00    	jne    0x5abf70
5abaaa:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
5abab0:	47                   	inc    %edi
5abab1:	57                   	push   %edi
5abab2:	53                   	push   %ebx
5abab3:	e8 88 77 f0 ff       	call   0x4b3240
5abab8:	83 c4 08             	add    $0x8,%esp
5ababb:	85 c0                	test   %eax,%eax
5ababd:	74 f1                	je     0x5abab0
5ababf:	83 ff 01             	cmp    $0x1,%edi
5abac2:	0f 84 a8 04 00 00    	je     0x5abf70
5abac8:	53                   	push   %ebx
5abac9:	83 ff 02             	cmp    $0x2,%edi
5abacc:	0f 85 dc 00 00 00    	jne    0x5abbae
5abad2:	ff 74 24 18          	push   0x18(%esp)
5abad6:	56                   	push   %esi
5abad7:	e8 04 30 fc ff       	call   0x56eae0
5abadc:	83 c4 0c             	add    $0xc,%esp
5abadf:	85 c0                	test   %eax,%eax
5abae1:	0f 84 70 03 00 00    	je     0x5abe57
5abae7:	8b 7c 24 18          	mov    0x18(%esp),%edi
5abaeb:	6a 03                	push   $0x3
5abaed:	53                   	push   %ebx
5abaee:	57                   	push   %edi
5abaef:	e8 2c 8c f0 ff       	call   0x4b4720
5abaf4:	83 c4 0c             	add    $0xc,%esp
5abaf7:	85 c0                	test   %eax,%eax
5abaf9:	0f 84 58 03 00 00    	je     0x5abe57
5abaff:	55                   	push   %ebp
5abb00:	53                   	push   %ebx
5abb01:	57                   	push   %edi
5abb02:	c7 47 0c 00 00 00 00 	movl   $0x0,0xc(%edi)
5abb09:	8b 7c 24 2c          	mov    0x2c(%esp),%edi
5abb0d:	56                   	push   %esi
5abb0e:	57                   	push   %edi
5abb0f:	e8 8c 32 fc ff       	call   0x56eda0
5abb14:	83 c4 14             	add    $0x14,%esp
5abb17:	85 c0                	test   %eax,%eax
5abb19:	0f 84 38 03 00 00    	je     0x5abe57
5abb1f:	55                   	push   %ebp
5abb20:	53                   	push   %ebx
5abb21:	57                   	push   %edi
5abb22:	8b 7c 24 40          	mov    0x40(%esp),%edi
5abb26:	57                   	push   %edi
5abb27:	e8 34 31 fc ff       	call   0x56ec60
5abb2c:	83 c4 10             	add    $0x10,%esp
5abb2f:	85 c0                	test   %eax,%eax
5abb31:	0f 84 20 03 00 00    	je     0x5abe57
5abb37:	55                   	push   %ebp
5abb38:	53                   	push   %ebx
5abb39:	57                   	push   %edi
5abb3a:	56                   	push   %esi
5abb3b:	56                   	push   %esi
5abb3c:	e8 9f 30 fc ff       	call   0x56ebe0
5abb41:	83 c4 14             	add    $0x14,%esp
5abb44:	85 c0                	test   %eax,%eax
5abb46:	0f 84 0b 03 00 00    	je     0x5abe57
5abb4c:	6a 01                	push   $0x1
5abb4e:	56                   	push   %esi
5abb4f:	e8 dc 7e f0 ff       	call   0x4b3a30
5abb54:	83 c4 08             	add    $0x8,%esp
5abb57:	85 c0                	test   %eax,%eax
5abb59:	0f 84 f8 02 00 00    	je     0x5abe57
5abb5f:	8b 7c 24 10          	mov    0x10(%esp),%edi
5abb63:	55                   	push   %ebp
5abb64:	53                   	push   %ebx
5abb65:	ff 74 24 28          	push   0x28(%esp)
5abb69:	ff 74 24 20          	push   0x20(%esp)
5abb6d:	57                   	push   %edi
5abb6e:	e8 6d 30 fc ff       	call   0x56ebe0
5abb73:	83 c4 14             	add    $0x14,%esp
5abb76:	85 c0                	test   %eax,%eax
5abb78:	0f 84 d9 02 00 00    	je     0x5abe57
5abb7e:	55                   	push   %ebp
5abb7f:	53                   	push   %ebx
5abb80:	56                   	push   %esi
5abb81:	57                   	push   %edi
5abb82:	57                   	push   %edi
5abb83:	e8 58 30 fc ff       	call   0x56ebe0
5abb88:	83 c4 14             	add    $0x14,%esp
5abb8b:	85 c0                	test   %eax,%eax
5abb8d:	0f 84 c4 02 00 00    	je     0x5abe57
5abb93:	8b 74 24 1c          	mov    0x1c(%esp),%esi
5abb97:	57                   	push   %edi
5abb98:	56                   	push   %esi
5abb99:	e8 32 75 f0 ff       	call   0x4b30d0
5abb9e:	83 c4 08             	add    $0x8,%esp
5abba1:	85 c0                	test   %eax,%eax
5abba3:	0f 84 ae 02 00 00    	je     0x5abe57
5abba9:	e9 14 04 00 00       	jmp    0x5abfc2
5abbae:	ff 74 24 1c          	push   0x1c(%esp)
5abbb2:	e8 19 75 f0 ff       	call   0x4b30d0
5abbb7:	83 c4 08             	add    $0x8,%esp
5abbba:	85 c0                	test   %eax,%eax
5abbbc:	0f 84 95 02 00 00    	je     0x5abe57
5abbc2:	8b 44 24 18          	mov    0x18(%esp),%eax
5abbc6:	c7 40 0c 00 00 00 00 	movl   $0x0,0xc(%eax)
5abbcd:	b8 02 00 00 00       	mov    $0x2,%eax
5abbd2:	89 44 24 24          	mov    %eax,0x24(%esp)
5abbd6:	83 f8 16             	cmp    $0x16,%eax
5abbd9:	7d 07                	jge    0x5abbe2
5abbdb:	50                   	push   %eax
5abbdc:	ff 74 24 38          	push   0x38(%esp)
5abbe0:	eb 67                	jmp    0x5abc49
5abbe2:	6a 00                	push   $0x0
5abbe4:	6a 00                	push   $0x0
5abbe6:	53                   	push   %ebx