41ae02:	74 05                	je     0x41ae09
41ae04:	e8 13 fd ff ff       	call   0x41ab1c
41ae09:	8b 04 24             	mov    (%esp),%eax
41ae0c:	81 c4 08 01 00 00    	add    $0x108,%esp
41ae12:	5f                   	pop    %edi
41ae13:	5e                   	pop    %esi
41ae14:	5b                   	pop    %ebx
41ae15:	c3                   	ret
41ae16:	8b c0                	mov    %eax,%eax
41ae18:	55                   	push   %ebp
41ae19:	8b ec                	mov    %esp,%ebp
41ae1b:	53                   	push   %ebx
41ae1c:	56                   	push   %esi
41ae1d:	57                   	push   %edi
41ae1e:	8b f8                	mov    %eax,%edi
41ae20:	a1 e4 12 47 00       	mov    0x4712e4,%eax
41ae25:	e8 b6 d0 ff ff       	call   0x417ee0
41ae2a:	8b f0                	mov    %eax,%esi
41ae2c:	33 d2                	xor    %edx,%edx
41ae2e:	55                   	push   %ebp
41ae2f:	68 88 ae 41 00       	push   $0x41ae88
41ae34:	64 ff 32             	push   %fs:(%edx)
41ae37:	64 89 22             	mov    %esp,%fs:(%edx)
41ae3a:	8b 5e 08             	mov    0x8(%esi),%ebx
41ae3d:	4b                   	dec    %ebx
41ae3e:	83 fb 00             	cmp    $0x0,%ebx
41ae41:	7c 2d                	jl     0x41ae70
41ae43:	8b d3                	mov    %ebx,%edx
41ae45:	8b c6                	mov    %esi,%eax
41ae47:	e8 24 cd ff ff       	call   0x417b70
41ae4c:	8b 50 04             	mov    0x4(%eax),%edx
41ae4f:	3b 57 04             	cmp    0x4(%edi),%edx
41ae52:	75 16                	jne    0x41ae6a
41ae54:	8b 50 0c             	mov    0xc(%eax),%edx
41ae57:	3b 57 0c             	cmp    0xc(%edi),%edx
41ae5a:	75 0e                	jne    0x41ae6a
41ae5c:	e8 93 8a fe ff       	call   0x4038f4
41ae61:	8b d3                	mov    %ebx,%edx
41ae63:	8b c6                	mov    %esi,%eax
41ae65:	e8 f2 cb ff ff       	call   0x417a5c
41ae6a:	4b                   	dec    %ebx
41ae6b:	83 fb ff             	cmp    $0xffffffff,%ebx
41ae6e:	75 d3                	jne    0x41ae43
41ae70:	33 c0                	xor    %eax,%eax
41ae72:	5a                   	pop    %edx
41ae73:	59                   	pop    %ecx
41ae74:	59                   	pop    %ecx
41ae75:	64 89 10             	mov    %edx,%fs:(%eax)
41ae78:	68 8f ae 41 00       	push   $0x41ae8f
41ae7d:	a1 e4 12 47 00       	mov    0x4712e4,%eax
41ae82:	e8 bd d0 ff ff       	call   0x417f44
41ae87:	c3                   	ret
41ae88:	e9 fb 91 fe ff       	jmp    0x404088
41ae8d:	eb ee                	jmp    0x41ae7d
41ae8f:	5f                   	pop    %edi
41ae90:	5e                   	pop    %esi
41ae91:	5b                   	pop    %ebx
41ae92:	5d                   	pop    %ebp
41ae93:	c3                   	ret
41ae94:	55                   	push   %ebp
41ae95:	8b ec                	mov    %esp,%ebp
41ae97:	83 c4 f0             	add    $0xfffffff0,%esp
41ae9a:	53                   	push   %ebx
41ae9b:	56                   	push   %esi
41ae9c:	57                   	push   %edi
41ae9d:	33 d2                	xor    %edx,%edx
41ae9f:	89 55 fc             	mov    %edx,-0x4(%ebp)
41aea2:	89 45 f8             	mov    %eax,-0x8(%ebp)
41aea5:	33 c0                	xor    %eax,%eax
41aea7:	55                   	push   %ebp
41aea8:	68 ca af 41 00       	push   $0x41afca
41aead:	64 ff 30             	push   %fs:(%eax)
41aeb0:	64 89 20             	mov    %esp,%fs:(%eax)
41aeb3:	8b 45 f8             	mov    -0x8(%ebp),%eax
41aeb6:	8b 40 30             	mov    0x30(%eax),%eax
41aeb9:	85 c0                	test   %eax,%eax
41aebb:	0f 84 f3 00 00 00    	je     0x41afb4
41aec1:	33 d2                	xor    %edx,%edx
41aec3:	55                   	push   %ebp
41aec4:	68 ad af 41 00       	push   $0x41afad
41aec9:	64 ff 32             	push   %fs:(%edx)
41aecc:	64 89 22             	mov    %esp,%fs:(%edx)
41aecf:	8b 40 08             	mov    0x8(%eax),%eax
41aed2:	48                   	dec    %eax
41aed3:	85 c0                	test   %eax,%eax
41aed5:	0f 8c bc 00 00 00    	jl     0x41af97
41aedb:	40                   	inc    %eax
41aedc:	89 45 f0             	mov    %eax,-0x10(%ebp)
41aedf:	33 f6                	xor    %esi,%esi
41aee1:	8b 45 f8             	mov    -0x8(%ebp),%eax
41aee4:	8b 40 30             	mov    0x30(%eax),%eax
41aee7:	8b d6                	mov    %esi,%edx
41aee9:	e8 82 cc ff ff       	call   0x417b70
41aeee:	8b d8                	mov    %eax,%ebx
41aef0:	8d 45 fc             	lea    -0x4(%ebp),%eax
41aef3:	8b 53 14             	mov    0x14(%ebx),%edx
41aef6:	e8 bd 98 fe ff       	call   0x4047b8
41aefb:	8d 55 fc             	lea    -0x4(%ebp),%edx
41aefe:	8b 45 f8             	mov    -0x8(%ebp),%eax
41af01:	8b 08                	mov    (%eax),%ecx
41af03:	ff 51 24             	call   *0x24(%ecx)
41af06:	8b 43 08             	mov    0x8(%ebx),%eax
41af09:	8b 55 fc             	mov    -0x4(%ebp),%edx
41af0c:	e8 ab f7 ff ff       	call   0x41a6bc
41af11:	89 45 f4             	mov    %eax,-0xc(%ebp)
41af14:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
41af18:	75 1d                	jne    0x41af37
41af1a:	8b 45 f8             	mov    -0x8(%ebp),%eax
41af1d:	66 83 78 7a 00       	cmpw   $0x0,0x7a(%eax)
41af22:	74 13                	je     0x41af37
41af24:	8d 45 f4             	lea    -0xc(%ebp),%eax
41af27:	50                   	push   %eax
41af28:	8b 7d f8             	mov    -0x8(%ebp),%edi
41af2b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41af2e:	8b 55 f8             	mov    -0x8(%ebp),%edx
41af31:	8b 47 7c             	mov    0x7c(%edi),%eax
41af34:	ff 57 78             	call   *0x78(%edi)
41af37:	8b 45 f8             	mov    -0x8(%ebp),%eax
41af3a:	8b 40 30             	mov    0x30(%eax),%eax
41af3d:	8b d6                	mov    %esi,%edx
41af3f:	e8 2c cc ff ff       	call   0x417b70
41af44:	e8 cf fe ff ff       	call   0x41ae18
41af49:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
41af4d:	75 35                	jne    0x41af84
41af4f:	8b c3                	mov    %ebx,%eax
41af51:	e8 8a f6 ff ff       	call   0x41a5e0
41af56:	84 c0                	test   %al,%al
41af58:	74 2a                	je     0x41af84
41af5a:	8b 45 f8             	mov    -0x8(%ebp),%eax
41af5d:	8b 40 30             	mov    0x30(%eax),%eax
41af60:	8b d6                	mov    %esi,%edx
41af62:	e8 09 cc ff ff       	call   0x417b70
41af67:	8b d0                	mov    %eax,%edx
41af69:	a1 e4 12 47 00       	mov    0x4712e4,%eax
41af6e:	e8 e5 ce ff ff       	call   0x417e58
41af73:	8b 45 f8             	mov    -0x8(%ebp),%eax
41af76:	8b 40 30             	mov    0x30(%eax),%eax
41af79:	33 c9                	xor    %ecx,%ecx
41af7b:	8b d6                	mov    %esi,%edx
41af7d:	e8 e2 cc ff ff       	call   0x417c64
41af82:	eb 09                	jmp    0x41af8d
41af84:	8b 55 f4             	mov    -0xc(%ebp),%edx
41af87:	8b c3                	mov    %ebx,%eax
41af89:	8b 08                	mov    (%eax),%ecx
41af8b:	ff 11                	call   *(%ecx)
41af8d:	46                   	inc    %esi
41af8e:	ff 4d f0             	decl   -0x10(%ebp)
41af91:	0f 85 4a ff ff ff    	jne    0x41aee1
41af97:	33 c0                	xor    %eax,%eax
41af99:	5a                   	pop    %edx
41af9a:	59                   	pop    %ecx
41af9b:	59                   	pop    %ecx
41af9c:	64 89 10             	mov    %edx,%fs:(%eax)
41af9f:	68 b4 af 41 00       	push   $0x41afb4
41afa4:	8b 45 f8             	mov    -0x8(%ebp),%eax
41afa7:	e8 50 00 00 00       	call   0x41affc
41afac:	c3                   	ret
41afad:	e9 d6 90 fe ff       	jmp    0x404088
41afb2:	eb f0                	jmp    0x41afa4
41afb4:	33 c0                	xor    %eax,%eax
41afb6:	5a                   	pop    %edx
41afb7:	59                   	pop    %ecx
41afb8:	59                   	pop    %ecx
41afb9:	64 89 10             	mov    %edx,%fs:(%eax)
41afbc:	68 d1 af 41 00       	push   $0x41afd1
41afc1:	8d 45 fc             	lea    -0x4(%ebp),%eax
41afc4:	e8 57 97 fe ff       	call   0x404720
41afc9:	c3                   	ret
41afca:	e9 b9 90 fe ff       	jmp    0x404088
41afcf:	eb f0                	jmp    0x41afc1
41afd1:	5f                   	pop    %edi
41afd2:	5e                   	pop    %esi
41afd3:	5b                   	pop    %ebx
41afd4:	8b e5                	mov    %ebp,%esp
41afd6:	5d                   	pop    %ebp
41afd7:	c3                   	ret
41afd8:	53                   	push   %ebx
41afd9:	8b d8                	mov    %eax,%ebx
41afdb:	8b c3                	mov    %ebx,%eax
41afdd:	e8 ee 00 00 00       	call   0x41b0d0
41afe2:	99                   	cltd
41afe3:	52                   	push   %edx
41afe4:	50                   	push   %eax
41afe5:	8b 43 04             	mov    0x4(%ebx),%eax
41afe8:	e8 1f ea ff ff       	call   0x419a0c
41afed:	33 c0                	xor    %eax,%eax
41afef:	89 43 10             	mov    %eax,0x10(%ebx)
41aff2:	33 c0                	xor    %eax,%eax
41aff4:	89 43 14             	mov    %eax,0x14(%ebx)
41aff7:	5b                   	pop    %ebx
41aff8:	c3                   	ret
41aff9:	8d 40 00             	lea    0x0(%eax),%eax
41affc:	53                   	push   %ebx
41affd:	56                   	push   %esi
41affe:	57                   	push   %edi
41afff:	8b d8                	mov    %eax,%ebx
41b001:	8b 43 30             	mov    0x30(%ebx),%eax
41b004:	85 c0                	test   %eax,%eax
41b006:	74 2b                	je     0x41b033
41b008:	8b 70 08             	mov    0x8(%eax),%esi
41b00b:	4e                   	dec    %esi
41b00c:	85 f6                	test   %esi,%esi
41b00e:	7c 16                	jl     0x41b026
41b010:	46                   	inc    %esi
41b011:	33 ff                	xor    %edi,%edi
41b013:	8b d7                	mov    %edi,%edx
41b015:	8b 43 30             	mov    0x30(%ebx),%eax
41b018:	e8 53 cb ff ff       	call   0x417b70
41b01d:	e8 d2 88 fe ff       	call   0x4038f4
41b022:	47                   	inc    %edi
41b023:	4e                   	dec    %esi
41b024:	75 ed                	jne    0x41b013
41b026:	8b 43 30             	mov    0x30(%ebx),%eax
41b029:	e8 c6 88 fe ff       	call   0x4038f4
41b02e:	33 c0                	xor    %eax,%eax
41b030:	89 43 30             	mov    %eax,0x30(%ebx)
41b033:	5f                   	pop    %edi
41b034:	5e                   	pop    %esi
41b035:	5b                   	pop    %ebx
41b036:	c3                   	ret
41b037:	90                   	nop
41b038:	53                   	push   %ebx
41b039:	56                   	push   %esi
41b03a:	57                   	push   %edi
41b03b:	55                   	push   %ebp
41b03c:	83 c4 f4             	add    $0xfffffff4,%esp
41b03f:	89 4c 24 04          	mov    %ecx,0x4(%esp)
41b043:	89 04 24             	mov    %eax,(%esp)
41b046:	8b c2                	mov    %edx,%eax
41b048:	e8 7f 87 fe ff       	call   0x4037cc
41b04d:	8b e8                	mov    %eax,%ebp
41b04f:	eb 47                	jmp    0x41b098
41b051:	8b c5                	mov    %ebp,%eax
41b053:	e8 a4 c1 ff ff       	call   0x4171fc
41b058:	8b f0                	mov    %eax,%esi
41b05a:	85 f6                	test   %esi,%esi
41b05c:	74 31                	je     0x41b08f
41b05e:	0f bf 1e             	movswl (%esi),%ebx
41b061:	4b                   	dec    %ebx
41b062:	85 db                	test   %ebx,%ebx
41b064:	7c 29                	jl     0x41b08f
41b066:	43                   	inc    %ebx
41b067:	c7 44 24 08 00 00 00 	movl   $0x0,0x8(%esp)
41b06e:	00
41b06f:	8b 44 24 08          	mov    0x8(%esp),%eax
41b073:	8b 44 86 02          	mov    0x2(%esi,%eax,4),%eax
41b077:	8b 38                	mov    (%eax),%edi
41b079:	8b 54 24 04          	mov    0x4(%esp),%edx
41b07d:	8b c7                	mov    %edi,%eax
41b07f:	e8 64 87 fe ff       	call   0x4037e8
41b084:	84 c0                	test   %al,%al
41b086:	75 3d                	jne    0x41b0c5
41b088:	ff 44 24 08          	incl   0x8(%esp)
41b08c:	4b                   	dec    %ebx
41b08d:	75 e0                	jne    0x41b06f
41b08f:	8b c5                	mov    %ebp,%eax
41b091:	e8 ea 87 fe ff       	call   0x403880
41b096:	8b e8                	mov    %eax,%ebp
41b098:	3b 2d d4 58 41 00    	cmp    0x4158d4,%ebp
41b09e:	75 b1                	jne    0x41b051
41b0a0:	8b 04 24             	mov    (%esp),%eax
41b0a3:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
41b0a9:	85 c0                	test   %eax,%eax
41b0ab:	74 0d                	je     0x41b0ba
41b0ad:	8b 54 24 04          	mov    0x4(%esp),%edx
41b0b1:	e8 be c0 ff ff       	call   0x417174
41b0b6:	8b f8                	mov    %eax,%edi
41b0b8:	eb 0b                	jmp    0x41b0c5
41b0ba:	8b 44 24 04          	mov    0x4(%esp),%eax
41b0be:	e8 b1 c1 ff ff       	call   0x417274
41b0c3:	8b f8                	mov    %eax,%edi
41b0c5:	8b c7                	mov    %edi,%eax
41b0c7:	83 c4 0c             	add    $0xc,%esp
41b0ca:	5d                   	pop    %ebp
41b0cb:	5f                   	pop    %edi
41b0cc:	5e                   	pop    %esi
41b0cd:	5b                   	pop    %ebx
41b0ce:	c3                   	ret
41b0cf:	90                   	nop
41b0d0:	53                   	push   %ebx
41b0d1:	8b d8                	mov    %eax,%ebx
41b0d3:	8b 43 04             	mov    0x4(%ebx),%eax
41b0d6:	e8 11 e9 ff ff       	call   0x4199ec
41b0db:	8b 53 14             	mov    0x14(%ebx),%edx
41b0de:	2b 53 10             	sub    0x10(%ebx),%edx
41b0e1:	2b c2                	sub    %edx,%eax
41b0e3:	5b                   	pop    %ebx
41b0e4:	c3                   	ret
41b0e5:	8d 40 00             	lea    0x0(%eax),%eax
41b0e8:	53                   	push   %ebx
41b0e9:	8b d8                	mov    %eax,%ebx
41b0eb:	8b c3                	mov    %ebx,%eax
41b0ed:	e8 2e 1b 00 00       	call   0x41cc20
41b0f2:	ff 4b 10             	decl   0x10(%ebx)
41b0f5:	5b                   	pop    %ebx
41b0f6:	c3                   	ret
41b0f7:	90                   	nop
41b0f8:	53                   	push   %ebx
41b0f9:	8b da                	mov    %edx,%ebx
41b0fb:	e8 30 1c 00 00       	call   0x41cd30
41b100:	8b c3                	mov    %ebx,%eax
41b102:	e8 21 fa ff ff       	call   0x41ab28
41b107:	5b                   	pop    %ebx
41b108:	c3                   	ret
41b109:	8d 40 00             	lea    0x0(%eax),%eax
41b10c:	56                   	push   %esi
41b10d:	57                   	push   %edi
41b10e:	53                   	push   %ebx
41b10f:	89 d7                	mov    %edx,%edi
41b111:	89 cb                	mov    %ecx,%ebx
41b113:	89 c6                	mov    %eax,%esi
41b115:	eb 36                	jmp    0x41b14d
41b117:	8b 4e 14             	mov    0x14(%esi),%ecx
41b11a:	2b 4e 10             	sub    0x10(%esi),%ecx
41b11d:	77 0a                	ja     0x41b129
41b11f:	89 f0                	mov    %esi,%eax
41b121:	e8 32 00 00 00       	call   0x41b158
41b126:	8b 4e 14             	mov    0x14(%esi),%ecx
41b129:	39 d9                	cmp    %ebx,%ecx
41b12b:	72 02                	jb     0x41b12f
41b12d:	89 d9                	mov    %ebx,%ecx
41b12f:	56                   	push   %esi
41b130:	29 cb                	sub    %ecx,%ebx
41b132:	8b 46 08             	mov    0x8(%esi),%eax
41b135:	03 46 10             	add    0x10(%esi),%eax
41b138:	01 4e 10             	add    %ecx,0x10(%esi)
41b13b:	89 c6                	mov    %eax,%esi
41b13d:	89 ca                	mov    %ecx,%edx
41b13f:	c1 e9 02             	shr    $0x2,%ecx
41b142:	fc                   	cld
41b143:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
41b145:	89 d1                	mov    %edx,%ecx
41b147:	83 e1 03             	and    $0x3,%ecx
41b14a:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
41b14c:	5e                   	pop    %esi
41b14d:	09 db                	or     %ebx,%ebx
41b14f:	75 c6                	jne    0x41b117
41b151:	5b                   	pop    %ebx
41b152:	5f                   	pop    %edi
41b153:	5e                   	pop    %esi
41b154:	c3                   	ret
41b155:	8d 40 00             	lea    0x0(%eax),%eax
41b158:	53                   	push   %ebx
41b159:	56                   	push   %esi
41b15a:	8b d8                	mov    %eax,%ebx
41b15c:	8b 53 08             	mov    0x8(%ebx),%edx
41b15f:	8b 4b 0c             	mov    0xc(%ebx),%ecx
41b162:	8b 43 04             	mov    0x4(%ebx),%eax
41b165:	8b 30                	mov    (%eax),%esi
41b167:	ff 56 0c             	call   *0xc(%esi)