4bb70c:	5f                   	pop    %edi
4bb70d:	5e                   	pop    %esi
4bb70e:	5b                   	pop    %ebx
4bb70f:	59                   	pop    %ecx
4bb710:	5d                   	pop    %ebp
4bb711:	c2 08 00             	ret    $0x8
4bb714:	53                   	push   %ebx
4bb715:	56                   	push   %esi
4bb716:	57                   	push   %edi
4bb717:	55                   	push   %ebp
4bb718:	83 c4 f8             	add    $0xfffffff8,%esp
4bb71b:	8b f2                	mov    %edx,%esi
4bb71d:	8b d8                	mov    %eax,%ebx
4bb71f:	8b 43 1c             	mov    0x1c(%ebx),%eax
4bb722:	8b 15 c4 a9 4b 00    	mov    0x4ba9c4,%edx
4bb728:	e8 d7 84 f4 ff       	call   0x403c04
4bb72d:	84 c0                	test   %al,%al
4bb72f:	0f 84 10 01 00 00    	je     0x4bb845
4bb735:	56                   	push   %esi
4bb736:	8b fe                	mov    %esi,%edi
4bb738:	8d 73 04             	lea    0x4(%ebx),%esi
4bb73b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bb73c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bb73d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bb73e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bb73f:	5e                   	pop    %esi
4bb740:	8b c3                	mov    %ebx,%eax
4bb742:	8b 10                	mov    (%eax),%edx
4bb744:	ff 52 50             	call   *0x50(%edx)
4bb747:	84 c0                	test   %al,%al
4bb749:	0f 85 8e 00 00 00    	jne    0x4bb7dd
4bb74f:	8b d4                	mov    %esp,%edx
4bb751:	8b c3                	mov    %ebx,%eax
4bb753:	e8 04 07 00 00       	call   0x4bbe5c
4bb758:	8b 3c 24             	mov    (%esp),%edi
4bb75b:	85 ff                	test   %edi,%edi
4bb75d:	7e 44                	jle    0x4bb7a3
4bb75f:	a1 94 6f 6a 00       	mov    0x6a6f94,%eax
4bb764:	8b 00                	mov    (%eax),%eax
4bb766:	ba 21 00 00 00       	mov    $0x21,%edx
4bb76b:	8b 08                	mov    (%eax),%ecx
4bb76d:	ff 91 80 00 00 00    	call   *0x80(%ecx)
4bb773:	8b e8                	mov    %eax,%ebp
4bb775:	a1 94 6f 6a 00       	mov    0x6a6f94,%eax
4bb77a:	8b 00                	mov    (%eax),%eax
4bb77c:	ba 22 00 00 00       	mov    $0x22,%edx
4bb781:	8b 08                	mov    (%eax),%ecx
4bb783:	ff 91 80 00 00 00    	call   *0x80(%ecx)
4bb789:	03 e8                	add    %eax,%ebp
4bb78b:	a1 94 6f 6a 00       	mov    0x6a6f94,%eax
4bb790:	8b 00                	mov    (%eax),%eax
4bb792:	ba 20 00 00 00       	mov    $0x20,%edx
4bb797:	8b 08                	mov    (%eax),%ecx
4bb799:	ff 91 80 00 00 00    	call   *0x80(%ecx)
4bb79f:	03 e8                	add    %eax,%ebp
4bb7a1:	03 fd                	add    %ebp,%edi
4bb7a3:	a1 94 6f 6a 00       	mov    0x6a6f94,%eax
4bb7a8:	8b 00                	mov    (%eax),%eax
4bb7aa:	ba 20 00 00 00       	mov    $0x20,%edx
4bb7af:	8b 08                	mov    (%eax),%ecx
4bb7b1:	ff 91 80 00 00 00    	call   *0x80(%ecx)
4bb7b7:	8b e8                	mov    %eax,%ebp
4bb7b9:	8b c3                	mov    %ebx,%eax
4bb7bb:	e8 64 a4 ff ff       	call   0x4b5c24
4bb7c0:	03 e8                	add    %eax,%ebp
4bb7c2:	03 fd                	add    %ebp,%edi
4bb7c4:	01 3e                	add    %edi,(%esi)
4bb7c6:	a1 94 6f 6a 00       	mov    0x6a6f94,%eax
4bb7cb:	8b 00                	mov    (%eax),%eax
4bb7cd:	ba 42 00 00 00       	mov    $0x42,%edx
4bb7d2:	8b 08                	mov    (%eax),%ecx
4bb7d4:	ff 91 80 00 00 00    	call   *0x80(%ecx)
4bb7da:	29 46 08             	sub    %eax,0x8(%esi)
4bb7dd:	a1 94 6f 6a 00       	mov    0x6a6f94,%eax
4bb7e2:	8b 00                	mov    (%eax),%eax
4bb7e4:	ba 3c 00 00 00       	mov    $0x3c,%edx
4bb7e9:	8b 08                	mov    (%eax),%ecx
4bb7eb:	ff 91 80 00 00 00    	call   *0x80(%ecx)
4bb7f1:	8b f8                	mov    %eax,%edi
4bb7f3:	83 ef 03             	sub    $0x3,%edi
4bb7f6:	a1 94 6f 6a 00       	mov    0x6a6f94,%eax
4bb7fb:	8b 00                	mov    (%eax),%eax
4bb7fd:	ba 3e 00 00 00       	mov    $0x3e,%edx
4bb802:	8b 08                	mov    (%eax),%ecx
4bb804:	ff 91 80 00 00 00    	call   *0x80(%ecx)
4bb80a:	8b d7                	mov    %edi,%edx
4bb80c:	f7 da                	neg    %edx
4bb80e:	2b d0                	sub    %eax,%edx
4bb810:	52                   	push   %edx
4bb811:	a1 94 6f 6a 00       	mov    0x6a6f94,%eax
4bb816:	8b 00                	mov    (%eax),%eax
4bb818:	ba 3d 00 00 00       	mov    $0x3d,%edx
4bb81d:	8b 08                	mov    (%eax),%ecx
4bb81f:	ff 91 80 00 00 00    	call   *0x80(%ecx)
4bb825:	f7 df                	neg    %edi
4bb827:	2b f8                	sub    %eax,%edi
4bb829:	57                   	push   %edi
4bb82a:	56                   	push   %esi
4bb82b:	e8 58 c3 f4 ff       	call   0x407b88
4bb830:	8b c3                	mov    %ebx,%eax
4bb832:	8b 10                	mov    (%eax),%edx
4bb834:	ff 52 68             	call   *0x68(%edx)
4bb837:	01 06                	add    %eax,(%esi)
4bb839:	8b c3                	mov    %ebx,%eax
4bb83b:	8b 10                	mov    (%eax),%edx
4bb83d:	ff 52 6c             	call   *0x6c(%edx)
4bb840:	29 46 08             	sub    %eax,0x8(%esi)
4bb843:	eb 09                	jmp    0x4bb84e
4bb845:	8b d6                	mov    %esi,%edx
4bb847:	8b c3                	mov    %ebx,%eax
4bb849:	e8 ca f6 fb ff       	call   0x47af18
4bb84e:	59                   	pop    %ecx
4bb84f:	5a                   	pop    %edx
4bb850:	5d                   	pop    %ebp
4bb851:	5f                   	pop    %edi
4bb852:	5e                   	pop    %esi
4bb853:	5b                   	pop    %ebx
4bb854:	c3                   	ret
4bb855:	8d 40 00             	lea    0x0(%eax),%eax
4bb858:	33 c0                	xor    %eax,%eax
4bb85a:	c3                   	ret
4bb85b:	90                   	nop
4bb85c:	53                   	push   %ebx
4bb85d:	8b d8                	mov    %eax,%ebx
4bb85f:	8b c3                	mov    %ebx,%eax
4bb861:	8b 10                	mov    (%eax),%edx
4bb863:	ff 52 70             	call   *0x70(%edx)
4bb866:	84 c0                	test   %al,%al
4bb868:	74 17                	je     0x4bb881
4bb86a:	8b c3                	mov    %ebx,%eax
4bb86c:	e8 23 7c fb ff       	call   0x473494
4bb871:	85 c0                	test   %eax,%eax
4bb873:	74 08                	je     0x4bb87d
4bb875:	8b 40 34             	mov    0x34(%eax),%eax
4bb878:	83 c0 02             	add    $0x2,%eax
4bb87b:	eb 06                	jmp    0x4bb883
4bb87d:	33 c0                	xor    %eax,%eax
4bb87f:	5b                   	pop    %ebx
4bb880:	c3                   	ret
4bb881:	33 c0                	xor    %eax,%eax
4bb883:	5b                   	pop    %ebx
4bb884:	c3                   	ret
4bb885:	8d 40 00             	lea    0x0(%eax),%eax
4bb888:	8b 0a                	mov    (%edx),%ecx
4bb88a:	81 f9 00 01 00 00    	cmp    $0x100,%ecx
4bb890:	75 2c                	jne    0x4bb8be
4bb892:	8b 52 04             	mov    0x4(%edx),%edx
4bb895:	83 ea 20             	sub    $0x20,%edx
4bb898:	74 18                	je     0x4bb8b2
4bb89a:	83 c2 f0             	add    $0xfffffff0,%edx
4bb89d:	83 ea 2b             	sub    $0x2b,%edx
4bb8a0:	72 10                	jb     0x4bb8b2
4bb8a2:	83 c2 fb             	add    $0xfffffffb,%edx
4bb8a5:	83 ea 10             	sub    $0x10,%edx
4bb8a8:	72 08                	jb     0x4bb8b2
4bb8aa:	83 c2 b6             	add    $0xffffffb6,%edx
4bb8ad:	83 ea 3c             	sub    $0x3c,%edx
4bb8b0:	73 3d                	jae    0x4bb8ef
4bb8b2:	8b 40 1c             	mov    0x1c(%eax),%eax
4bb8b5:	ff 80 e4 00 00 00    	incl   0xe4(%eax)
4bb8bb:	33 c0                	xor    %eax,%eax
4bb8bd:	c3                   	ret
4bb8be:	81 f9 01 01 00 00    	cmp    $0x101,%ecx
4bb8c4:	75 29                	jne    0x4bb8ef
4bb8c6:	8b 52 04             	mov    0x4(%edx),%edx
4bb8c9:	83 ea 20             	sub    $0x20,%edx
4bb8cc:	74 18                	je     0x4bb8e6
4bb8ce:	83 c2 f0             	add    $0xfffffff0,%edx
4bb8d1:	83 ea 2b             	sub    $0x2b,%edx
4bb8d4:	72 10                	jb     0x4bb8e6
4bb8d6:	83 c2 fb             	add    $0xfffffffb,%edx
4bb8d9:	83 ea 10             	sub    $0x10,%edx
4bb8dc:	72 08                	jb     0x4bb8e6
4bb8de:	83 c2 b6             	add    $0xffffffb6,%edx
4bb8e1:	83 ea 3c             	sub    $0x3c,%edx
4bb8e4:	73 09                	jae    0x4bb8ef
4bb8e6:	8b 40 1c             	mov    0x1c(%eax),%eax
4bb8e9:	ff 88 e4 00 00 00    	decl   0xe4(%eax)
4bb8ef:	33 c0                	xor    %eax,%eax
4bb8f1:	c3                   	ret
4bb8f2:	8b c0                	mov    %eax,%eax
4bb8f4:	53                   	push   %ebx
4bb8f5:	56                   	push   %esi
4bb8f6:	8b f2                	mov    %edx,%esi
4bb8f8:	8b d8                	mov    %eax,%ebx
4bb8fa:	66 83 7b 3a 00       	cmpw   $0x0,0x3a(%ebx)
4bb8ff:	74 15                	je     0x4bb916
4bb901:	8b d6                	mov    %esi,%edx
4bb903:	8b c3                	mov    %ebx,%eax
4bb905:	8b 08                	mov    (%eax),%ecx
4bb907:	ff 51 5c             	call   *0x5c(%ecx)
4bb90a:	84 c0                	test   %al,%al
4bb90c:	75 08                	jne    0x4bb916
4bb90e:	8b d6                	mov    %esi,%edx
4bb910:	8b 43 3c             	mov    0x3c(%ebx),%eax
4bb913:	ff 53 38             	call   *0x38(%ebx)
4bb916:	5e                   	pop    %esi
4bb917:	5b                   	pop    %ebx
4bb918:	c3                   	ret
4bb919:	8d 40 00             	lea    0x0(%eax),%eax
4bb91c:	55                   	push   %ebp
4bb91d:	8b ec                	mov    %esp,%ebp
4bb91f:	81 c4 78 ff ff ff    	add    $0xffffff78,%esp
4bb925:	53                   	push   %ebx
4bb926:	56                   	push   %esi
4bb927:	57                   	push   %edi
4bb928:	33 db                	xor    %ebx,%ebx
4bb92a:	89 5d f0             	mov    %ebx,-0x10(%ebp)
4bb92d:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4bb930:	89 55 fc             	mov    %edx,-0x4(%ebp)
4bb933:	8b d8                	mov    %eax,%ebx
4bb935:	33 c0                	xor    %eax,%eax
4bb937:	55                   	push   %ebp
4bb938:	68 ce bd 4b 00       	push   $0x4bbdce
4bb93d:	64 ff 30             	push   %fs:(%eax)
4bb940:	64 89 20             	mov    %esp,%fs:(%eax)
4bb943:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bb946:	e8 75 d3 f6 ff       	call   0x428cc0
4bb94b:	89 45 f4             	mov    %eax,-0xc(%ebp)
4bb94e:	8b 73 1c             	mov    0x1c(%ebx),%esi
4bb951:	8a 45 0c             	mov    0xc(%ebp),%al
4bb954:	50                   	push   %eax
4bb955:	8a 45 08             	mov    0x8(%ebp),%al
4bb958:	50                   	push   %eax
4bb959:	8d 55 90             	lea    -0x70(%ebp),%edx
4bb95c:	8a 4d 10             	mov    0x10(%ebp),%cl
4bb95f:	8b c3                	mov    %ebx,%eax
4bb961:	8b 38                	mov    (%eax),%edi
4bb963:	ff 57 60             	call   *0x60(%edi)
4bb966:	8d 4d 90             	lea    -0x70(%ebp),%ecx
4bb969:	8d 95 78 ff ff ff    	lea    -0x88(%ebp),%edx
4bb96f:	8b c3                	mov    %ebx,%eax
4bb971:	8b 38                	mov    (%eax),%edi
4bb973:	ff 57 64             	call   *0x64(%edi)
4bb976:	8b 45 f8             	mov    -0x8(%ebp),%eax
4bb979:	56                   	push   %esi
4bb97a:	8b f0                	mov    %eax,%esi
4bb97c:	8d 7d c8             	lea    -0x38(%ebp),%edi
4bb97f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bb980:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bb981:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bb982:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4bb983:	5e                   	pop    %esi
4bb984:	8b c3                	mov    %ebx,%eax
4bb986:	8b 10                	mov    (%eax),%edx
4bb988:	ff 52 50             	call   *0x50(%edx)
4bb98b:	84 c0                	test   %al,%al
4bb98d:	0f 85 2f 02 00 00    	jne    0x4bbbc2
4bb993:	8d 45 f0             	lea    -0x10(%ebp),%eax
4bb996:	8b 96 b4 00 00 00    	mov    0xb4(%esi),%edx
4bb99c:	e8 5f 8f f4 ff       	call   0x404900
4bb9a1:	8b 45 f0             	mov    -0x10(%ebp),%eax
4bb9a4:	e8 77 91 f4 ff       	call   0x404b20
4bb9a9:	85 c0                	test   %eax,%eax
4bb9ab:	0f 8e 93 00 00 00    	jle    0x4bba44
4bb9b1:	8b 43 24             	mov    0x24(%ebx),%eax
4bb9b4:	8b 10                	mov    (%eax),%edx
4bb9b6:	ff 52 50             	call   *0x50(%edx)
4bb9b9:	e8 ee c0 f6 ff       	call   0x427aac
4bb9be:	8b d0                	mov    %eax,%edx
4bb9c0:	8d 4d dc             	lea    -0x24(%ebp),%ecx
4bb9c3:	8b 86 ec 00 00 00    	mov    0xec(%esi),%eax
4bb9c9:	e8 82 a8 ff ff       	call   0x4b6250
4bb9ce:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4bb9d1:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4bb9d4:	50                   	push   %eax
4bb9d5:	8b 45 f4             	mov    -0xc(%ebp),%eax
4bb9d8:	50                   	push   %eax
4bb9d9:	e8 22 bd f4 ff       	call   0x407700
4bb9de:	89 45 e0             	mov    %eax,-0x20(%ebp)
4bb9e1:	b1 01                	mov    $0x1,%cl
4bb9e3:	8b 55 f0             	mov    -0x10(%ebp),%edx
4bb9e6:	8b 45 f4             	mov    -0xc(%ebp),%eax
4bb9e9:	e8 9e 03 fb ff       	call   0x46bd8c
4bb9ee:	8b f8                	mov    %eax,%edi
4bb9f0:	a1 94 6f 6a 00       	mov    0x6a6f94,%eax
4bb9f5:	8b 00                	mov    (%eax),%eax
4bb9f7:	ba 20 00 00 00       	mov    $0x20,%edx
4bb9fc:	8b 08                	mov    (%eax),%ecx
4bb9fe:	ff 91 80 00 00 00    	call   *0x80(%ecx)
4bba04:	03 f8                	add    %eax,%edi
4bba06:	a1 94 6f 6a 00       	mov    0x6a6f94,%eax
4bba0b:	8b 00                	mov    (%eax),%eax
4bba0d:	ba 21 00 00 00       	mov    $0x21,%edx
4bba12:	8b 08                	mov    (%eax),%ecx
4bba14:	ff 91 80 00 00 00    	call   *0x80(%ecx)
4bba1a:	03 f8                	add    %eax,%edi
4bba1c:	a1 94 6f 6a 00       	mov    0x6a6f94,%eax
4bba21:	8b 00                	mov    (%eax),%eax
4bba23:	ba 22 00 00 00       	mov    $0x22,%edx
4bba28:	8b 08                	mov    (%eax),%ecx
4bba2a:	ff 91 80 00 00 00    	call   *0x80(%ecx)
4bba30:	03 f8                	add    %eax,%edi
4bba32:	89 7d e8             	mov    %edi,-0x18(%ebp)
4bba35:	8b 45 e0             	mov    -0x20(%ebp),%eax
4bba38:	50                   	push   %eax
4bba39:	8b 45 f4             	mov    -0xc(%ebp),%eax
4bba3c:	50                   	push   %eax
4bba3d:	e8 be bc f4 ff       	call   0x407700
4bba42:	eb 0a                	jmp    0x4bba4e
4bba44:	33 c0                	xor    %eax,%eax
4bba46:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4bba49:	33 c0                	xor    %eax,%eax
4bba4b:	89 45 e8             	mov    %eax,-0x18(%ebp)
4bba4e:	8b c3                	mov    %ebx,%eax
4bba50:	e8 cf a1 ff ff       	call   0x4b5c24
4bba55:	89 45 ec             	mov    %eax,-0x14(%ebp)
4bba58:	a1 94 6f 6a 00       	mov    0x6a6f94,%eax
4bba5d:	8b 00                	mov    (%eax),%eax
4bba5f:	ba 03 00 00 00       	mov    $0x3,%edx
4bba64:	8b 08                	mov    (%eax),%ecx
4bba66:	ff 91 84 00 00 00    	call   *0x84(%ecx)
4bba6c:	84 c0                	test   %al,%al
4bba6e:	75 0b                	jne    0x4bba7b
4bba70:	8b 45 ec             	mov    -0x14(%ebp),%eax
4bba73:	03 45 e8             	add    -0x18(%ebp),%eax
4bba76:	89 45 d0             	mov    %eax,-0x30(%ebp)
4bba79:	eb 17                	jmp    0x4bba92
4bba7b:	a1 94 6f 6a 00       	mov    0x6a6f94,%eax
4bba80:	8b 00                	mov    (%eax),%eax
4bba82:	ba 42 00 00 00       	mov    $0x42,%edx
4bba87:	8b 08                	mov    (%eax),%ecx
4bba89:	ff 91 80 00 00 00    	call   *0x80(%ecx)
4bba8f:	29 45 d0             	sub    %eax,-0x30(%ebp)
4bba92:	8d 45 90             	lea    -0x70(%ebp),%eax
4bba95:	50                   	push   %eax
4bba96:	8d 4d c8             	lea    -0x38(%ebp),%ecx
4bba99:	a1 94 6f 6a 00       	mov    0x6a6f94,%eax
4bba9e:	8b 00                	mov    (%eax),%eax
4bbaa0:	8b 55 fc             	mov    -0x4(%ebp),%edx
4bbaa3:	8b 38                	mov    (%eax),%edi
4bbaa5:	ff 57 64             	call   *0x64(%edi)
4bbaa8:	a1 94 6f 6a 00       	mov    0x6a6f94,%eax
4bbaad:	8b 00                	mov    (%eax),%eax
4bbaaf:	ba 20 00 00 00       	mov    $0x20,%edx
4bbab4:	8b 08                	mov    (%eax),%ecx
4bbab6:	ff 91 80 00 00 00    	call   *0x80(%ecx)
4bbabc:	03 45 ec             	add    -0x14(%ebp),%eax
4bbabf:	01 45 c8             	add    %eax,-0x38(%ebp)
4bbac2:	a1 94 6f 6a 00       	mov    0x6a6f94,%eax
4bbac7:	8b 00                	mov    (%eax),%eax
4bbac9:	ba 42 00 00 00       	mov    $0x42,%edx
4bbace:	8b 08                	mov    (%eax),%ecx
4bbad0:	ff 91 80 00 00 00    	call   *0x80(%ecx)
4bbad6:	8b 55 f8             	mov    -0x8(%ebp),%edx
4bbad9:	8b 52 08             	mov    0x8(%edx),%edx
4bbadc:	2b d0                	sub    %eax,%edx
4bbade:	89 55 d0             	mov    %edx,-0x30(%ebp)
4bbae1:	8b 45 f0             	mov    -0x10(%ebp),%eax
4bbae4:	e8 37 90 f4 ff       	call   0x404b20