4557c4:	60                   	pusha
4557c5:	59                   	pop    %ecx
4557c6:	45                   	inc    %ebp
4557c7:	00 1c 69             	add    %bl,(%ecx,%ebp,2)
4557ca:	45                   	inc    %ebp
4557cb:	00 01                	add    %al,(%ecx)
4557cd:	00 ef                	add    %ch,%bh
4557cf:	ff 2c 69             	ljmp   *(%ecx,%ebp,2)
4557d2:	45                   	inc    %ebp
4557d3:	00 10                	add    %dl,(%eax)
4557d5:	54                   	push   %esp
4557d6:	43                   	inc    %ebx
4557d7:	75 73                	jne    0x45584c
4557d9:	74 6f                	je     0x45584a
4557db:	6d                   	insl   (%dx),%es:(%edi)
4557dc:	49                   	dec    %ecx
4557dd:	6d                   	insl   (%dx),%es:(%edi)
4557de:	61                   	popa
4557df:	67 65 4c             	addr16 gs dec %esp
4557e2:	69 73 74 8d 40 00 ec 	imul   $0xec00408d,0x74(%ebx),%esi
4557e9:	57                   	push   %edi
4557ea:	45                   	inc    %ebp
4557eb:	00 07                	add    %al,(%edi)
4557ed:	10 54 43 75          	adc    %dl,0x75(%ebx,%eax,2)
4557f1:	73 74                	jae    0x455867
4557f3:	6f                   	outsl  %ds:(%esi),(%dx)
4557f4:	6d                   	insl   (%dx),%es:(%edi)
4557f5:	49                   	dec    %ecx
4557f6:	6d                   	insl   (%dx),%es:(%edi)
4557f7:	61                   	popa
4557f8:	67 65 4c             	addr16 gs dec %esp
4557fb:	69 73 74 90 57 45 00 	imul   $0x455790,0x74(%ebx),%esi
455802:	70 a4                	jo     0x4557a8
455804:	41                   	inc    %ecx
455805:	00 02                	add    %al,(%edx)
455807:	00 07                	add    %al,(%edi)
455809:	49                   	dec    %ecx
45580a:	6d                   	insl   (%dx),%es:(%edi)
45580b:	67 4c                	addr16 dec %esp
45580d:	69 73 74 00 00 8b c0 	imul   $0xc08b0000,0x74(%ebx),%esi
455814:	e8 bf 1d fd ff       	call   0x4275d8
455819:	8b d0                	mov    %eax,%edx
45581b:	81 ea ff ff ff 1f    	sub    $0x1fffffff,%edx
455821:	74 05                	je     0x455828
455823:	4a                   	dec    %edx
455824:	74 06                	je     0x45582c
455826:	eb 09                	jmp    0x455831
455828:	83 c8 ff             	or     $0xffffffff,%eax
45582b:	c3                   	ret
45582c:	b8 00 00 00 ff       	mov    $0xff000000,%eax
455831:	c3                   	ret
455832:	8b c0                	mov    %eax,%eax
455834:	8b d0                	mov    %eax,%edx
455836:	81 ea 00 00 00 ff    	sub    $0xff000000,%edx
45583c:	74 0e                	je     0x45584c
45583e:	81 ea ff ff ff 00    	sub    $0xffffff,%edx
455844:	75 0b                	jne    0x455851
455846:	b8 ff ff ff 1f       	mov    $0x1fffffff,%eax
45584b:	c3                   	ret
45584c:	b8 00 00 00 20       	mov    $0x20000000,%eax
455851:	c3                   	ret
455852:	8b c0                	mov    %eax,%eax
455854:	53                   	push   %ebx
455855:	56                   	push   %esi
455856:	84 d2                	test   %dl,%dl
455858:	74 08                	je     0x455862
45585a:	83 c4 f0             	add    $0xfffffff0,%esp
45585d:	e8 7a e5 fa ff       	call   0x403ddc
455862:	8b da                	mov    %edx,%ebx
455864:	8b f0                	mov    %eax,%esi
455866:	33 d2                	xor    %edx,%edx
455868:	8b c6                	mov    %esi,%eax
45586a:	e8 e9 ed fc ff       	call   0x424658
45586f:	c7 46 34 10 00 00 00 	movl   $0x10,0x34(%esi)
455876:	c7 46 30 10 00 00 00 	movl   $0x10,0x30(%esi)
45587d:	8b c6                	mov    %esi,%eax
45587f:	8b 10                	mov    (%eax),%edx
455881:	ff 52 34             	call   *0x34(%edx)
455884:	8b c6                	mov    %esi,%eax
455886:	84 db                	test   %bl,%bl
455888:	74 0f                	je     0x455899
45588a:	e8 a5 e5 fa ff       	call   0x403e34
45588f:	64 8f 05 00 00 00 00 	pop    %fs:0x0
455896:	83 c4 0c             	add    $0xc,%esp
455899:	8b c6                	mov    %esi,%eax
45589b:	5e                   	pop    %esi
45589c:	5b                   	pop    %ebx
45589d:	c3                   	ret
45589e:	8b c0                	mov    %eax,%eax
4558a0:	55                   	push   %ebp
4558a1:	8b ec                	mov    %esp,%ebp
4558a3:	53                   	push   %ebx
4558a4:	56                   	push   %esi
4558a5:	57                   	push   %edi
4558a6:	84 d2                	test   %dl,%dl
4558a8:	74 08                	je     0x4558b2
4558aa:	83 c4 f0             	add    $0xfffffff0,%esp
4558ad:	e8 2a e5 fa ff       	call   0x403ddc
4558b2:	8b f1                	mov    %ecx,%esi
4558b4:	8b da                	mov    %edx,%ebx
4558b6:	8b f8                	mov    %eax,%edi
4558b8:	33 c9                	xor    %ecx,%ecx
4558ba:	33 d2                	xor    %edx,%edx
4558bc:	8b c7                	mov    %edi,%eax
4558be:	e8 95 ed fc ff       	call   0x424658
4558c3:	89 77 34             	mov    %esi,0x34(%edi)
4558c6:	8b 45 08             	mov    0x8(%ebp),%eax
4558c9:	89 47 30             	mov    %eax,0x30(%edi)
4558cc:	8b c7                	mov    %edi,%eax
4558ce:	8b 10                	mov    (%eax),%edx
4558d0:	ff 52 34             	call   *0x34(%edx)
4558d3:	8b c7                	mov    %edi,%eax
4558d5:	84 db                	test   %bl,%bl
4558d7:	74 0f                	je     0x4558e8
4558d9:	e8 56 e5 fa ff       	call   0x403e34
4558de:	64 8f 05 00 00 00 00 	pop    %fs:0x0
4558e5:	83 c4 0c             	add    $0xc,%esp
4558e8:	8b c7                	mov    %edi,%eax
4558ea:	5f                   	pop    %edi
4558eb:	5e                   	pop    %esi
4558ec:	5b                   	pop    %ebx
4558ed:	5d                   	pop    %ebp
4558ee:	c2 04 00             	ret    $0x4
4558f1:	8d 40 00             	lea    0x0(%eax),%eax
4558f4:	53                   	push   %ebx
4558f5:	56                   	push   %esi
4558f6:	57                   	push   %edi
4558f7:	e8 48 e5 fa ff       	call   0x403e44
4558fc:	8b da                	mov    %edx,%ebx
4558fe:	8b f8                	mov    %eax,%edi
455900:	eb 10                	jmp    0x455912
455902:	8b c6                	mov    %esi,%eax
455904:	e8 9f 65 fc ff       	call   0x41bea8
455909:	8b d0                	mov    %eax,%edx
45590b:	8b c7                	mov    %edi,%eax
45590d:	e8 6a 10 00 00       	call   0x45697c
455912:	8b 77 4c             	mov    0x4c(%edi),%esi
455915:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
455919:	7f e7                	jg     0x455902
45591b:	8b 47 50             	mov    0x50(%edi),%eax
45591e:	e8 55 e1 fa ff       	call   0x403a78
455923:	8b c7                	mov    %edi,%eax
455925:	e8 26 03 00 00       	call   0x455c50
45592a:	8b 47 4c             	mov    0x4c(%edi),%eax
45592d:	e8 46 e1 fa ff       	call   0x403a78
455932:	33 c0                	xor    %eax,%eax
455934:	89 47 4c             	mov    %eax,0x4c(%edi)
455937:	8b 47 54             	mov    0x54(%edi),%eax
45593a:	85 c0                	test   %eax,%eax
45593c:	74 05                	je     0x455943
45593e:	e8 35 e1 fa ff       	call   0x403a78
455943:	8b d3                	mov    %ebx,%edx
455945:	80 e2 fc             	and    $0xfc,%dl
455948:	8b c7                	mov    %edi,%eax
45594a:	e8 55 ed fc ff       	call   0x4246a4
45594f:	84 db                	test   %bl,%bl
455951:	7e 07                	jle    0x45595a
455953:	8b c7                	mov    %edi,%eax
455955:	e8 d2 e4 fa ff       	call   0x403e2c
45595a:	5f                   	pop    %edi
45595b:	5e                   	pop    %esi
45595c:	5b                   	pop    %ebx
45595d:	c3                   	ret
45595e:	8b c0                	mov    %eax,%eax
455960:	55                   	push   %ebp
455961:	8b ec                	mov    %esp,%ebp
455963:	6a 00                	push   $0x0
455965:	53                   	push   %ebx
455966:	8b d8                	mov    %eax,%ebx
455968:	33 c0                	xor    %eax,%eax
45596a:	55                   	push   %ebp
45596b:	68 0d 5a 45 00       	push   $0x455a0d
455970:	64 ff 30             	push   %fs:(%eax)
455973:	64 89 20             	mov    %esp,%fs:(%eax)
455976:	b2 01                	mov    $0x1,%dl
455978:	a1 24 94 41 00       	mov    0x419424,%eax
45597d:	e8 c6 e0 fa ff       	call   0x403a48
455982:	89 43 4c             	mov    %eax,0x4c(%ebx)
455985:	8b 43 30             	mov    0x30(%ebx),%eax
455988:	83 f8 01             	cmp    $0x1,%eax
45598b:	7c 0d                	jl     0x45599a
45598d:	3d 00 80 00 00       	cmp    $0x8000,%eax
455992:	7f 06                	jg     0x45599a
455994:	83 7b 34 01          	cmpl   $0x1,0x34(%ebx)
455998:	7d 21                	jge    0x4559bb
45599a:	8d 55 fc             	lea    -0x4(%ebp),%edx
45599d:	a1 a0 6d 6a 00       	mov    0x6a6da0,%eax
4559a2:	e8 75 13 fb ff       	call   0x406d1c
4559a7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4559aa:	b2 01                	mov    $0x1,%dl
4559ac:	a1 c4 93 41 00       	mov    0x4193c4,%eax
4559b1:	e8 92 74 fb ff       	call   0x40ce48
4559b6:	e8 89 e8 fa ff       	call   0x404244
4559bb:	c7 43 38 04 00 00 00 	movl   $0x4,0x38(%ebx)
4559c2:	c6 43 41 01          	movb   $0x1,0x41(%ebx)
4559c6:	b2 02                	mov    $0x2,%dl
4559c8:	8b c3                	mov    %ebx,%eax
4559ca:	e8 35 0f 00 00       	call   0x456904
4559cf:	c6 43 43 00          	movb   $0x0,0x43(%ebx)
4559d3:	c7 43 44 ff ff ff 1f 	movl   $0x1fffffff,0x44(%ebx)
4559da:	c7 43 48 ff ff ff 1f 	movl   $0x1fffffff,0x48(%ebx)
4559e1:	b2 01                	mov    $0x1,%dl
4559e3:	a1 ec 6a 42 00       	mov    0x426aec,%eax
4559e8:	e8 e3 77 fd ff       	call   0x42d1d0
4559ed:	89 43 50             	mov    %eax,0x50(%ebx)
4559f0:	8b c3                	mov    %ebx,%eax
4559f2:	e8 35 00 00 00       	call   0x455a2c
4559f7:	33 c0                	xor    %eax,%eax
4559f9:	5a                   	pop    %edx
4559fa:	59                   	pop    %ecx
4559fb:	59                   	pop    %ecx
4559fc:	64 89 10             	mov    %edx,%fs:(%eax)
4559ff:	68 14 5a 45 00       	push   $0x455a14
455a04:	8d 45 fc             	lea    -0x4(%ebp),%eax
455a07:	e8 5c ee fa ff       	call   0x404868
455a0c:	c3                   	ret
455a0d:	e9 fa e7 fa ff       	jmp    0x40420c
455a12:	eb f0                	jmp    0x455a04
455a14:	5b                   	pop    %ebx
455a15:	59                   	pop    %ecx
455a16:	5d                   	pop    %ebp
455a17:	c3                   	ret
455a18:	83 78 3c 00          	cmpl   $0x0,0x3c(%eax)
455a1c:	0f 95 c0             	setne  %al
455a1f:	c3                   	ret
455a20:	83 78 3c 00          	cmpl   $0x0,0x3c(%eax)
455a24:	75 05                	jne    0x455a2b
455a26:	e8 5d 02 00 00       	call   0x455c88
455a2b:	c3                   	ret
455a2c:	55                   	push   %ebp
455a2d:	8b ec                	mov    %esp,%ebp
455a2f:	83 c4 e8             	add    $0xffffffe8,%esp
455a32:	53                   	push   %ebx
455a33:	89 45 fc             	mov    %eax,-0x4(%ebp)
455a36:	6a 00                	push   $0x0
455a38:	e8 d3 1f fb ff       	call   0x407a10
455a3d:	89 45 f8             	mov    %eax,-0x8(%ebp)
455a40:	33 c0                	xor    %eax,%eax
455a42:	55                   	push   %ebp
455a43:	68 cd 5a 45 00       	push   $0x455acd
455a48:	64 ff 30             	push   %fs:(%eax)
455a4b:	64 89 20             	mov    %esp,%fs:(%eax)
455a4e:	8b 45 fc             	mov    -0x4(%ebp),%eax
455a51:	8b 58 50             	mov    0x50(%eax),%ebx
455a54:	8b 45 fc             	mov    -0x4(%ebp),%eax
455a57:	8b 40 30             	mov    0x30(%eax),%eax
455a5a:	50                   	push   %eax
455a5b:	8b 45 fc             	mov    -0x4(%ebp),%eax
455a5e:	8b 40 34             	mov    0x34(%eax),%eax
455a61:	50                   	push   %eax
455a62:	8b 45 f8             	mov    -0x8(%ebp),%eax
455a65:	50                   	push   %eax
455a66:	e8 fd 19 fb ff       	call   0x407468
455a6b:	8b d0                	mov    %eax,%edx
455a6d:	8b c3                	mov    %ebx,%eax
455a6f:	e8 90 89 fd ff       	call   0x42e404
455a74:	8b c3                	mov    %ebx,%eax
455a76:	e8 1d 7d fd ff       	call   0x42d798
455a7b:	8b 40 14             	mov    0x14(%eax),%eax
455a7e:	33 d2                	xor    %edx,%edx
455a80:	e8 ff 27 fd ff       	call   0x428284
455a85:	8b c3                	mov    %ebx,%eax
455a87:	8b 10                	mov    (%eax),%edx
455a89:	ff 52 20             	call   *0x20(%edx)
455a8c:	50                   	push   %eax
455a8d:	8d 45 e8             	lea    -0x18(%ebp),%eax
455a90:	50                   	push   %eax
455a91:	8b c3                	mov    %ebx,%eax
455a93:	8b 10                	mov    (%eax),%edx
455a95:	ff 52 2c             	call   *0x2c(%edx)
455a98:	8b c8                	mov    %eax,%ecx
455a9a:	33 d2                	xor    %edx,%edx
455a9c:	33 c0                	xor    %eax,%eax
455a9e:	e8 d1 4b fc ff       	call   0x41a674
455aa3:	8d 45 e8             	lea    -0x18(%ebp),%eax
455aa6:	50                   	push   %eax
455aa7:	8b c3                	mov    %ebx,%eax
455aa9:	e8 ea 7c fd ff       	call   0x42d798
455aae:	5a                   	pop    %edx
455aaf:	e8 48 2c fd ff       	call   0x4286fc
455ab4:	33 c0                	xor    %eax,%eax
455ab6:	5a                   	pop    %edx
455ab7:	59                   	pop    %ecx
455ab8:	59                   	pop    %ecx
455ab9:	64 89 10             	mov    %edx,%fs:(%eax)
455abc:	68 d4 5a 45 00       	push   $0x455ad4
455ac1:	8b 45 f8             	mov    -0x8(%ebp),%eax
455ac4:	50                   	push   %eax
455ac5:	6a 00                	push   $0x0
455ac7:	e8 0c 22 fb ff       	call   0x407cd8
455acc:	c3                   	ret
455acd:	e9 3a e7 fa ff       	jmp    0x40420c
455ad2:	eb ed                	jmp    0x455ac1
455ad4:	8b 45 fc             	mov    -0x4(%ebp),%eax
455ad7:	8b 40 54             	mov    0x54(%eax),%eax
455ada:	85 c0                	test   %eax,%eax
455adc:	74 0d                	je     0x455aeb
455ade:	e8 95 df fa ff       	call   0x403a78
455ae3:	8b 45 fc             	mov    -0x4(%ebp),%eax
455ae6:	33 d2                	xor    %edx,%edx
455ae8:	89 50 54             	mov    %edx,0x54(%eax)
455aeb:	5b                   	pop    %ebx
455aec:	8b e5                	mov    %ebp,%esp
455aee:	5d                   	pop    %ebp
455aef:	c3                   	ret
455af0:	53                   	push   %ebx
455af1:	83 c4 f8             	add    $0xfffffff8,%esp
455af4:	8b d8                	mov    %eax,%ebx
455af6:	8b 43 34             	mov    0x34(%ebx),%eax
455af9:	89 44 24 04          	mov    %eax,0x4(%esp)
455afd:	8b 43 30             	mov    0x30(%ebx),%eax
455b00:	89 04 24             	mov    %eax,(%esp)
455b03:	54                   	push   %esp
455b04:	8d 44 24 08          	lea    0x8(%esp),%eax
455b08:	50                   	push   %eax
455b09:	52                   	push   %edx
455b0a:	e8 b9 a3 fd ff       	call   0x42fec8
455b0f:	8b 44 24 04          	mov    0x4(%esp),%eax
455b13:	89 43 34             	mov    %eax,0x34(%ebx)
455b16:	8b 04 24             	mov    (%esp),%eax
455b19:	89 43 30             	mov    %eax,0x30(%ebx)
455b1c:	8b c3                	mov    %ebx,%eax
455b1e:	e8 09 ff ff ff       	call   0x455a2c
455b23:	59                   	pop    %ecx
455b24:	5a                   	pop    %edx
455b25:	5b                   	pop    %ebx
455b26:	c3                   	ret
455b27:	90                   	nop
455b28:	56                   	push   %esi
455b29:	8b f0                	mov    %eax,%esi
455b2b:	3b 56 34             	cmp    0x34(%esi),%edx
455b2e:	74 38                	je     0x455b68
455b30:	89 56 34             	mov    %edx,0x34(%esi)
455b33:	8b c6                	mov    %esi,%eax
455b35:	e8 de fe ff ff       	call   0x455a18
455b3a:	84 c0                	test   %al,%al
455b3c:	74 11                	je     0x455b4f
455b3e:	8b 46 30             	mov    0x30(%esi),%eax
455b41:	50                   	push   %eax
455b42:	8b 46 34             	mov    0x34(%esi),%eax
455b45:	50                   	push   %eax
455b46:	8b 46 3c             	mov    0x3c(%esi),%eax
455b49:	50                   	push   %eax
455b4a:	e8 81 a3 fd ff       	call   0x42fed0
455b4f:	8b c6                	mov    %esi,%eax
455b51:	e8 5e 07 00 00       	call   0x4562b4
455b56:	8b c6                	mov    %esi,%eax
455b58:	e8 cf fe ff ff       	call   0x455a2c
455b5d:	8b c6                	mov    %esi,%eax
455b5f:	66 be ef ff          	mov    $0xffef,%si