46cc82:	50                   	push   %eax
46cc83:	69 63 74 75 72 65 41 	imul   $0x41657275,0x74(%ebx),%esp
46cc8a:	64 61                	fs popa
46cc8c:	70 74                	jo     0x46cd02
46cc8e:	65 72 dc             	gs jb  0x46cc6d
46cc91:	cc                   	int3
46cc92:	46                   	inc    %esi
46cc9b:	00 44 cd 46          	add    %al,0x46(%ebp,%ecx,8)
46cc9f:	00 68 cd             	add    %ch,-0x33(%eax)
46cca2:	46                   	inc    %esi
46ccaf:	00 56 cd             	add    %dl,-0x33(%esi)
46ccb2:	46                   	inc    %esi
46ccb3:	00 2c 00             	add    %ch,(%eax,%eax,1)
46ccb6:	00 00                	add    %al,(%eax)
46ccb8:	2c 2b                	sub    $0x2b,%al
46ccba:	42                   	inc    %edx
46ccbb:	00 64 3b 40          	add    %ah,0x40(%ebx,%edi,1)
46ccbf:	00 7c 89 41          	add    %bh,0x41(%ecx,%ecx,4)
46ccc3:	00 74 3b 40          	add    %dh,0x40(%ebx,%edi,1)
46ccc7:	00 78 3b             	add    %bh,0x3b(%eax)
46ccca:	40                   	inc    %eax
46cccb:	00 6c 3b 40          	add    %ch,0x40(%ebx,%edi,1)
46cccf:	00 b4 38 40 00 d0 38 	add    %dh,0x38d00040(%eax,%edi,1)
46ccd6:	40                   	inc    %eax
46ccd7:	00 ac 87 41 00 bc 88 	add    %ch,-0x7743ffbf(%edi,%eax,4)
46ccde:	41                   	inc    %ecx
46ccdf:	00 54 67 42          	add    %dl,0x42(%edi,%eiz,2)
46cce3:	00 b0 d9 46 00 0c    	add    %dh,0xc0046d9(%eax)
46cce9:	8a 41 00             	mov    0x0(%ecx),%al
46ccec:	e4 d9                	in     $0xd9,%al
46ccee:	46                   	inc    %esi
46ccef:	00 e8                	add    %ch,%al
46ccf1:	d9 46 00             	flds   0x0(%esi)
46ccf4:	a0 67 42 00 f4       	mov    0xf4004267,%al
46ccf9:	da 46 00             	fiaddl 0x0(%esi)
46ccfc:	68 db 46 00 d0       	push   $0xd00046db
46cd01:	db 46 00             	fildl  0x0(%esi)
46cd04:	ec                   	in     (%dx),%al
46cd05:	db 46 00             	fildl  0x0(%esi)
46cd08:	0c dc                	or     $0xdc,%al
46cd0a:	46                   	inc    %esi
46cd0b:	00 78 69             	add    %bh,0x69(%eax)
46cd0e:	42                   	inc    %edx
46cd0f:	00 50 dc             	add    %dl,-0x24(%eax)
46cd12:	46                   	inc    %esi
46cd13:	00 98 dc 46 00 fc    	add    %bl,-0x3ffb924(%eax)
46cd19:	69 42 00 b8 dc 46 00 	imul   $0x46dcb8,0x0(%edx),%eax
46cd20:	0c 6a                	or     $0x6a,%al
46cd22:	42                   	inc    %edx
46cd23:	00 ac 66 42 00 00 dd 	add    %ch,-0x22ffffbe(%esi,%eiz,2)
46cd2a:	46                   	inc    %esi
46cd2b:	00 84 69 42 00 04 dd 	add    %al,-0x22fbffbe(%ecx,%ebp,2)
46cd32:	46                   	inc    %esi
46cd33:	00 54 dd 46          	add    %dl,0x46(%ebp,%ebx,8)
46cd37:	00 d8                	add    %bl,%al
46cd39:	dd 46 00             	fldl   0x0(%esi)
46cd3c:	24 de                	and    $0xde,%al
46cd3e:	46                   	inc    %esi
46cd3f:	00 e0                	add    %ah,%al
46cd41:	69 42 00 0e 00 00 00 	imul   $0xe,0x0(%edx),%eax
46cd48:	00 00                	add    %al,(%eax)
46cd4a:	01 00                	add    %eax,(%eax)
46cd4c:	00 00                	add    %al,(%eax)
46cd4e:	a0 77 40 00 28       	mov    0x28004077,%al
46cd53:	00 00                	add    %al,(%eax)
46cd55:	00 0b                	add    %cl,(%ebx)
46cd57:	54                   	push   %esp
46cd58:	4f                   	dec    %edi
46cd59:	6c                   	insb   (%dx),%es:(%edi)
46cd5a:	65 47                	gs inc %edi
46cd5c:	72 61                	jb     0x46cdbf
46cd5e:	70 68                	jo     0x46cdc8
46cd60:	69 63 8b c0 68 cd 46 	imul   $0x46cd68c0,-0x75(%ebx),%esp
46cd67:	00 07                	add    %al,(%edi)
46cd69:	0b 54 4f 6c          	or     0x6c(%edi,%ecx,2),%edx
46cd6d:	65 47                	gs inc %edi
46cd6f:	72 61                	jb     0x46cdd2
46cd71:	70 68                	jo     0x46cddb
46cd73:	69 63 dc cc 46 00 f4 	imul   $0xf40046cc,-0x24(%ebx),%esp
46cd7a:	2b 42 00             	sub    0x0(%edx),%eax
46cd7d:	00 00                	add    %al,(%eax)
46cd7f:	07                   	pop    %es
46cd80:	41                   	inc    %ecx
46cd81:	78 43                	js     0x46cdc6
46cd83:	74 72                	je     0x46cdf7
46cd85:	6c                   	insb   (%dx),%es:(%edi)
46cd86:	73 00                	jae    0x46cd88
46cd88:	00 8d 40 00 53 e8    	add    %cl,-0x17acffc0(%ebp)
46cd8e:	ee                   	out    %al,(%dx)
46cd8f:	5f                   	pop    %edi
46cd90:	f9                   	stc
46cd91:	ff 8b d8 8b c3 8b    	decl   -0x743c7428(%ebx)
46cd97:	15 c0 ad 46 00       	adc    $0x46adc0,%eax
46cd9c:	e8 07 6d f9 ff       	call   0x403aa8
46cda1:	84 c0                	test   %al,%al
46cda3:	74 0b                	je     0x46cdb0
46cda5:	83 7b 0c 00          	cmpl   $0x0,0xc(%ebx)
46cda9:	7d 05                	jge    0x46cdb0
46cdab:	8b 43 0c             	mov    0xc(%ebx),%eax
46cdae:	5b                   	pop    %ebx
46cdaf:	c3                   	ret
46cdb0:	b8 ff ff 00 80       	mov    $0x8000ffff,%eax
46cdb5:	5b                   	pop    %ebx
46cdb6:	c3                   	ret
46cdb7:	90                   	nop
46cdb8:	53                   	push   %ebx
46cdb9:	56                   	push   %esi
46cdba:	8b f2                	mov    %edx,%esi
46cdbc:	8b d8                	mov    %eax,%ebx
46cdbe:	83 7b 20 00          	cmpl   $0x0,0x20(%ebx)
46cdc2:	75 1f                	jne    0x46cde3
46cdc4:	8b cb                	mov    %ebx,%ecx
46cdc6:	b2 01                	mov    $0x1,%dl
46cdc8:	a1 0c cb 46 00       	mov    0x46cb0c,%eax
46cdcd:	e8 5e 03 00 00       	call   0x46d130
46cdd2:	8b d0                	mov    %eax,%edx
46cdd4:	85 d2                	test   %edx,%edx
46cdd6:	74 03                	je     0x46cddb
46cdd8:	83 ea dc             	sub    $0xffffffdc,%edx
46cddb:	8d 43 20             	lea    0x20(%ebx),%eax
46cdde:	e8 ad 93 f9 ff       	call   0x406190
46cde3:	8b c6                	mov    %esi,%eax
46cde5:	8b 53 20             	mov    0x20(%ebx),%edx
46cde8:	b9 f8 cd 46 00       	mov    $0x46cdf8,%ecx
46cded:	e8 ca 93 f9 ff       	call   0x4061bc
46cdf2:	5e                   	pop    %esi
46cdf3:	5b                   	pop    %ebx
46cdf4:	c3                   	ret
46cdf5:	00 00                	add    %al,(%eax)
46cdf7:	00 a0 5c a5 cb 57    	add    %ah,0x57cba55c(%eax)
46cdfd:	0e                   	push   %cs
46cdfe:	d0 11                	rclb   $1,(%ecx)
46ce00:	bd 2f 00 20 af       	mov    $0xaf20002f,%ebp
46ce05:	0e                   	push   %cs
46ce06:	5b                   	pop    %ebx
46ce07:	81 53 56 8b f2 8b d8 	adcl   $0xd88bf28b,0x56(%ebx)
46ce0e:	83 7b 18 00          	cmpl   $0x0,0x18(%ebx)
46ce12:	75 1f                	jne    0x46ce33
46ce14:	8b cb                	mov    %ebx,%ecx
46ce16:	b2 01                	mov    $0x1,%dl
46ce18:	a1 2c cc 46 00       	mov    0x46cc2c,%eax
46ce1d:	e8 7e 08 00 00       	call   0x46d6a0
46ce22:	8b d0                	mov    %eax,%edx
46ce24:	85 d2                	test   %edx,%edx
46ce26:	74 03                	je     0x46ce2b
46ce28:	83 ea dc             	sub    $0xffffffdc,%edx
46ce2b:	8d 43 18             	lea    0x18(%ebx),%eax
46ce2e:	e8 5d 93 f9 ff       	call   0x406190
46ce33:	8b c6                	mov    %esi,%eax
46ce35:	8b 53 18             	mov    0x18(%ebx),%edx
46ce38:	b9 48 ce 46 00       	mov    $0x46ce48,%ecx
46ce3d:	e8 7a 93 f9 ff       	call   0x4061bc
46ce42:	5e                   	pop    %esi
46ce43:	5b                   	pop    %ebx
46ce44:	c3                   	ret
46ce45:	00 00                	add    %al,(%eax)
46ce47:	00 31                	add    %dh,(%ecx)
46ce49:	4d                   	dec    %ebp
46ce4a:	5d                   	pop    %ebp
46ce4b:	79 d7                	jns    0x46ce24
46ce4d:	43                   	inc    %ebx
46ce4e:	d0 11                	rclb   $1,(%ecx)
46ce50:	9e                   	sahf
46ce51:	92                   	xchg   %eax,%edx
46ce52:	00 20                	add    %ah,(%eax)
46ce54:	af                   	scas   %es:(%edi),%eax
46ce55:	3d 82 da 55 8b       	cmp    $0x8b55da82,%eax
46ce5a:	ec                   	in     (%dx),%al
46ce5b:	6a 00                	push   $0x0
46ce5d:	53                   	push   %ebx
46ce5e:	56                   	push   %esi
46ce5f:	8b f2                	mov    %edx,%esi
46ce61:	8b d8                	mov    %eax,%ebx
46ce63:	33 c0                	xor    %eax,%eax
46ce65:	55                   	push   %ebp
46ce66:	68 9b ce 46 00       	push   $0x46ce9b
46ce6b:	64 ff 30             	push   %fs:(%eax)
46ce6e:	64 89 20             	mov    %esp,%fs:(%eax)
46ce71:	8d 55 fc             	lea    -0x4(%ebp),%edx
46ce74:	8b c3                	mov    %ebx,%eax
46ce76:	e8 3d ff ff ff       	call   0x46cdb8
46ce7b:	8b 45 fc             	mov    -0x4(%ebp),%eax
46ce7e:	8b d6                	mov    %esi,%edx
46ce80:	8b 08                	mov    (%eax),%ecx
46ce82:	ff 51 0c             	call   *0xc(%ecx)
46ce85:	33 c0                	xor    %eax,%eax
46ce87:	5a                   	pop    %edx
46ce88:	59                   	pop    %ecx
46ce89:	59                   	pop    %ecx
46ce8a:	64 89 10             	mov    %edx,%fs:(%eax)
46ce8d:	68 a2 ce 46 00       	push   $0x46cea2
46ce92:	8d 45 fc             	lea    -0x4(%ebp),%eax
46ce95:	e8 de 92 f9 ff       	call   0x406178
46ce9a:	c3                   	ret
46ce9b:	e9 10 72 f9 ff       	jmp    0x4040b0
46cea0:	eb f0                	jmp    0x46ce92
46cea2:	5e                   	pop    %esi
46cea3:	5b                   	pop    %ebx
46cea4:	59                   	pop    %ecx
46cea5:	5d                   	pop    %ebp
46cea6:	c3                   	ret
46cea7:	90                   	nop
46cea8:	55                   	push   %ebp
46cea9:	8b ec                	mov    %esp,%ebp
46ceab:	83 c4 f8             	add    $0xfffffff8,%esp
46ceae:	53                   	push   %ebx
46ceaf:	33 c9                	xor    %ecx,%ecx
46ceb1:	89 4d f8             	mov    %ecx,-0x8(%ebp)
46ceb4:	89 55 fc             	mov    %edx,-0x4(%ebp)
46ceb7:	8b d8                	mov    %eax,%ebx
46ceb9:	8b 45 fc             	mov    -0x4(%ebp),%eax
46cebc:	e8 2b 93 f9 ff       	call   0x4061ec
46cec1:	33 c0                	xor    %eax,%eax
46cec3:	55                   	push   %ebp
46cec4:	68 02 cf 46 00       	push   $0x46cf02
46cec9:	64 ff 30             	push   %fs:(%eax)
46cecc:	64 89 20             	mov    %esp,%fs:(%eax)
46cecf:	8d 55 f8             	lea    -0x8(%ebp),%edx
46ced2:	8b c3                	mov    %ebx,%eax
46ced4:	e8 df fe ff ff       	call   0x46cdb8
46ced9:	8b 45 f8             	mov    -0x8(%ebp),%eax
46cedc:	8b 55 fc             	mov    -0x4(%ebp),%edx
46cedf:	8b 08                	mov    (%eax),%ecx
46cee1:	ff 51 10             	call   *0x10(%ecx)
46cee4:	33 c0                	xor    %eax,%eax
46cee6:	5a                   	pop    %edx
46cee7:	59                   	pop    %ecx
46cee8:	59                   	pop    %ecx
46cee9:	64 89 10             	mov    %edx,%fs:(%eax)
46ceec:	68 09 cf 46 00       	push   $0x46cf09
46cef1:	8d 45 f8             	lea    -0x8(%ebp),%eax
46cef4:	e8 7f 92 f9 ff       	call   0x406178
46cef9:	8d 45 fc             	lea    -0x4(%ebp),%eax
46cefc:	e8 77 92 f9 ff       	call   0x406178
46cf01:	c3                   	ret
46cf02:	e9 a9 71 f9 ff       	jmp    0x4040b0
46cf07:	eb e8                	jmp    0x46cef1
46cf09:	5b                   	pop    %ebx
46cf0a:	59                   	pop    %ecx
46cf0b:	59                   	pop    %ecx
46cf0c:	5d                   	pop    %ebp
46cf0d:	c3                   	ret
46cf0e:	8b c0                	mov    %eax,%eax
46cf10:	55                   	push   %ebp
46cf11:	8b ec                	mov    %esp,%ebp
46cf13:	6a 00                	push   $0x0
46cf15:	53                   	push   %ebx
46cf16:	56                   	push   %esi
46cf17:	8b f2                	mov    %edx,%esi
46cf19:	8b d8                	mov    %eax,%ebx
46cf1b:	33 c0                	xor    %eax,%eax
46cf1d:	55                   	push   %ebp
46cf1e:	68 53 cf 46 00       	push   $0x46cf53
46cf23:	64 ff 30             	push   %fs:(%eax)
46cf26:	64 89 20             	mov    %esp,%fs:(%eax)
46cf29:	8d 55 fc             	lea    -0x4(%ebp),%edx
46cf2c:	8b c3                	mov    %ebx,%eax
46cf2e:	e8 d5 fe ff ff       	call   0x46ce08
46cf33:	8b 45 fc             	mov    -0x4(%ebp),%eax
46cf36:	8b d6                	mov    %esi,%edx
46cf38:	8b 08                	mov    (%eax),%ecx
46cf3a:	ff 51 0c             	call   *0xc(%ecx)
46cf3d:	33 c0                	xor    %eax,%eax
46cf3f:	5a                   	pop    %edx
46cf40:	59                   	pop    %ecx
46cf41:	59                   	pop    %ecx
46cf42:	64 89 10             	mov    %edx,%fs:(%eax)
46cf45:	68 5a cf 46 00       	push   $0x46cf5a
46cf4a:	8d 45 fc             	lea    -0x4(%ebp),%eax
46cf4d:	e8 26 92 f9 ff       	call   0x406178
46cf52:	c3                   	ret
46cf53:	e9 58 71 f9 ff       	jmp    0x4040b0
46cf58:	eb f0                	jmp    0x46cf4a
46cf5a:	5e                   	pop    %esi
46cf5b:	5b                   	pop    %ebx
46cf5c:	59                   	pop    %ecx
46cf5d:	5d                   	pop    %ebp
46cf5e:	c3                   	ret
46cf5f:	90                   	nop
46cf60:	53                   	push   %ebx
46cf61:	56                   	push   %esi
46cf62:	84 d2                	test   %dl,%dl
46cf64:	74 08                	je     0x46cf6e
46cf66:	83 c4 f0             	add    $0xfffffff0,%esp
46cf69:	e8 d2 6c f9 ff       	call   0x403c40
46cf6e:	8b da                	mov    %edx,%ebx
46cf70:	8b f0                	mov    %eax,%esi
46cf72:	33 d2                	xor    %edx,%edx
46cf74:	8b c6                	mov    %esi,%eax
46cf76:	e8 71 69 f9 ff       	call   0x4038ec
46cf7b:	8b ce                	mov    %esi,%ecx
46cf7d:	b2 01                	mov    $0x1,%dl
46cf7f:	a1 f0 c9 46 00       	mov    0x46c9f0,%eax
46cf84:	e8 17 01 00 00       	call   0x46d0a0
46cf89:	8b d0                	mov    %eax,%edx
46cf8b:	85 d2                	test   %edx,%edx
46cf8d:	74 03                	je     0x46cf92
46cf8f:	83 ea f8             	sub    $0xfffffff8,%edx
46cf92:	8d 46 14             	lea    0x14(%esi),%eax
46cf95:	e8 f6 91 f9 ff       	call   0x406190
46cf9a:	8b c6                	mov    %esi,%eax
46cf9c:	84 db                	test   %bl,%bl
46cf9e:	74 0f                	je     0x46cfaf
46cfa0:	e8 f3 6c f9 ff       	call   0x403c98
46cfa5:	64 8f 05 00 00 00 00 	pop    %fs:0x0
46cfac:	83 c4 0c             	add    $0xc,%esp
46cfaf:	8b c6                	mov    %esi,%eax
46cfb1:	5e                   	pop    %esi
46cfb2:	5b                   	pop    %ebx
46cfb3:	c3                   	ret
46cfb4:	53                   	push   %ebx
46cfb5:	56                   	push   %esi
46cfb6:	e8 2d 6d f9 ff       	call   0x403ce8
46cfbb:	8b da                	mov    %edx,%ebx
46cfbd:	8b f0                	mov    %eax,%esi
46cfbf:	8b c6                	mov    %esi,%eax
46cfc1:	e8 aa 00 00 00       	call   0x46d070
46cfc6:	8b d3                	mov    %ebx,%edx
46cfc8:	80 e2 fc             	and    $0xfc,%dl
46cfcb:	8b c6                	mov    %esi,%eax
46cfcd:	e8 3a 69 f9 ff       	call   0x40390c
46cfd2:	84 db                	test   %bl,%bl
46cfd4:	7e 07                	jle    0x46cfdd
46cfd6:	8b c6                	mov    %esi,%eax
46cfd8:	e8 b3 6c f9 ff       	call   0x403c90
46cfdd:	5e                   	pop    %esi
46cfde:	5b                   	pop    %ebx
46cfdf:	c3                   	ret
46cfe0:	80 78 18 00          	cmpb   $0x0,0x18(%eax)
46cfe4:	75 05                	jne    0x46cfeb
46cfe6:	e8 85 00 00 00       	call   0x46d070
46cfeb:	c3                   	ret
46cfec:	55                   	push   %ebp
46cfed:	8b ec                	mov    %esp,%ebp
46cfef:	51                   	push   %ecx
46cff0:	53                   	push   %ebx
46cff1:	89 55 fc             	mov    %edx,-0x4(%ebp)
46cff4:	8b d8                	mov    %eax,%ebx
46cff6:	8b 45 fc             	mov    -0x4(%ebp),%eax
46cff9:	e8 ee 91 f9 ff       	call   0x4061ec
46cffe:	33 c0                	xor    %eax,%eax
46d000:	55                   	push   %ebp
46d001:	68 54 d0 46 00       	push   $0x46d054
46d006:	64 ff 30             	push   %fs:(%eax)
46d009:	64 89 20             	mov    %esp,%fs:(%eax)
46d00c:	83 7b 0c 00          	cmpl   $0x0,0xc(%ebx)
46d010:	74 07                	je     0x46d019
46d012:	8b c3                	mov    %ebx,%eax
46d014:	e8 57 00 00 00       	call   0x46d070
46d019:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)