412e04:	74 0a                	je     0x412e10
412e06:	8b d3                	mov    %ebx,%edx
412e08:	8b 46 08             	mov    0x8(%esi),%eax
412e0b:	8b 08                	mov    (%eax),%ecx
412e0d:	ff 51 48             	call   *0x48(%ecx)
412e10:	4b                   	dec    %ebx
412e11:	83 fb ff             	cmp    $0xffffffff,%ebx
412e14:	75 db                	jne    0x412df1
412e16:	5f                   	pop    %edi
412e17:	5e                   	pop    %esi
412e18:	5b                   	pop    %ebx
412e19:	c3                   	ret
412e1a:	8b c0                	mov    %eax,%eax
412e1c:	53                   	push   %ebx
412e1d:	56                   	push   %esi
412e1e:	57                   	push   %edi
412e1f:	55                   	push   %ebp
412e20:	51                   	push   %ecx
412e21:	89 14 24             	mov    %edx,(%esp)
412e24:	8b f8                	mov    %eax,%edi
412e26:	8b 47 20             	mov    0x20(%edi),%eax
412e29:	3b 04 24             	cmp    (%esp),%eax
412e2c:	74 31                	je     0x412e5f
412e2e:	8b 04 24             	mov    (%esp),%eax
412e31:	89 47 20             	mov    %eax,0x20(%edi)
412e34:	8b 47 04             	mov    0x4(%edi),%eax
412e37:	8b 70 08             	mov    0x8(%eax),%esi
412e3a:	4e                   	dec    %esi
412e3b:	85 f6                	test   %esi,%esi
412e3d:	7c 20                	jl     0x412e5f
412e3f:	46                   	inc    %esi
412e40:	33 ed                	xor    %ebp,%ebp
412e42:	8b 47 04             	mov    0x4(%edi),%eax
412e45:	8b d5                	mov    %ebp,%edx
412e47:	e8 30 0f 00 00       	call   0x413d7c
412e4c:	8b d8                	mov    %eax,%ebx
412e4e:	8b 14 24             	mov    (%esp),%edx
412e51:	8b c3                	mov    %ebx,%eax
412e53:	e8 fc fd ff ff       	call   0x412c54
412e58:	88 43 10             	mov    %al,0x10(%ebx)
412e5b:	45                   	inc    %ebp
412e5c:	4e                   	dec    %esi
412e5d:	75 e3                	jne    0x412e42
412e5f:	5a                   	pop    %edx
412e60:	5d                   	pop    %ebp
412e61:	5f                   	pop    %edi
412e62:	5e                   	pop    %esi
412e63:	5b                   	pop    %ebx
412e64:	c3                   	ret
412e65:	8d 40 00             	lea    0x0(%eax),%eax
412e68:	53                   	push   %ebx
412e69:	56                   	push   %esi
412e6a:	57                   	push   %edi
412e6b:	84 d2                	test   %dl,%dl
412e6d:	74 08                	je     0x412e77
412e6f:	83 c4 f0             	add    $0xfffffff0,%esp
412e72:	e8 f5 06 ff ff       	call   0x40356c
412e77:	8b da                	mov    %edx,%ebx
412e79:	8b f8                	mov    %eax,%edi
412e7b:	33 d2                	xor    %edx,%edx
412e7d:	8b c7                	mov    %edi,%eax
412e7f:	e8 94 03 ff ff       	call   0x403218
412e84:	b2 01                	mov    $0x1,%dl
412e86:	a1 88 18 41 00       	mov    0x411888,%eax
412e8b:	e8 88 03 ff ff       	call   0x403218
412e90:	89 47 04             	mov    %eax,0x4(%edi)
412e93:	8d 47 08             	lea    0x8(%edi),%eax
412e96:	50                   	push   %eax
412e97:	e8 80 32 ff ff       	call   0x40611c
412e9c:	8b 0d 98 19 41 00    	mov    0x411998,%ecx
412ea2:	b2 01                	mov    $0x1,%dl
412ea4:	a1 ac 29 41 00       	mov    0x4129ac,%eax
412ea9:	e8 8a fc ff ff       	call   0x412b38
412eae:	8b f0                	mov    %eax,%esi
412eb0:	8b 47 04             	mov    0x4(%edi),%eax
412eb3:	8b d6                	mov    %esi,%edx
412eb5:	e8 66 0d 00 00       	call   0x413c20
412eba:	c6 46 10 01          	movb   $0x1,0x10(%esi)
412ebe:	8b c7                	mov    %edi,%eax
412ec0:	84 db                	test   %bl,%bl
412ec2:	74 0f                	je     0x412ed3
412ec4:	e8 fb 06 ff ff       	call   0x4035c4
412ec9:	64 8f 05 00 00 00 00 	pop    %fs:0x0
412ed0:	83 c4 0c             	add    $0xc,%esp
412ed3:	8b c7                	mov    %edi,%eax
412ed5:	5f                   	pop    %edi
412ed6:	5e                   	pop    %esi
412ed7:	5b                   	pop    %ebx
412ed8:	c3                   	ret
412ed9:	8d 40 00             	lea    0x0(%eax),%eax
412edc:	53                   	push   %ebx
412edd:	56                   	push   %esi
412ede:	57                   	push   %edi
412edf:	55                   	push   %ebp
412ee0:	e8 ef 06 ff ff       	call   0x4035d4
412ee5:	8b da                	mov    %edx,%ebx
412ee7:	8b f0                	mov    %eax,%esi
412ee9:	8d 46 08             	lea    0x8(%esi),%eax
412eec:	50                   	push   %eax
412eed:	e8 c2 30 ff ff       	call   0x405fb4
412ef2:	8b 46 04             	mov    0x4(%esi),%eax
412ef5:	8b 68 08             	mov    0x8(%eax),%ebp
412ef8:	4d                   	dec    %ebp
412ef9:	85 ed                	test   %ebp,%ebp
412efb:	7c 16                	jl     0x412f13
412efd:	45                   	inc    %ebp
412efe:	33 ff                	xor    %edi,%edi
412f00:	8b 46 04             	mov    0x4(%esi),%eax
412f03:	8b d7                	mov    %edi,%edx
412f05:	e8 72 0e 00 00       	call   0x413d7c
412f0a:	e8 39 03 ff ff       	call   0x403248
412f0f:	47                   	inc    %edi
412f10:	4d                   	dec    %ebp
412f11:	75 ed                	jne    0x412f00
412f13:	8b 46 04             	mov    0x4(%esi),%eax
412f16:	e8 2d 03 ff ff       	call   0x403248
412f1b:	8b d3                	mov    %ebx,%edx
412f1d:	80 e2 fc             	and    $0xfc,%dl
412f20:	8b c6                	mov    %esi,%eax
412f22:	e8 11 03 ff ff       	call   0x403238
412f27:	84 db                	test   %bl,%bl
412f29:	7e 07                	jle    0x412f32
412f2b:	8b c6                	mov    %esi,%eax
412f2d:	e8 8a 06 ff ff       	call   0x4035bc
412f32:	5d                   	pop    %ebp
412f33:	5f                   	pop    %edi
412f34:	5e                   	pop    %esi
412f35:	5b                   	pop    %ebx
412f36:	c3                   	ret
412f37:	90                   	nop
412f38:	53                   	push   %ebx
412f39:	56                   	push   %esi
412f3a:	57                   	push   %edi
412f3b:	55                   	push   %ebp
412f3c:	51                   	push   %ecx
412f3d:	89 14 24             	mov    %edx,(%esp)
412f40:	8b e8                	mov    %eax,%ebp
412f42:	33 f6                	xor    %esi,%esi
412f44:	8b 45 04             	mov    0x4(%ebp),%eax
412f47:	8b 58 08             	mov    0x8(%eax),%ebx
412f4a:	4b                   	dec    %ebx
412f4b:	85 db                	test   %ebx,%ebx
412f4d:	7c 25                	jl     0x412f74
412f4f:	43                   	inc    %ebx
412f50:	33 ff                	xor    %edi,%edi
412f52:	8b 45 04             	mov    0x4(%ebp),%eax
412f55:	8b d7                	mov    %edi,%edx
412f57:	e8 20 0e 00 00       	call   0x413d7c
412f5c:	8b 14 24             	mov    (%esp),%edx
412f5f:	52                   	push   %edx
412f60:	8b ce                	mov    %esi,%ecx
412f62:	8b d0                	mov    %eax,%edx
412f64:	a1 ac 29 41 00       	mov    0x4129ac,%eax
412f69:	e8 5a fb ff ff       	call   0x412ac8
412f6e:	8b f0                	mov    %eax,%esi
412f70:	47                   	inc    %edi
412f71:	4b                   	dec    %ebx
412f72:	75 de                	jne    0x412f52
412f74:	8b c6                	mov    %esi,%eax
412f76:	5a                   	pop    %edx
412f77:	5d                   	pop    %ebp
412f78:	5f                   	pop    %edi
412f79:	5e                   	pop    %esi
412f7a:	5b                   	pop    %ebx
412f7b:	c3                   	ret
412f7c:	53                   	push   %ebx
412f7d:	56                   	push   %esi
412f7e:	57                   	push   %edi
412f7f:	55                   	push   %ebp
412f80:	51                   	push   %ecx
412f81:	89 14 24             	mov    %edx,(%esp)
412f84:	8b e8                	mov    %eax,%ebp
412f86:	33 ff                	xor    %edi,%edi
412f88:	8b 45 04             	mov    0x4(%ebp),%eax
412f8b:	8b 58 08             	mov    0x8(%eax),%ebx
412f8e:	4b                   	dec    %ebx
412f8f:	85 db                	test   %ebx,%ebx
412f91:	7c 25                	jl     0x412fb8
412f93:	43                   	inc    %ebx
412f94:	33 f6                	xor    %esi,%esi
412f96:	8b 45 04             	mov    0x4(%ebp),%eax
412f99:	8b d6                	mov    %esi,%edx
412f9b:	e8 dc 0d 00 00       	call   0x413d7c
412fa0:	80 78 10 00          	cmpb   $0x0,0x10(%eax)
412fa4:	74 0a                	je     0x412fb0
412fa6:	8b 14 24             	mov    (%esp),%edx
412fa9:	e8 46 fc ff ff       	call   0x412bf4
412fae:	8b f8                	mov    %eax,%edi
412fb0:	85 ff                	test   %edi,%edi
412fb2:	75 04                	jne    0x412fb8
412fb4:	46                   	inc    %esi
412fb5:	4b                   	dec    %ebx
412fb6:	75 de                	jne    0x412f96
412fb8:	8b c7                	mov    %edi,%eax
412fba:	5a                   	pop    %edx
412fbb:	5d                   	pop    %ebp
412fbc:	5f                   	pop    %edi
412fbd:	5e                   	pop    %esi
412fbe:	5b                   	pop    %ebx
412fbf:	c3                   	ret
412fc0:	55                   	push   %ebp
412fc1:	8b ec                	mov    %esp,%ebp
412fc3:	81 c4 f4 fe ff ff    	add    $0xfffffef4,%esp
412fc9:	33 c0                	xor    %eax,%eax
412fcb:	89 85 f4 fe ff ff    	mov    %eax,-0x10c(%ebp)
412fd1:	33 c0                	xor    %eax,%eax
412fd3:	55                   	push   %ebp
412fd4:	68 43 30 41 00       	push   $0x413043
412fd9:	64 ff 30             	push   %fs:(%eax)
412fdc:	64 89 20             	mov    %esp,%fs:(%eax)
412fdf:	8d 95 f8 fe ff ff    	lea    -0x108(%ebp),%edx
412fe5:	8b 45 08             	mov    0x8(%ebp),%eax
412fe8:	8b 40 fc             	mov    -0x4(%eax),%eax
412feb:	e8 a8 01 ff ff       	call   0x403198
412ff0:	8d 85 f8 fe ff ff    	lea    -0x108(%ebp),%eax
412ff6:	89 45 f8             	mov    %eax,-0x8(%ebp)
412ff9:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
412ffd:	8d 45 f8             	lea    -0x8(%ebp),%eax
413000:	50                   	push   %eax
413001:	6a 00                	push   $0x0
413003:	8d 95 f4 fe ff ff    	lea    -0x10c(%ebp),%edx
413009:	a1 a0 dd 46 00       	mov    0x46dda0,%eax
41300e:	e8 e9 2a ff ff       	call   0x405afc
413013:	8b 8d f4 fe ff ff    	mov    -0x10c(%ebp),%ecx
413019:	b2 01                	mov    $0x1,%dl
41301b:	a1 a0 14 41 00       	mov    0x4114a0,%eax
413020:	e8 7f 85 ff ff       	call   0x40b5a4
413025:	e8 aa 09 ff ff       	call   0x4039d4
41302a:	33 c0                	xor    %eax,%eax
41302c:	5a                   	pop    %edx
41302d:	59                   	pop    %ecx
41302e:	59                   	pop    %ecx
41302f:	64 89 10             	mov    %edx,%fs:(%eax)
413032:	68 4a 30 41 00       	push   $0x41304a
413037:	8d 85 f4 fe ff ff    	lea    -0x10c(%ebp),%eax
41303d:	e8 56 0f ff ff       	call   0x403f98
413042:	c3                   	ret
413043:	e9 54 09 ff ff       	jmp    0x40399c
413048:	eb ed                	jmp    0x413037
41304a:	8b e5                	mov    %ebp,%esp
41304c:	5d                   	pop    %ebp
41304d:	c3                   	ret
41304e:	8b c0                	mov    %eax,%eax
413050:	55                   	push   %ebp
413051:	8b ec                	mov    %esp,%ebp
413053:	83 c4 e8             	add    $0xffffffe8,%esp
413056:	53                   	push   %ebx
413057:	56                   	push   %esi
413058:	57                   	push   %edi
413059:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41305c:	89 55 f4             	mov    %edx,-0xc(%ebp)
41305f:	89 45 f8             	mov    %eax,-0x8(%ebp)
413062:	8b 55 fc             	mov    -0x4(%ebp),%edx
413065:	8b 45 f8             	mov    -0x8(%ebp),%eax
413068:	e8 cb fe ff ff       	call   0x412f38
41306d:	89 45 f0             	mov    %eax,-0x10(%ebp)
413070:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
413074:	75 07                	jne    0x41307d
413076:	55                   	push   %ebp
413077:	e8 44 ff ff ff       	call   0x412fc0
41307c:	59                   	pop    %ecx
41307d:	8b 55 f4             	mov    -0xc(%ebp),%edx
413080:	8b 45 f0             	mov    -0x10(%ebp),%eax
413083:	e8 d4 f9 ff ff       	call   0x412a5c
413088:	8b 45 f8             	mov    -0x8(%ebp),%eax
41308b:	8b 40 04             	mov    0x4(%eax),%eax
41308e:	8b 40 08             	mov    0x8(%eax),%eax
413091:	48                   	dec    %eax
413092:	85 c0                	test   %eax,%eax
413094:	7c 7a                	jl     0x413110
413096:	40                   	inc    %eax
413097:	89 45 e8             	mov    %eax,-0x18(%ebp)
41309a:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
4130a1:	8b 45 f8             	mov    -0x8(%ebp),%eax
4130a4:	8b 40 04             	mov    0x4(%eax),%eax
4130a7:	8b 55 ec             	mov    -0x14(%ebp),%edx
4130aa:	e8 cd 0c 00 00       	call   0x413d7c
4130af:	8b f8                	mov    %eax,%edi
4130b1:	3b 7d f0             	cmp    -0x10(%ebp),%edi
4130b4:	74 52                	je     0x413108
4130b6:	8b 47 04             	mov    0x4(%edi),%eax
4130b9:	8b 58 08             	mov    0x8(%eax),%ebx
4130bc:	4b                   	dec    %ebx
4130bd:	83 fb 00             	cmp    $0x0,%ebx
4130c0:	7c 46                	jl     0x413108
4130c2:	8b 47 04             	mov    0x4(%edi),%eax
4130c5:	8b d3                	mov    %ebx,%edx
4130c7:	e8 b0 0c 00 00       	call   0x413d7c
4130cc:	8b f0                	mov    %eax,%esi
4130ce:	8b 55 f4             	mov    -0xc(%ebp),%edx
4130d1:	8b c6                	mov    %esi,%eax
4130d3:	e8 9c 03 ff ff       	call   0x403474
4130d8:	84 c0                	test   %al,%al
4130da:	74 26                	je     0x413102
4130dc:	8b d6                	mov    %esi,%edx
4130de:	8b 45 f8             	mov    -0x8(%ebp),%eax
4130e1:	e8 52 fe ff ff       	call   0x412f38
4130e6:	3b 45 f0             	cmp    -0x10(%ebp),%eax
4130e9:	75 17                	jne    0x413102
4130eb:	8b 47 04             	mov    0x4(%edi),%eax
4130ee:	8b d3                	mov    %ebx,%edx
4130f0:	e8 77 0b 00 00       	call   0x413c6c
4130f5:	8b 45 f0             	mov    -0x10(%ebp),%eax
4130f8:	8b 40 04             	mov    0x4(%eax),%eax
4130fb:	8b d6                	mov    %esi,%edx
4130fd:	e8 1e 0b 00 00       	call   0x413c20
413102:	4b                   	dec    %ebx
413103:	83 fb ff             	cmp    $0xffffffff,%ebx
413106:	75 ba                	jne    0x4130c2
413108:	ff 45 ec             	incl   -0x14(%ebp)
41310b:	ff 4d e8             	decl   -0x18(%ebp)
41310e:	75 91                	jne    0x4130a1
413110:	5f                   	pop    %edi
413111:	5e                   	pop    %esi
413112:	5b                   	pop    %ebx
413113:	8b e5                	mov    %ebp,%esp
413115:	5d                   	pop    %ebp
413116:	c3                   	ret
413117:	90                   	nop
413118:	83 c0 08             	add    $0x8,%eax
41311b:	50                   	push   %eax
41311c:	e8 9b 2e ff ff       	call   0x405fbc
413121:	c3                   	ret
413122:	8b c0                	mov    %eax,%eax
413124:	53                   	push   %ebx
413125:	8b da                	mov    %edx,%ebx
413127:	8b d3                	mov    %ebx,%edx
413129:	e8 0a fe ff ff       	call   0x412f38
41312e:	85 c0                	test   %eax,%eax
413130:	74 07                	je     0x413139
413132:	8b d3                	mov    %ebx,%edx
413134:	e8 5f fb ff ff       	call   0x412c98
413139:	5b                   	pop    %ebx
41313a:	c3                   	ret
41313b:	90                   	nop
41313c:	53                   	push   %ebx
41313d:	56                   	push   %esi
41313e:	57                   	push   %edi
41313f:	55                   	push   %ebp
413140:	51                   	push   %ecx
413141:	8b ea                	mov    %edx,%ebp
413143:	8b f8                	mov    %eax,%edi
413145:	c6 04 24 01          	movb   $0x1,(%esp)
413149:	8b 47 04             	mov    0x4(%edi),%eax
41314c:	8b 58 08             	mov    0x8(%eax),%ebx
41314f:	4b                   	dec    %ebx
413150:	85 db                	test   %ebx,%ebx
413152:	7c 1c                	jl     0x413170
413154:	43                   	inc    %ebx
413155:	33 f6                	xor    %esi,%esi