5a675a:	83 c4 08             	add    $0x8,%esp
5a675d:	85 c0                	test   %eax,%eax
5a675f:	74 cd                	je     0x5a672e
5a6761:	8b 86 9c 00 00 00    	mov    0x9c(%esi),%eax
5a6767:	89 87 9c 00 00 00    	mov    %eax,0x9c(%edi)
5a676d:	b8 01 00 00 00       	mov    $0x1,%eax
5a6772:	5f                   	pop    %edi
5a6773:	5e                   	pop    %esi
5a6774:	c3                   	ret
5a6775:	cc                   	int3
5a6776:	cc                   	int3
5a6777:	cc                   	int3
5a6778:	cc                   	int3
5a6779:	cc                   	int3
5a677a:	cc                   	int3
5a677b:	cc                   	int3
5a677c:	cc                   	int3
5a677d:	cc                   	int3
5a677e:	cc                   	int3
5a677f:	cc                   	int3
5a6780:	b8 04 00 00 00       	mov    $0x4,%eax
5a6785:	e8 66 ad 03 00       	call   0x5e14f0
5a678a:	53                   	push   %ebx
5a678b:	55                   	push   %ebp
5a678c:	57                   	push   %edi
5a678d:	8b 7c 24 18          	mov    0x18(%esp),%edi
5a6791:	33 db                	xor    %ebx,%ebx
5a6793:	57                   	push   %edi
5a6794:	33 ed                	xor    %ebp,%ebp
5a6796:	e8 d5 cb f0 ff       	call   0x4b3370
5a679b:	83 c4 04             	add    $0x4,%esp
5a679e:	83 f8 02             	cmp    $0x2,%eax
5a67a1:	0f 8e 41 01 00 00    	jle    0x5a68e8
5a67a7:	39 5f 04             	cmp    %ebx,0x4(%edi)
5a67aa:	0f 8e 38 01 00 00    	jle    0x5a68e8
5a67b0:	8b 07                	mov    (%edi),%eax
5a67b2:	f6 00 01             	testb  $0x1,(%eax)
5a67b5:	0f 84 2d 01 00 00    	je     0x5a68e8
5a67bb:	56                   	push   %esi
5a67bc:	8b 74 24 28          	mov    0x28(%esp),%esi
5a67c0:	85 f6                	test   %esi,%esi
5a67c2:	75 13                	jne    0x5a67d7
5a67c4:	e8 57 16 f3 ff       	call   0x4d7e20
5a67c9:	8b e8                	mov    %eax,%ebp
5a67cb:	8b f5                	mov    %ebp,%esi
5a67cd:	85 ed                	test   %ebp,%ebp
5a67cf:	75 06                	jne    0x5a67d7
5a67d1:	5e                   	pop    %esi
5a67d2:	5f                   	pop    %edi
5a67d3:	5d                   	pop    %ebp
5a67d4:	5b                   	pop    %ebx
5a67d5:	59                   	pop    %ecx
5a67d6:	c3                   	ret
5a67d7:	56                   	push   %esi
5a67d8:	e8 c3 16 f3 ff       	call   0x4d7ea0
5a67dd:	56                   	push   %esi
5a67de:	e8 dd 15 f3 ff       	call   0x4d7dc0
5a67e3:	83 c4 08             	add    $0x8,%esp
5a67e6:	89 44 24 10          	mov    %eax,0x10(%esp)
5a67ea:	85 c0                	test   %eax,%eax
5a67ec:	0f 84 d8 00 00 00    	je     0x5a68ca
5a67f2:	8b 5c 24 18          	mov    0x18(%esp),%ebx
5a67f6:	57                   	push   %edi
5a67f7:	8d 43 48             	lea    0x48(%ebx),%eax
5a67fa:	50                   	push   %eax
5a67fb:	e8 d0 c8 f0 ff       	call   0x4b30d0
5a6800:	83 c4 08             	add    $0x8,%esp
5a6803:	85 c0                	test   %eax,%eax
5a6805:	0f 84 bd 00 00 00    	je     0x5a68c8
5a680b:	8d 43 48             	lea    0x48(%ebx),%eax
5a680e:	6a 00                	push   $0x0
5a6810:	50                   	push   %eax
5a6811:	e8 aa cc f0 ff       	call   0x4b34c0
5a6816:	56                   	push   %esi
5a6817:	57                   	push   %edi
5a6818:	ff 74 24 30          	push   0x30(%esp)
5a681c:	ff 74 24 24          	push   0x24(%esp)
5a6820:	e8 2b 85 fc ff       	call   0x56ed50
5a6825:	83 c4 18             	add    $0x18,%esp
5a6828:	85 c0                	test   %eax,%eax
5a682a:	0f 84 98 00 00 00    	je     0x5a68c8
5a6830:	8b 03                	mov    (%ebx),%eax
5a6832:	8b 88 90 00 00 00    	mov    0x90(%eax),%ecx
5a6838:	8d 43 74             	lea    0x74(%ebx),%eax
5a683b:	85 c9                	test   %ecx,%ecx
5a683d:	74 0e                	je     0x5a684d
5a683f:	56                   	push   %esi
5a6840:	ff 74 24 14          	push   0x14(%esp)
5a6844:	50                   	push   %eax
5a6845:	53                   	push   %ebx
5a6846:	ff d1                	call   *%ecx
5a6848:	83 c4 10             	add    $0x10,%esp
5a684b:	eb 0d                	jmp    0x5a685a
5a684d:	ff 74 24 10          	push   0x10(%esp)
5a6851:	50                   	push   %eax
5a6852:	e8 79 c8 f0 ff       	call   0x4b30d0
5a6857:	83 c4 08             	add    $0x8,%esp
5a685a:	85 c0                	test   %eax,%eax
5a685c:	74 6a                	je     0x5a68c8
5a685e:	56                   	push   %esi
5a685f:	57                   	push   %edi
5a6860:	ff 74 24 2c          	push   0x2c(%esp)
5a6864:	8d 83 88 00 00 00    	lea    0x88(%ebx),%eax
5a686a:	50                   	push   %eax
5a686b:	e8 e0 84 fc ff       	call   0x56ed50
5a6870:	83 c4 10             	add    $0x10,%esp
5a6873:	85 c0                	test   %eax,%eax
5a6875:	74 51                	je     0x5a68c8
5a6877:	8b 03                	mov    (%ebx),%eax
5a6879:	8b 88 90 00 00 00    	mov    0x90(%eax),%ecx
5a687f:	85 c9                	test   %ecx,%ecx
5a6881:	74 13                	je     0x5a6896
5a6883:	56                   	push   %esi
5a6884:	8d 83 88 00 00 00    	lea    0x88(%ebx),%eax
5a688a:	50                   	push   %eax
5a688b:	50                   	push   %eax
5a688c:	53                   	push   %ebx
5a688d:	ff d1                	call   *%ecx
5a688f:	83 c4 10             	add    $0x10,%esp
5a6892:	85 c0                	test   %eax,%eax
5a6894:	74 32                	je     0x5a68c8
5a6896:	8b 7c 24 10          	mov    0x10(%esp),%edi
5a689a:	6a 03                	push   $0x3
5a689c:	57                   	push   %edi
5a689d:	e8 3e cf f0 ff       	call   0x4b37e0
5a68a2:	83 c4 08             	add    $0x8,%esp
5a68a5:	85 c0                	test   %eax,%eax
5a68a7:	74 1f                	je     0x5a68c8
5a68a9:	8d 43 48             	lea    0x48(%ebx),%eax
5a68ac:	50                   	push   %eax
5a68ad:	57                   	push   %edi
5a68ae:	e8 0d c5 f0 ff       	call   0x4b2dc0
5a68b3:	83 c4 08             	add    $0x8,%esp
5a68b6:	f7 d8                	neg    %eax
5a68b8:	1b c0                	sbb    %eax,%eax
5a68ba:	40                   	inc    %eax
5a68bb:	89 83 9c 00 00 00    	mov    %eax,0x9c(%ebx)
5a68c1:	bb 01 00 00 00       	mov    $0x1,%ebx
5a68c6:	eb 02                	jmp    0x5a68ca
5a68c8:	33 db                	xor    %ebx,%ebx
5a68ca:	56                   	push   %esi
5a68cb:	e8 80 14 f3 ff       	call   0x4d7d50
5a68d0:	83 c4 04             	add    $0x4,%esp
5a68d3:	85 ed                	test   %ebp,%ebp
5a68d5:	74 09                	je     0x5a68e0
5a68d7:	55                   	push   %ebp
5a68d8:	e8 b3 14 f3 ff       	call   0x4d7d90
5a68dd:	83 c4 04             	add    $0x4,%esp
5a68e0:	5e                   	pop    %esi
5a68e1:	5f                   	pop    %edi
5a68e2:	5d                   	pop    %ebp
5a68e3:	8b c3                	mov    %ebx,%eax
5a68e5:	5b                   	pop    %ebx
5a68e6:	59                   	pop    %ecx
5a68e7:	c3                   	ret
5a68e8:	68 ba 00 00 00       	push   $0xba
5a68ed:	68 ac cf 6c 00       	push   $0x6ccfac
5a68f2:	6a 67                	push   $0x67
5a68f4:	68 a6 00 00 00       	push   $0xa6
5a68f9:	6a 10                	push   $0x10
5a68fb:	e8 a0 ab ef ff       	call   0x4a14a0
5a6900:	83 c4 14             	add    $0x14,%esp
5a6903:	33 c0                	xor    %eax,%eax
5a6905:	5f                   	pop    %edi
5a6906:	5d                   	pop    %ebp
5a6907:	5b                   	pop    %ebx
5a6908:	59                   	pop    %ecx
5a6909:	c3                   	ret
5a690a:	cc                   	int3
5a690b:	cc                   	int3
5a690c:	cc                   	int3
5a690d:	cc                   	int3
5a690e:	cc                   	int3
5a690f:	cc                   	int3
5a6910:	b8 04 00 00 00       	mov    $0x4,%eax
5a6915:	e8 d6 ab 03 00       	call   0x5e14f0
5a691a:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
5a691e:	56                   	push   %esi
5a691f:	8b 74 24 0c          	mov    0xc(%esp),%esi
5a6923:	57                   	push   %edi
5a6924:	33 ff                	xor    %edi,%edi
5a6926:	c7 44 24 08 00 00 00 	movl   $0x0,0x8(%esp)
5a692d:	00
5a692e:	85 c9                	test   %ecx,%ecx
5a6930:	74 15                	je     0x5a6947
5a6932:	8d 46 48             	lea    0x48(%esi),%eax
5a6935:	50                   	push   %eax
5a6936:	51                   	push   %ecx
5a6937:	e8 94 c7 f0 ff       	call   0x4b30d0
5a693c:	83 c4 08             	add    $0x8,%esp
5a693f:	85 c0                	test   %eax,%eax
5a6941:	75 04                	jne    0x5a6947
5a6943:	5f                   	pop    %edi
5a6944:	5e                   	pop    %esi
5a6945:	59                   	pop    %ecx
5a6946:	c3                   	ret
5a6947:	53                   	push   %ebx
5a6948:	8b 5c 24 20          	mov    0x20(%esp),%ebx
5a694c:	55                   	push   %ebp
5a694d:	8b 6c 24 20          	mov    0x20(%esp),%ebp
5a6951:	85 ed                	test   %ebp,%ebp
5a6953:	75 08                	jne    0x5a695d
5a6955:	85 db                	test   %ebx,%ebx
5a6957:	0f 84 94 00 00 00    	je     0x5a69f1
5a695d:	8b 06                	mov    (%esi),%eax
5a695f:	39 b8 94 00 00 00    	cmp    %edi,0x94(%eax)
5a6965:	74 5d                	je     0x5a69c4
5a6967:	8b 44 24 28          	mov    0x28(%esp),%eax
5a696b:	85 c0                	test   %eax,%eax
5a696d:	75 15                	jne    0x5a6984
5a696f:	e8 ac 14 f3 ff       	call   0x4d7e20
5a6974:	8b f8                	mov    %eax,%edi
5a6976:	89 44 24 28          	mov    %eax,0x28(%esp)
5a697a:	85 ff                	test   %edi,%edi
5a697c:	75 06                	jne    0x5a6984
5a697e:	5d                   	pop    %ebp
5a697f:	5b                   	pop    %ebx
5a6980:	5f                   	pop    %edi
5a6981:	5e                   	pop    %esi
5a6982:	59                   	pop    %ecx
5a6983:	c3                   	ret
5a6984:	85 ed                	test   %ebp,%ebp
5a6986:	74 18                	je     0x5a69a0
5a6988:	8b 0e                	mov    (%esi),%ecx
5a698a:	50                   	push   %eax
5a698b:	8d 46 74             	lea    0x74(%esi),%eax
5a698e:	50                   	push   %eax
5a698f:	8b 81 94 00 00 00    	mov    0x94(%ecx),%eax
5a6995:	55                   	push   %ebp
5a6996:	56                   	push   %esi
5a6997:	ff d0                	call   *%eax
5a6999:	83 c4 10             	add    $0x10,%esp
5a699c:	85 c0                	test   %eax,%eax
5a699e:	74 59                	je     0x5a69f9
5a69a0:	85 db                	test   %ebx,%ebx
5a69a2:	74 4d                	je     0x5a69f1
5a69a4:	ff 74 24 28          	push   0x28(%esp)
5a69a8:	8b 0e                	mov    (%esi),%ecx
5a69aa:	8d 86 88 00 00 00    	lea    0x88(%esi),%eax
5a69b0:	50                   	push   %eax
5a69b1:	53                   	push   %ebx
5a69b2:	56                   	push   %esi
5a69b3:	8b 81 94 00 00 00    	mov    0x94(%ecx),%eax
5a69b9:	ff d0                	call   *%eax
5a69bb:	83 c4 10             	add    $0x10,%esp
5a69be:	85 c0                	test   %eax,%eax
5a69c0:	74 37                	je     0x5a69f9
5a69c2:	eb 2d                	jmp    0x5a69f1
5a69c4:	85 ed                	test   %ebp,%ebp
5a69c6:	74 11                	je     0x5a69d9
5a69c8:	8d 46 74             	lea    0x74(%esi),%eax
5a69cb:	50                   	push   %eax
5a69cc:	55                   	push   %ebp
5a69cd:	e8 fe c6 f0 ff       	call   0x4b30d0
5a69d2:	83 c4 08             	add    $0x8,%esp
5a69d5:	85 c0                	test   %eax,%eax
5a69d7:	74 2d                	je     0x5a6a06
5a69d9:	85 db                	test   %ebx,%ebx
5a69db:	74 14                	je     0x5a69f1
5a69dd:	8d 86 88 00 00 00    	lea    0x88(%esi),%eax
5a69e3:	50                   	push   %eax
5a69e4:	53                   	push   %ebx
5a69e5:	e8 e6 c6 f0 ff       	call   0x4b30d0
5a69ea:	83 c4 08             	add    $0x8,%esp
5a69ed:	85 c0                	test   %eax,%eax
5a69ef:	74 15                	je     0x5a6a06
5a69f1:	c7 44 24 10 01 00 00 	movl   $0x1,0x10(%esp)
5a69f8:	00
5a69f9:	85 ff                	test   %edi,%edi
5a69fb:	74 09                	je     0x5a6a06
5a69fd:	57                   	push   %edi
5a69fe:	e8 8d 13 f3 ff       	call   0x4d7d90
5a6a03:	83 c4 04             	add    $0x4,%esp
5a6a06:	8b 44 24 10          	mov    0x10(%esp),%eax
5a6a0a:	5d                   	pop    %ebp
5a6a0b:	5b                   	pop    %ebx
5a6a0c:	5f                   	pop    %edi
5a6a0d:	5e                   	pop    %esi
5a6a0e:	59                   	pop    %ecx
5a6a0f:	c3                   	ret
5a6a10:	8b 44 24 04          	mov    0x4(%esp),%eax
5a6a14:	83 c0 48             	add    $0x48,%eax
5a6a17:	89 44 24 04          	mov    %eax,0x4(%esp)
5a6a1b:	e9 50 c9 f0 ff       	jmp    0x4b3370
5a6a20:	b8 08 00 00 00       	mov    $0x8,%eax
5a6a25:	e8 c6 aa 03 00       	call   0x5e14f0
5a6a2a:	53                   	push   %ebx
5a6a2b:	56                   	push   %esi
5a6a2c:	8b 74 24 18          	mov    0x18(%esp),%esi
5a6a30:	33 db                	xor    %ebx,%ebx
5a6a32:	57                   	push   %edi
5a6a33:	8b 7c 24 18          	mov    0x18(%esp),%edi
5a6a37:	8d 47 48             	lea    0x48(%edi),%eax
5a6a3a:	89 44 24 18          	mov    %eax,0x18(%esp)
5a6a3e:	85 f6                	test   %esi,%esi
5a6a40:	75 31                	jne    0x5a6a73
5a6a42:	e8 d9 13 f3 ff       	call   0x4d7e20
5a6a47:	8b d8                	mov    %eax,%ebx
5a6a49:	8b f3                	mov    %ebx,%esi
5a6a4b:	85 db                	test   %ebx,%ebx
5a6a4d:	75 24                	jne    0x5a6a73
5a6a4f:	68 2a 01 00 00       	push   $0x12a
5a6a54:	68 ac cf 6c 00       	push   $0x6ccfac
5a6a59:	6a 41                	push   $0x41
5a6a5b:	68 a5 00 00 00       	push   $0xa5
5a6a60:	6a 10                	push   $0x10
5a6a62:	e8 39 aa ef ff       	call   0x4a14a0
5a6a67:	83 c4 14             	add    $0x14,%esp
5a6a6a:	33 c0                	xor    %eax,%eax
5a6a6c:	5f                   	pop    %edi
5a6a6d:	5e                   	pop    %esi
5a6a6e:	5b                   	pop    %ebx
5a6a6f:	83 c4 08             	add    $0x8,%esp
5a6a72:	c3                   	ret
5a6a73:	55                   	push   %ebp
5a6a74:	56                   	push   %esi
5a6a75:	e8 26 14 f3 ff       	call   0x4d7ea0
5a6a7a:	56                   	push   %esi
5a6a7b:	e8 40 13 f3 ff       	call   0x4d7dc0
5a6a80:	56                   	push   %esi
5a6a81:	8b e8                	mov    %eax,%ebp
5a6a83:	e8 38 13 f3 ff       	call   0x4d7dc0
5a6a88:	56                   	push   %esi
5a6a89:	89 44 24 20          	mov    %eax,0x20(%esp)
5a6a8d:	e8 2e 13 f3 ff       	call   0x4d7dc0
5a6a92:	56                   	push   %esi
5a6a93:	89 44 24 34          	mov    %eax,0x34(%esp)
5a6a97:	e8 24 13 f3 ff       	call   0x4d7dc0
5a6a9c:	56                   	push   %esi
5a6a9d:	89 44 24 2c          	mov    %eax,0x2c(%esp)
5a6aa1:	e8 1a 13 f3 ff       	call   0x4d7dc0
5a6aa6:	83 c4 18             	add    $0x18,%esp
5a6aa9:	85 c0                	test   %eax,%eax
5a6aab:	0f 84 1f 01 00 00    	je     0x5a6bd0
5a6ab1:	8b 0f                	mov    (%edi),%ecx
5a6ab3:	8d 47 74             	lea    0x74(%edi),%eax
5a6ab6:	8b 89 94 00 00 00    	mov    0x94(%ecx),%ecx
5a6abc:	85 c9                	test   %ecx,%ecx
5a6abe:	74 39                	je     0x5a6af9
5a6ac0:	56                   	push   %esi
5a6ac1:	50                   	push   %eax
5a6ac2:	55                   	push   %ebp
5a6ac3:	57                   	push   %edi
5a6ac4:	ff d1                	call   *%ecx
5a6ac6:	83 c4 10             	add    $0x10,%esp
5a6ac9:	85 c0                	test   %eax,%eax
5a6acb:	0f 84 ff 00 00 00    	je     0x5a6bd0
5a6ad1:	8b 0f                	mov    (%edi),%ecx
5a6ad3:	8d 87 88 00 00 00    	lea    0x88(%edi),%eax
5a6ad9:	56                   	push   %esi