5447e7:	84 c0                	test   %al,%al
5447e9:	78 0d                	js     0x5447f8
5447eb:	53                   	push   %ebx
5447ec:	e8 5f 87 00 00       	call   0x54cf50
5447f1:	83 c4 04             	add    $0x4,%esp
5447f4:	85 c0                	test   %eax,%eax
5447f6:	75 2f                	jne    0x544827
5447f8:	52                   	push   %edx
5447f9:	53                   	push   %ebx
5447fa:	68 40 1b 6b 00       	push   $0x6b1b40
5447ff:	e8 0c 85 00 00       	call   0x54cd10
544804:	83 c4 0c             	add    $0xc,%esp
544807:	8b b5 98 fe ff ff    	mov    -0x168(%ebp),%esi
54480d:	8b 8d 9c fe ff ff    	mov    -0x164(%ebp),%ecx
544813:	83 c6 14             	add    $0x14,%esi
544816:	8b bd 4c fe ff ff    	mov    -0x1b4(%ebp),%edi
54481c:	8b 9d 1c fe ff ff    	mov    -0x1e4(%ebp),%ebx
544822:	e9 8d e0 ff ff       	jmp    0x5428b4
544827:	52                   	push   %edx
544828:	50                   	push   %eax
544829:	8b 85 30 fe ff ff    	mov    -0x1d0(%ebp),%eax
54482f:	ff 34 81             	push   (%ecx,%eax,4)
544832:	ff 76 28             	push   0x28(%esi)
544835:	e8 46 6c 00 00       	call   0x54b480
54483a:	83 c4 10             	add    $0x10,%esp
54483d:	89 85 94 fe ff ff    	mov    %eax,-0x16c(%ebp)
544843:	85 c0                	test   %eax,%eax
544845:	0f 85 b3 46 00 00    	jne    0x548efe
54484b:	8b b5 80 fe ff ff    	mov    -0x180(%ebp),%esi
544851:	56                   	push   %esi
544852:	53                   	push   %ebx
544853:	ff 76 10             	push   0x10(%esi)
544856:	e8 b5 84 00 00       	call   0x54cd10
54485b:	b8 ff ef 00 00       	mov    $0xefff,%eax
544860:	83 c4 0c             	add    $0xc,%esp
544863:	66 21 46 08          	and    %ax,0x8(%esi)
544867:	8b b5 98 fe ff ff    	mov    -0x168(%ebp),%esi
54486d:	8b 8d 9c fe ff ff    	mov    -0x164(%ebp),%ecx
544873:	83 c6 14             	add    $0x14,%esi
544876:	8b bd 4c fe ff ff    	mov    -0x1b4(%ebp),%edi
54487c:	8b 9d 1c fe ff ff    	mov    -0x1e4(%ebp),%ebx
544882:	e9 2d e0 ff ff       	jmp    0x5428b4
544887:	8b 95 98 fe ff ff    	mov    -0x168(%ebp),%edx
54488d:	8b 8d 8c fe ff ff    	mov    -0x174(%ebp),%ecx
544893:	8b 42 04             	mov    0x4(%edx),%eax
544896:	8b 7a 10             	mov    0x10(%edx),%edi
544899:	8d 04 80             	lea    (%eax,%eax,4),%eax
54489c:	8d 34 c1             	lea    (%ecx,%eax,8),%esi
54489f:	90                   	nop
5448a0:	ff b5 60 fe ff ff    	push   -0x1a0(%ebp)
5448a6:	0f b6 07             	movzbl (%edi),%eax
5448a9:	50                   	push   %eax
5448aa:	56                   	push   %esi
5448ab:	e8 30 f2 fa ff       	call   0x4f3ae0
5448b0:	83 c4 0c             	add    $0xc,%esp
5448b3:	80 3f 45             	cmpb   $0x45,(%edi)
5448b6:	75 4c                	jne    0x544904
5448b8:	0f b7 5e 08          	movzwl 0x8(%esi),%ebx
5448bc:	f6 c3 04             	test   $0x4,%bl
5448bf:	74 43                	je     0x544904
5448c1:	8b 56 04             	mov    0x4(%esi),%edx
5448c4:	8b 0e                	mov    (%esi),%ecx
5448c6:	81 fa ff 7f 00 00    	cmp    $0x7fff,%edx
5448cc:	7f 20                	jg     0x5448ee
5448ce:	7c 05                	jl     0x5448d5
5448d0:	83 f9 ff             	cmp    $0xffffffff,%ecx
5448d3:	77 19                	ja     0x5448ee
5448d5:	81 fa 00 80 ff ff    	cmp    $0xffff8000,%edx
5448db:	7c 11                	jl     0x5448ee
5448dd:	7f 04                	jg     0x5448e3
5448df:	85 c9                	test   %ecx,%ecx
5448e1:	72 0b                	jb     0x5448ee
5448e3:	81 e3 fb ff 00 00    	and    $0xfffb,%ebx
5448e9:	83 cb 20             	or     $0x20,%ebx
5448ec:	eb 12                	jmp    0x544900
5448ee:	e8 ad cf 09 00       	call   0x5e18a0
5448f3:	81 e3 fb ff 00 00    	and    $0xfffb,%ebx
5448f9:	f2 0f 11 06          	movsd  %xmm0,(%esi)
5448fd:	83 cb 08             	or     $0x8,%ebx
544900:	66 89 5e 08          	mov    %bx,0x8(%esi)
544904:	47                   	inc    %edi
544905:	80 3f 00             	cmpb   $0x0,(%edi)
544908:	0f 84 58 e2 ff ff    	je     0x542b66
54490e:	83 c6 28             	add    $0x28,%esi
544911:	eb 8d                	jmp    0x5448a0
544913:	8b 95 98 fe ff ff    	mov    -0x168(%ebp),%edx
544919:	0f 57 c0             	xorps  %xmm0,%xmm0
54491c:	8b b5 8c fe ff ff    	mov    -0x174(%ebp),%esi
544922:	66 0f 13 85 58 fe ff 	movlpd %xmm0,-0x1a8(%ebp)
544929:	ff
54492a:	c7 85 68 fe ff ff 00 	movl   $0x0,-0x198(%ebp)
544931:	00 00 00
544934:	8b 42 04             	mov    0x4(%edx),%eax
544937:	8b 5a 10             	mov    0x10(%edx),%ebx
54493a:	66 0f 13 85 44 fe ff 	movlpd %xmm0,-0x1bc(%ebp)
544941:	ff
544942:	8d 04 80             	lea    (%eax,%eax,4),%eax
544945:	8d 0c c6             	lea    (%esi,%eax,8),%ecx
544948:	8b 42 08             	mov    0x8(%edx),%eax
54494b:	89 8d 88 fe ff ff    	mov    %ecx,-0x178(%ebp)
544951:	8d 04 80             	lea    (%eax,%eax,4),%eax
544954:	8d 40 fb             	lea    -0x5(%eax),%eax
544957:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
54495a:	89 85 70 fe ff ff    	mov    %eax,-0x190(%ebp)
544960:	8b 85 9c fe ff ff    	mov    -0x164(%ebp),%eax
544966:	0f b6 80 93 00 00 00 	movzbl 0x93(%eax),%eax
54496d:	89 85 78 fe ff ff    	mov    %eax,-0x188(%ebp)
544973:	8b 42 0c             	mov    0xc(%edx),%eax
544976:	8d 04 80             	lea    (%eax,%eax,4),%eax
544979:	8d 04 c6             	lea    (%esi,%eax,8),%eax
54497c:	89 85 40 fe ff ff    	mov    %eax,-0x1c0(%ebp)
544982:	85 db                	test   %ebx,%ebx
544984:	74 40                	je     0x5449c6
544986:	8d 71 08             	lea    0x8(%ecx),%esi
544989:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
544990:	ff b5 60 fe ff ff    	push   -0x1a0(%ebp)
544996:	0f b6 03             	movzbl (%ebx),%eax
544999:	50                   	push   %eax
54499a:	8d 46 f8             	lea    -0x8(%esi),%eax
54499d:	50                   	push   %eax
54499e:	e8 3d f1 fa ff       	call   0x4f3ae0
5449a3:	83 c4 0c             	add    $0xc,%esp
5449a6:	80 3b 45             	cmpb   $0x45,(%ebx)
5449a9:	75 12                	jne    0x5449bd
5449ab:	0f b7 06             	movzwl (%esi),%eax
5449ae:	a8 04                	test   $0x4,%al
5449b0:	74 0b                	je     0x5449bd
5449b2:	25 fb ff 00 00       	and    $0xfffb,%eax
5449b7:	83 c8 20             	or     $0x20,%eax
5449ba:	66 89 06             	mov    %ax,(%esi)
5449bd:	43                   	inc    %ebx
5449be:	83 c6 28             	add    $0x28,%esi
5449c1:	80 3b 00             	cmpb   $0x0,(%ebx)
5449c4:	75 ca                	jne    0x544990
5449c6:	8b 85 48 fe ff ff    	mov    -0x1b8(%ebp),%eax
5449cc:	8b 8d 5c fe ff ff    	mov    -0x1a4(%ebp),%ecx
5449d2:	8b b5 70 fe ff ff    	mov    -0x190(%ebp),%esi
5449d8:	8b 95 58 fe ff ff    	mov    -0x1a8(%ebp),%edx
5449de:	83 c6 1c             	add    $0x1c,%esi
5449e1:	89 85 5c fe ff ff    	mov    %eax,-0x1a4(%ebp)
5449e7:	8b 85 44 fe ff ff    	mov    -0x1bc(%ebp),%eax
5449ed:	89 8d 7c fe ff ff    	mov    %ecx,-0x184(%ebp)
5449f3:	89 95 80 fe ff ff    	mov    %edx,-0x180(%ebp)
5449f9:	89 85 48 fe ff ff    	mov    %eax,-0x1b8(%ebp)
5449ff:	90                   	nop
544a00:	0f b7 5e ec          	movzwl -0x14(%esi),%ebx
544a04:	f6 c3 01             	test   $0x1,%bl
544a07:	74 1b                	je     0x544a24
544a09:	81 e3 00 40 00 00    	and    $0x4000,%ebx
544a0f:	f7 db                	neg    %ebx
544a11:	1b db                	sbb    %ebx,%ebx
544a13:	83 e3 0a             	and    $0xa,%ebx
544a16:	89 1e                	mov    %ebx,(%esi)
544a18:	8b 9d 68 fe ff ff    	mov    -0x198(%ebp),%ebx
544a1e:	43                   	inc    %ebx
544a1f:	e9 d7 02 00 00       	jmp    0x544cfb
544a24:	f6 c3 24             	test   $0x24,%bl
544a27:	0f 84 dc 01 00 00    	je     0x544c09
544a2d:	83 7e e8 00          	cmpl   $0x0,-0x18(%esi)
544a31:	8b 46 e4             	mov    -0x1c(%esi),%eax
544a34:	7f 15                	jg     0x544a4b
544a36:	7c 04                	jl     0x544a3c
544a38:	85 c0                	test   %eax,%eax
544a3a:	73 0f                	jae    0x544a4b
544a3c:	f7 d0                	not    %eax
544a3e:	89 85 84 fe ff ff    	mov    %eax,-0x17c(%ebp)
544a44:	8b 46 e8             	mov    -0x18(%esi),%eax
544a47:	f7 d0                	not    %eax
544a49:	eb 09                	jmp    0x544a54
544a4b:	89 85 84 fe ff ff    	mov    %eax,-0x17c(%ebp)
544a51:	8b 46 e8             	mov    -0x18(%esi),%eax
544a54:	ff 85 68 fe ff ff    	incl   -0x198(%ebp)
544a5a:	85 c0                	test   %eax,%eax
544a5c:	0f 87 10 01 00 00    	ja     0x544b72
544a62:	72 09                	jb     0x544a6d
544a64:	83 bd 84 fe ff ff 7f 	cmpl   $0x7f,-0x17c(%ebp)
544a6b:	77 62                	ja     0x544acf
544a6d:	8b 46 e4             	mov    -0x1c(%esi),%eax
544a70:	83 e0 01             	and    $0x1,%eax
544a73:	c7 85 54 fe ff ff 00 	movl   $0x0,-0x1ac(%ebp)
544a7a:	00 00 00
544a7d:	3b 46 e4             	cmp    -0x1c(%esi),%eax
544a80:	75 2a                	jne    0x544aac
544a82:	8b 85 54 fe ff ff    	mov    -0x1ac(%ebp),%eax
544a88:	3b 46 e8             	cmp    -0x18(%esi),%eax
544a8b:	75 1f                	jne    0x544aac
544a8d:	83 bd 78 fe ff ff 04 	cmpl   $0x4,-0x188(%ebp)
544a94:	72 16                	jb     0x544aac
544a96:	8b 85 84 fe ff ff    	mov    -0x17c(%ebp),%eax
544a9c:	8b 9d 68 fe ff ff    	mov    -0x198(%ebp),%ebx
544aa2:	83 c0 08             	add    $0x8,%eax
544aa5:	89 06                	mov    %eax,(%esi)
544aa7:	e9 55 02 00 00       	jmp    0x544d01
544aac:	8b 9d 68 fe ff ff    	mov    -0x198(%ebp),%ebx
544ab2:	83 c2 01             	add    $0x1,%edx
544ab5:	89 95 80 fe ff ff    	mov    %edx,-0x180(%ebp)
544abb:	83 d1 00             	adc    $0x0,%ecx
544abe:	c7 06 01 00 00 00    	movl   $0x1,(%esi)
544ac4:	89 8d 7c fe ff ff    	mov    %ecx,-0x184(%ebp)
544aca:	e9 32 02 00 00       	jmp    0x544d01
544acf:	85 c0                	test   %eax,%eax
544ad1:	0f 87 9b 00 00 00    	ja     0x544b72
544ad7:	72 0c                	jb     0x544ae5
544ad9:	81 bd 84 fe ff ff ff 	cmpl   $0x7fff,-0x17c(%ebp)
544ae0:	7f 00 00
544ae3:	77 23                	ja     0x544b08
544ae5:	8b 9d 68 fe ff ff    	mov    -0x198(%ebp),%ebx
544aeb:	83 c2 02             	add    $0x2,%edx
544aee:	89 95 80 fe ff ff    	mov    %edx,-0x180(%ebp)
544af4:	83 d1 00             	adc    $0x0,%ecx
544af7:	c7 06 02 00 00 00    	movl   $0x2,(%esi)
544afd:	89 8d 7c fe ff ff    	mov    %ecx,-0x184(%ebp)
544b03:	e9 f9 01 00 00       	jmp    0x544d01
544b08:	85 c0                	test   %eax,%eax
544b0a:	77 66                	ja     0x544b72
544b0c:	72 0c                	jb     0x544b1a
544b0e:	81 bd 84 fe ff ff ff 	cmpl   $0x7fffff,-0x17c(%ebp)
544b15:	ff 7f 00
544b18:	77 23                	ja     0x544b3d
544b1a:	8b 9d 68 fe ff ff    	mov    -0x198(%ebp),%ebx
544b20:	83 c2 03             	add    $0x3,%edx
544b23:	89 95 80 fe ff ff    	mov    %edx,-0x180(%ebp)
544b29:	83 d1 00             	adc    $0x0,%ecx
544b2c:	c7 06 03 00 00 00    	movl   $0x3,(%esi)
544b32:	89 8d 7c fe ff ff    	mov    %ecx,-0x184(%ebp)
544b38:	e9 c4 01 00 00       	jmp    0x544d01
544b3d:	85 c0                	test   %eax,%eax
544b3f:	77 31                	ja     0x544b72
544b41:	72 0c                	jb     0x544b4f
544b43:	81 bd 84 fe ff ff ff 	cmpl   $0x7fffffff,-0x17c(%ebp)
544b4a:	ff ff 7f
544b4d:	77 23                	ja     0x544b72
544b4f:	8b 9d 68 fe ff ff    	mov    -0x198(%ebp),%ebx
544b55:	83 c2 04             	add    $0x4,%edx
544b58:	89 95 80 fe ff ff    	mov    %edx,-0x180(%ebp)
544b5e:	83 d1 00             	adc    $0x0,%ecx
544b61:	c7 06 04 00 00 00    	movl   $0x4,(%esi)
544b67:	89 8d 7c fe ff ff    	mov    %ecx,-0x184(%ebp)
544b6d:	e9 8f 01 00 00       	jmp    0x544d01
544b72:	3d ff 7f 00 00       	cmp    $0x7fff,%eax
544b77:	77 2e                	ja     0x544ba7
544b79:	72 09                	jb     0x544b84
544b7b:	83 bd 84 fe ff ff ff 	cmpl   $0xffffffff,-0x17c(%ebp)
544b82:	77 23                	ja     0x544ba7
544b84:	8b 9d 68 fe ff ff    	mov    -0x198(%ebp),%ebx
544b8a:	83 c2 06             	add    $0x6,%edx
544b8d:	89 95 80 fe ff ff    	mov    %edx,-0x180(%ebp)
544b93:	83 d1 00             	adc    $0x0,%ecx
544b96:	c7 06 05 00 00 00    	movl   $0x5,(%esi)
544b9c:	89 8d 7c fe ff ff    	mov    %ecx,-0x184(%ebp)
544ba2:	e9 5a 01 00 00       	jmp    0x544d01
544ba7:	83 c2 08             	add    $0x8,%edx
544baa:	89 95 80 fe ff ff    	mov    %edx,-0x180(%ebp)
544bb0:	83 d1 00             	adc    $0x0,%ecx
544bb3:	89 8d 7c fe ff ff    	mov    %ecx,-0x184(%ebp)
544bb9:	f6 c3 20             	test   $0x20,%bl
544bbc:	74 3a                	je     0x544bf8
544bbe:	8b 56 e8             	mov    -0x18(%esi),%edx
544bc1:	8b 4e e4             	mov    -0x1c(%esi),%ecx
544bc4:	e8 d7 cc 09 00       	call   0x5e18a0
544bc9:	8b 8d 7c fe ff ff    	mov    -0x184(%ebp),%ecx
544bcf:	81 e3 df ff 00 00    	and    $0xffdf,%ebx
544bd5:	8b 95 80 fe ff ff    	mov    -0x180(%ebp),%edx
544bdb:	83 cb 08             	or     $0x8,%ebx
544bde:	66 89 5e ec          	mov    %bx,-0x14(%esi)
544be2:	8b 9d 68 fe ff ff    	mov    -0x198(%ebp),%ebx
544be8:	f2 0f 11 46 e4       	movsd  %xmm0,-0x1c(%esi)
544bed:	c7 06 07 00 00 00    	movl   $0x7,(%esi)
544bf3:	e9 09 01 00 00       	jmp    0x544d01
544bf8:	8b 9d 68 fe ff ff    	mov    -0x198(%ebp),%ebx
544bfe:	c7 06 06 00 00 00    	movl   $0x6,(%esi)
544c04:	e9 f8 00 00 00       	jmp    0x544d01
544c09:	f6 c3 08             	test   $0x8,%bl
544c0c:	74 24                	je     0x544c32
544c0e:	8b 9d 68 fe ff ff    	mov    -0x198(%ebp),%ebx
544c14:	43                   	inc    %ebx
544c15:	c7 06 07 00 00 00    	movl   $0x7,(%esi)
544c1b:	83 c2 08             	add    $0x8,%edx
544c1e:	89 95 80 fe ff ff    	mov    %edx,-0x180(%ebp)
544c24:	83 d1 00             	adc    $0x0,%ecx
544c27:	89 8d 7c fe ff ff    	mov    %ecx,-0x184(%ebp)
544c2d:	e9 c9 00 00 00       	jmp    0x544cfb
544c32:	8b 46 f0             	mov    -0x10(%esi),%eax
544c35:	89 85 54 fe ff ff    	mov    %eax,-0x1ac(%ebp)
544c3b:	8b c3                	mov    %ebx,%eax
544c3d:	8b bd 54 fe ff ff    	mov    -0x1ac(%ebp),%edi
544c43:	d1 e8                	shr    $1,%eax
544c45:	83 e0 01             	and    $0x1,%eax
544c48:	8d 04 78             	lea    (%eax,%edi,2),%eax
544c4b:	8b bd 4c fe ff ff    	mov    -0x1b4(%ebp),%edi
544c51:	83 c0 0c             	add    $0xc,%eax
544c54:	89 85 84 fe ff ff    	mov    %eax,-0x17c(%ebp)
544c5a:	f7 c3 00 40 00 00    	test   $0x4000,%ebx
544c60:	74 5d                	je     0x544cbf
544c62:	8b 7e e4             	mov    -0x1c(%esi),%edi
544c65:	8d 5e e4             	lea    -0x1c(%esi),%ebx
544c68:	8d 04 78             	lea    (%eax,%edi,2),%eax
544c6b:	8b bd 4c fe ff ff    	mov    -0x1b4(%ebp),%edi
544c71:	89 85 84 fe ff ff    	mov    %eax,-0x17c(%ebp)
544c77:	8b c2                	mov    %edx,%eax
544c79:	0b c1                	or     %ecx,%eax
544c7b:	74 27                	je     0x544ca4
544c7d:	53                   	push   %ebx
544c7e:	e8 fd 66 00 00       	call   0x54b380
544c83:	83 c4 04             	add    $0x4,%esp
544c86:	85 c0                	test   %eax,%eax
544c88:	0f 85 46 43 00 00    	jne    0x548fd4
544c8e:	8b 8d 54 fe ff ff    	mov    -0x1ac(%ebp),%ecx
544c94:	03 0b                	add    (%ebx),%ecx
544c96:	89 8d 54 fe ff ff    	mov    %ecx,-0x1ac(%ebp)
544c9c:	8b 8d 7c fe ff ff    	mov    -0x184(%ebp),%ecx
544ca2:	eb 0f                	jmp    0x544cb3
544ca4:	8b 03                	mov    (%ebx),%eax
544ca6:	99                   	cltd
544ca7:	01 85 48 fe ff ff    	add    %eax,-0x1b8(%ebp)
544cad:	11 95 5c fe ff ff    	adc    %edx,-0x1a4(%ebp)
544cb3:	8b 85 84 fe ff ff    	mov    -0x17c(%ebp),%eax
544cb9:	8b 95 80 fe ff ff    	mov    -0x180(%ebp),%edx
544cbf:	03 95 54 fe ff ff    	add    -0x1ac(%ebp),%edx
544cc5:	6a 00                	push   $0x0
544cc7:	83 d1 00             	adc    $0x0,%ecx
544cca:	89 95 80 fe ff ff    	mov    %edx,-0x180(%ebp)
544cd0:	50                   	push   %eax
544cd1:	89 8d 7c fe ff ff    	mov    %ecx,-0x184(%ebp)
544cd7:	e8 64 cc ff ff       	call   0x541940
544cdc:	8b 9d 68 fe ff ff    	mov    -0x198(%ebp),%ebx
544ce2:	83 c4 08             	add    $0x8,%esp
544ce5:	8b 8d 7c fe ff ff    	mov    -0x184(%ebp),%ecx
544ceb:	03 d8                	add    %eax,%ebx
544ced:	8b 85 84 fe ff ff    	mov    -0x17c(%ebp),%eax
544cf3:	8b 95 80 fe ff ff    	mov    -0x180(%ebp),%edx
544cf9:	89 06                	mov    %eax,(%esi)
544cfb:	89 9d 68 fe ff ff    	mov    %ebx,-0x198(%ebp)
544d01:	8d 46 e4             	lea    -0x1c(%esi),%eax
544d04:	3b 85 88 fe ff ff    	cmp    -0x178(%ebp),%eax
544d0a:	74 08                	je     0x544d14
544d0c:	83 ee 28             	sub    $0x28,%esi
544d0f:	e9 ec fc ff ff       	jmp    0x544a00
544d14:	83 fb 7e             	cmp    $0x7e,%ebx
544d17:	7e 25                	jle    0x544d3e
544d19:	8b c3                	mov    %ebx,%eax
544d1b:	99                   	cltd
544d1c:	52                   	push   %edx
544d1d:	50                   	push   %eax
544d1e:	e8 1d cc ff ff       	call   0x541940
544d23:	8b f0                	mov    %eax,%esi
544d25:	03 de                	add    %esi,%ebx
544d27:	8b c3                	mov    %ebx,%eax
544d29:	89 9d 68 fe ff ff    	mov    %ebx,-0x198(%ebp)
544d2f:	99                   	cltd