41b86b:	8b 4e 04             	mov    0x4(%esi),%ecx
41b86e:	33 d2                	xor    %edx,%edx
41b870:	42                   	inc    %edx
41b871:	8d 41 ff             	lea    -0x1(%ecx),%eax
41b874:	83 f8 14             	cmp    $0x14,%eax
41b877:	0f 87 e6 02 00 00    	ja     0x41bb63
41b87d:	ff 24 85 72 bb 41 00 	jmp    *0x41bb72(,%eax,4)
41b884:	f7 47 60 00 01 00 00 	testl  $0x100,0x60(%edi)
41b88b:	75 0e                	jne    0x41b89b
41b88d:	8b 07                	mov    (%edi),%eax
41b88f:	3b 47 4c             	cmp    0x4c(%edi),%eax
41b892:	75 07                	jne    0x41b89b
41b894:	8a 5f 60             	mov    0x60(%edi),%bl
41b897:	22 da                	and    %dl,%bl
41b899:	eb 0c                	jmp    0x41b8a7
41b89b:	8b 07                	mov    (%edi),%eax
41b89d:	6a 0a                	push   $0xa
41b89f:	59                   	pop    %ecx
41b8a0:	66 39 48 fe          	cmp    %cx,-0x2(%eax)
41b8a4:	0f 95 c3             	setne  %bl
41b8a7:	89 5d f0             	mov    %ebx,-0x10(%ebp)
41b8aa:	e9 3f 01 00 00       	jmp    0x41b9ee
41b8af:	8b 07                	mov    (%edi),%eax
41b8b1:	3b 47 50             	cmp    0x50(%edi),%eax
41b8b4:	75 07                	jne    0x41b8bd
41b8b6:	8b 5f 60             	mov    0x60(%edi),%ebx
41b8b9:	d1 eb                	shr    $1,%ebx
41b8bb:	eb da                	jmp    0x41b897
41b8bd:	6a 0a                	push   $0xa
41b8bf:	59                   	pop    %ecx
41b8c0:	66 39 08             	cmp    %cx,(%eax)
41b8c3:	eb df                	jmp    0x41b8a4
41b8c5:	8b cf                	mov    %edi,%ecx
41b8c7:	e8 3a fc ff ff       	call   0x41b506
41b8cc:	8b 4e 08             	mov    0x8(%esi),%ecx
41b8cf:	33 d2                	xor    %edx,%edx
41b8d1:	42                   	inc    %edx
41b8d2:	23 ca                	and    %edx,%ecx
41b8d4:	3a c1                	cmp    %cl,%al
41b8d6:	0f 94 c3             	sete   %bl
41b8d9:	eb cc                	jmp    0x41b8a7
41b8db:	8b 07                	mov    (%edi),%eax
41b8dd:	3b 47 50             	cmp    0x50(%edi),%eax
41b8e0:	74 19                	je     0x41b8fb
41b8e2:	0f b7 08             	movzwl (%eax),%ecx
41b8e5:	66 3b 4d ec          	cmp    -0x14(%ebp),%cx
41b8e9:	74 10                	je     0x41b8fb
41b8eb:	66 3b 4d e8          	cmp    -0x18(%ebp),%cx
41b8ef:	74 0a                	je     0x41b8fb
41b8f1:	83 c0 02             	add    $0x2,%eax
41b8f4:	89 07                	mov    %eax,(%edi)
41b8f6:	e9 f3 00 00 00       	jmp    0x41b9ee
41b8fb:	8a da                	mov    %dl,%bl
41b8fd:	eb a8                	jmp    0x41b8a7
41b8ff:	ff 77 5c             	push   0x5c(%edi)
41b902:	8b 4e 1c             	mov    0x1c(%esi),%ecx
41b905:	8b 46 18             	mov    0x18(%esi),%eax
41b908:	ff 77 70             	push   0x70(%edi)
41b90b:	8d 04 41             	lea    (%ecx,%eax,2),%eax
41b90e:	50                   	push   %eax
41b90f:	51                   	push   %ecx
41b910:	ff 77 50             	push   0x50(%edi)
41b913:	ff 37                	push   (%edi)
41b915:	e8 63 75 fe ff       	call   0x402e7d
41b91a:	83 c4 18             	add    $0x18,%esp
41b91d:	3b 07                	cmp    (%edi),%eax
41b91f:	75 d3                	jne    0x41b8f4
41b921:	33 d2                	xor    %edx,%edx
41b923:	8d 5a 01             	lea    0x1(%edx),%ebx
41b926:	e9 7c ff ff ff       	jmp    0x41b8a7
41b92b:	8b 07                	mov    (%edi),%eax
41b92d:	3b 47 50             	cmp    0x50(%edi),%eax
41b930:	0f 84 0a 02 00 00    	je     0x41bb40
41b936:	56                   	push   %esi
41b937:	8b cf                	mov    %edi,%ecx
41b939:	e8 f7 c7 ff ff       	call   0x418135
41b93e:	84 c0                	test   %al,%al
41b940:	0f 84 f7 01 00 00    	je     0x41bb3d
41b946:	32 db                	xor    %bl,%bl
41b948:	89 5d f0             	mov    %ebx,-0x10(%ebp)
41b94b:	e9 a6 00 00 00       	jmp    0x41b9f6
41b950:	8b 07                	mov    (%edi),%eax
41b952:	83 f9 0b             	cmp    $0xb,%ecx
41b955:	57                   	push   %edi
41b956:	8d 4d d0             	lea    -0x30(%ebp),%ecx
41b959:	89 45 08             	mov    %eax,0x8(%ebp)
41b95c:	0f 94 c3             	sete   %bl
41b95f:	e8 2a ee fe ff       	call   0x40a78e
41b964:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41b968:	8b cf                	mov    %edi,%ecx
41b96a:	ff 76 14             	push   0x14(%esi)
41b96d:	e8 a0 fe ff ff       	call   0x41b812
41b972:	3a c3                	cmp    %bl,%al
41b974:	75 1b                	jne    0x41b991
41b976:	8b 45 d0             	mov    -0x30(%ebp),%eax
41b979:	8d 4f 04             	lea    0x4(%edi),%ecx
41b97c:	89 07                	mov    %eax,(%edi)
41b97e:	8d 45 d4             	lea    -0x2c(%ebp),%eax
41b981:	50                   	push   %eax
41b982:	e8 d8 42 ff ff       	call   0x40fc5f
41b987:	33 d2                	xor    %edx,%edx
41b989:	8d 5a 01             	lea    0x1(%edx),%ebx
41b98c:	89 5d f0             	mov    %ebx,-0x10(%ebp)
41b98f:	eb 08                	jmp    0x41b999
41b991:	8b 45 08             	mov    0x8(%ebp),%eax
41b994:	8b 5d f0             	mov    -0x10(%ebp),%ebx
41b997:	89 07                	mov    %eax,(%edi)
41b999:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
41b99d:	8d 45 d4             	lea    -0x2c(%ebp),%eax
41b9a0:	89 45 08             	mov    %eax,0x8(%ebp)
41b9a3:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
41b9a7:	8b c8                	mov    %eax,%ecx
41b9a9:	e8 ea 16 00 00       	call   0x41d098
41b9ae:	eb 3e                	jmp    0x41b9ee
41b9b0:	8b 56 14             	mov    0x14(%esi),%edx
41b9b3:	8b 4f 14             	mov    0x14(%edi),%ecx
41b9b6:	8b 07                	mov    (%edi),%eax
41b9b8:	89 04 d1             	mov    %eax,(%ecx,%edx,8)
41b9bb:	8b 47 10             	mov    0x10(%edi),%eax
41b9be:	39 46 14             	cmp    %eax,0x14(%esi)
41b9c1:	73 2b                	jae    0x41b9ee
41b9c3:	8b 5d 08             	mov    0x8(%ebp),%ebx
41b9c6:	8b 57 04             	mov    0x4(%edi),%edx
41b9c9:	48                   	dec    %eax
41b9ca:	8b f0                	mov    %eax,%esi
41b9cc:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41b9cf:	c1 ee 05             	shr    $0x5,%esi
41b9d2:	8b c8                	mov    %eax,%ecx
41b9d4:	83 e1 1f             	and    $0x1f,%ecx
41b9d7:	8b 04 b2             	mov    (%edx,%esi,4),%eax
41b9da:	0f b3 c8             	btr    %ecx,%eax
41b9dd:	89 04 b2             	mov    %eax,(%edx,%esi,4)
41b9e0:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41b9e3:	39 43 14             	cmp    %eax,0x14(%ebx)
41b9e6:	72 de                	jb     0x41b9c6
41b9e8:	8b 5d f0             	mov    -0x10(%ebp),%ebx
41b9eb:	8b 75 08             	mov    0x8(%ebp),%esi
41b9ee:	84 db                	test   %bl,%bl
41b9f0:	0f 85 53 01 00 00    	jne    0x41bb49
41b9f6:	85 f6                	test   %esi,%esi
41b9f8:	0f 84 4b 01 00 00    	je     0x41bb49
41b9fe:	8b 76 0c             	mov    0xc(%esi),%esi
41ba01:	89 75 08             	mov    %esi,0x8(%ebp)
41ba04:	85 f6                	test   %esi,%esi
41ba06:	0f 84 3d 01 00 00    	je     0x41bb49
41ba0c:	e9 5a fe ff ff       	jmp    0x41b86b
41ba11:	80 7f 65 00          	cmpb   $0x0,0x65(%edi)
41ba15:	8b 46 14             	mov    0x14(%esi),%eax
41ba18:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41ba1b:	75 06                	jne    0x41ba23
41ba1d:	83 78 14 00          	cmpl   $0x0,0x14(%eax)
41ba21:	74 cb                	je     0x41b9ee
41ba23:	8b 70 14             	mov    0x14(%eax),%esi
41ba26:	8b d6                	mov    %esi,%edx
41ba28:	8b 4f 04             	mov    0x4(%edi),%ecx
41ba2b:	83 e6 1f             	and    $0x1f,%esi
41ba2e:	c1 ea 05             	shr    $0x5,%edx
41ba31:	8b 04 91             	mov    (%ecx,%edx,4),%eax
41ba34:	0f ab f0             	bts    %esi,%eax
41ba37:	89 04 91             	mov    %eax,(%ecx,%edx,4)
41ba3a:	8b 55 e4             	mov    -0x1c(%ebp),%edx
41ba3d:	8b 4f 14             	mov    0x14(%edi),%ecx
41ba40:	8b 07                	mov    (%edi),%eax
41ba42:	8b 52 14             	mov    0x14(%edx),%edx
41ba45:	89 44 d1 04          	mov    %eax,0x4(%ecx,%edx,8)
41ba49:	eb a0                	jmp    0x41b9eb
41ba4b:	8b 46 14             	mov    0x14(%esi),%eax
41ba4e:	8b f0                	mov    %eax,%esi
41ba50:	8b 57 04             	mov    0x4(%edi),%edx
41ba53:	8b c8                	mov    %eax,%ecx
41ba55:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41ba58:	83 e1 1f             	and    $0x1f,%ecx
41ba5b:	33 c0                	xor    %eax,%eax
41ba5d:	c1 ee 05             	shr    $0x5,%esi
41ba60:	40                   	inc    %eax
41ba61:	d3 e0                	shl    %cl,%eax
41ba63:	85 04 b2             	test   %eax,(%edx,%esi,4)
41ba66:	74 83                	je     0x41b9eb
41ba68:	8b 47 14             	mov    0x14(%edi),%eax
41ba6b:	8b 55 e4             	mov    -0x1c(%ebp),%edx
41ba6e:	8b 0f                	mov    (%edi),%ecx
41ba70:	8b 74 d0 04          	mov    0x4(%eax,%edx,8),%esi
41ba74:	39 34 d0             	cmp    %esi,(%eax,%edx,8)
41ba77:	74 20                	je     0x41ba99
41ba79:	ff 77 5c             	push   0x5c(%edi)
41ba7c:	ff 77 70             	push   0x70(%edi)
41ba7f:	56                   	push   %esi
41ba80:	ff 34 d0             	push   (%eax,%edx,8)
41ba83:	ff 77 50             	push   0x50(%edi)
41ba86:	51                   	push   %ecx
41ba87:	e8 f1 73 fe ff       	call   0x402e7d
41ba8c:	8b c8                	mov    %eax,%ecx
41ba8e:	83 c4 18             	add    $0x18,%esp
41ba91:	3b 0f                	cmp    (%edi),%ecx
41ba93:	0f 84 ab 00 00 00    	je     0x41bb44
41ba99:	89 0f                	mov    %ecx,(%edi)
41ba9b:	e9 4b ff ff ff       	jmp    0x41b9eb
41baa0:	56                   	push   %esi
41baa1:	8b cf                	mov    %edi,%ecx
41baa3:	e8 78 cd ff ff       	call   0x418820
41baa8:	84 c0                	test   %al,%al
41baaa:	0f b6 db             	movzbl %bl,%ebx
41baad:	6a 01                	push   $0x1
41baaf:	58                   	pop    %eax
41bab0:	0f 44 d8             	cmove  %eax,%ebx
41bab3:	89 5d f0             	mov    %ebx,-0x10(%ebp)
41bab6:	33 f6                	xor    %esi,%esi
41bab8:	e9 31 ff ff ff       	jmp    0x41b9ee
41babd:	8b 46 08             	mov    0x8(%esi),%eax
41bac0:	d1 e8                	shr    $1,%eax
41bac2:	22 c2                	and    %dl,%al
41bac4:	6a 00                	push   $0x0
41bac6:	0f b6 c0             	movzbl %al,%eax
41bac9:	50                   	push   %eax
41baca:	56                   	push   %esi
41bacb:	8b cf                	mov    %edi,%ecx
41bacd:	e8 07 d4 ff ff       	call   0x418ed9
41bad2:	eb d4                	jmp    0x41baa8
41bad4:	8b 4e 14             	mov    0x14(%esi),%ecx
41bad7:	8b 57 40             	mov    0x40(%edi),%edx
41bada:	83 79 24 00          	cmpl   $0x0,0x24(%ecx)
41bade:	8b 41 20             	mov    0x20(%ecx),%eax
41bae1:	75 d3                	jne    0x41bab6
41bae3:	ff 34 c2             	push   (%edx,%eax,8)
41bae6:	8b 41 08             	mov    0x8(%ecx),%eax
41bae9:	33 d2                	xor    %edx,%edx
41baeb:	d1 e8                	shr    $1,%eax
41baed:	42                   	inc    %edx
41baee:	22 c2                	and    %dl,%al
41baf0:	0f b6 c0             	movzbl %al,%eax
41baf3:	50                   	push   %eax
41baf4:	51                   	push   %ecx
41baf5:	eb d4                	jmp    0x41bacb
41baf7:	f7 47 60 20 20 00 00 	testl  $0x2020,0x60(%edi)
41bafe:	74 07                	je     0x41bb07
41bb00:	8b 47 4c             	mov    0x4c(%edi),%eax
41bb03:	3b 07                	cmp    (%edi),%eax
41bb05:	74 0d                	je     0x41bb14
41bb07:	80 7f 74 00          	cmpb   $0x0,0x74(%edi)
41bb0b:	74 0b                	je     0x41bb18
41bb0d:	8b 07                	mov    (%edi),%eax
41bb0f:	3b 47 50             	cmp    0x50(%edi),%eax
41bb12:	74 04                	je     0x41bb18
41bb14:	8a da                	mov    %dl,%bl
41bb16:	eb 9b                	jmp    0x41bab3
41bb18:	80 7f 64 00          	cmpb   $0x0,0x64(%edi)
41bb1c:	74 0b                	je     0x41bb29
41bb1e:	8b cf                	mov    %edi,%ecx
41bb20:	e8 0f ad ff ff       	call   0x416834
41bb25:	84 c0                	test   %al,%al
41bb27:	74 8d                	je     0x41bab6
41bb29:	57                   	push   %edi
41bb2a:	8d 4f 20             	lea    0x20(%edi),%ecx
41bb2d:	e8 ba 3a ff ff       	call   0x40f5ec
41bb32:	33 c0                	xor    %eax,%eax
41bb34:	40                   	inc    %eax
41bb35:	88 47 64             	mov    %al,0x64(%edi)
41bb38:	e9 79 ff ff ff       	jmp    0x41bab6
41bb3d:	33 d2                	xor    %edx,%edx
41bb3f:	42                   	inc    %edx
41bb40:	8a da                	mov    %dl,%bl
41bb42:	eb 05                	jmp    0x41bb49
41bb44:	33 c0                	xor    %eax,%eax
41bb46:	8d 58 01             	lea    0x1(%eax),%ebx
41bb49:	8b 4f 7c             	mov    0x7c(%edi),%ecx
41bb4c:	85 c9                	test   %ecx,%ecx
41bb4e:	7e 06                	jle    0x41bb56
41bb50:	8d 41 01             	lea    0x1(%ecx),%eax
41bb53:	89 47 7c             	mov    %eax,0x7c(%edi)
41bb56:	84 db                	test   %bl,%bl
41bb58:	0f 94 c0             	sete   %al
41bb5b:	e8 b3 3e 02 00       	call   0x43fa13
41bb60:	c2 04 00             	ret    $0x4
41bb63:	6a 0d                	push   $0xd
41bb65:	58                   	pop    %eax
41bb66:	50                   	push   %eax
41bb67:	eb 02                	jmp    0x41bb6b
41bb69:	6a 0c                	push   $0xc
41bb6b:	e8 d0 a1 00 00       	call   0x425d40
41bb70:	66 90                	xchg   %ax,%ax
41bb72:	ee                   	out    %al,(%dx)
41bb73:	b9 41 00 84 b8       	mov    $0xb8840041,%ecx
41bb78:	41                   	inc    %ecx
41bb79:	00 af b8 41 00 c5    	add    %ch,-0x3affbe48(%edi)
41bb7f:	b8 41 00 db b8       	mov    $0xb8db0041,%eax
41bb84:	41                   	inc    %ecx
41bb85:	00 ff                	add    %bh,%bh
41bb87:	b8 41 00 2b b9       	mov    $0xb92b0041,%eax
41bb8c:	41                   	inc    %ecx
41bb8d:	00 ee                	add    %ch,%dh
41bb8f:	b9 41 00 ee b9       	mov    $0xb9ee0041,%ecx
41bb94:	41                   	inc    %ecx
41bb95:	00 50 b9             	add    %dl,-0x47(%eax)
41bb98:	41                   	inc    %ecx
41bb99:	00 50 b9             	add    %dl,-0x47(%eax)
41bb9c:	41                   	inc    %ecx
41bb9d:	00 b6 ba 41 00 b0    	add    %dh,-0x4fffbe46(%esi)
41bba3:	b9 41 00 11 ba       	mov    $0xba110041,%ecx
41bba8:	41                   	inc    %ecx
41bba9:	00 4b ba             	add    %cl,-0x46(%ebx)
41bbac:	41                   	inc    %ecx
41bbad:	00 a0 ba 41 00 ee    	add    %ah,-0x11ffbe46(%eax)
41bbb3:	b9 41 00 bd ba       	mov    $0xbabd0041,%ecx
41bbb8:	41                   	inc    %ecx
41bbb9:	00 d4                	add    %dl,%ah
41bbbb:	ba 41 00 ee b9       	mov    $0xb9ee0041,%edx
41bbc0:	41                   	inc    %ecx
41bbc1:	00 f7                	add    %dh,%bh
41bbc3:	ba 41 00 6a 24       	mov    $0x246a0041,%edx
41bbc8:	b8 c0 f8 48 00       	mov    $0x48f8c0,%eax
41bbcd:	e8 78 3e 02 00       	call   0x43fa4a
41bbd2:	8b f9                	mov    %ecx,%edi
41bbd4:	8b 4f 7c             	mov    0x7c(%edi),%ecx
41bbd7:	85 c9                	test   %ecx,%ecx
41bbd9:	7e 10                	jle    0x41bbeb
41bbdb:	8d 41 ff             	lea    -0x1(%ecx),%eax
41bbde:	8b c8                	mov    %eax,%ecx
41bbe0:	89 47 7c             	mov    %eax,0x7c(%edi)
41bbe3:	85 c9                	test   %ecx,%ecx
41bbe5:	0f 8e 1e 03 00 00    	jle    0x41bf09
41bbeb:	8b 47 78             	mov    0x78(%edi),%eax
41bbee:	85 c0                	test   %eax,%eax
41bbf0:	7e 0f                	jle    0x41bc01
41bbf2:	48                   	dec    %eax
41bbf3:	89 47 78             	mov    %eax,0x78(%edi)
41bbf6:	85 c0                	test   %eax,%eax
41bbf8:	7f 07                	jg     0x41bc01
41bbfa:	6a 0b                	push   $0xb
41bbfc:	e9 0a 03 00 00       	jmp    0x41bf0b
41bc01:	8b 75 08             	mov    0x8(%ebp),%esi
41bc04:	32 db                	xor    %bl,%bl
41bc06:	89 5d f0             	mov    %ebx,-0x10(%ebp)
41bc09:	85 f6                	test   %esi,%esi
41bc0b:	0f 84 dd 02 00 00    	je     0x41beee
41bc11:	8b 4e 04             	mov    0x4(%esi),%ecx
41bc14:	33 d2                	xor    %edx,%edx
41bc16:	42                   	inc    %edx
41bc17:	8d 41 ff             	lea    -0x1(%ecx),%eax
41bc1a:	83 f8 14             	cmp    $0x14,%eax
41bc1d:	0f 87 e2 02 00 00    	ja     0x41bf05
41bc23:	ff 24 85 12 bf 41 00 	jmp    *0x41bf12(,%eax,4)
41bc2a:	f7 47 60 00 01 00 00 	testl  $0x100,0x60(%edi)
41bc31:	75 0e                	jne    0x41bc41
41bc33:	8b 07                	mov    (%edi),%eax
41bc35:	3b 47 4c             	cmp    0x4c(%edi),%eax
41bc38:	75 07                	jne    0x41bc41
41bc3a:	8a 5f 60             	mov    0x60(%edi),%bl
41bc3d:	22 da                	and    %dl,%bl
41bc3f:	eb 09                	jmp    0x41bc4a
41bc41:	8b 07                	mov    (%edi),%eax