41fe8d:	6a 01                	push   $0x1
41fe8f:	6a 01                	push   $0x1
41fe91:	8b 45 98             	mov    -0x68(%ebp),%eax
41fe94:	50                   	push   %eax
41fe95:	8b 45 94             	mov    -0x6c(%ebp),%eax
41fe98:	50                   	push   %eax
41fe99:	e8 76 69 fe ff       	call   0x406814
41fe9e:	89 45 fc             	mov    %eax,-0x4(%ebp)
41fea1:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
41fea5:	0f 84 3e 01 00 00    	je     0x41ffe9
41feab:	8b 45 fc             	mov    -0x4(%ebp),%eax
41feae:	50                   	push   %eax
41feaf:	8b 45 f0             	mov    -0x10(%ebp),%eax
41feb2:	50                   	push   %eax
41feb3:	e8 a4 6a fe ff       	call   0x40695c
41feb8:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41febb:	81 ff ff ff ff 1f    	cmp    $0x1fffffff,%edi
41fec1:	75 1c                	jne    0x41fedf
41fec3:	6a 42                	push   $0x42
41fec5:	8b 45 98             	mov    -0x68(%ebp),%eax
41fec8:	50                   	push   %eax
41fec9:	8b 45 94             	mov    -0x6c(%ebp),%eax
41fecc:	50                   	push   %eax
41fecd:	6a 00                	push   $0x0
41fecf:	6a 00                	push   $0x0
41fed1:	8b 45 f0             	mov    -0x10(%ebp),%eax
41fed4:	50                   	push   %eax
41fed5:	e8 5a 6a fe ff       	call   0x406934
41feda:	e9 f7 00 00 00       	jmp    0x41ffd6
41fedf:	8b 45 f8             	mov    -0x8(%ebp),%eax
41fee2:	50                   	push   %eax
41fee3:	e8 44 69 fe ff       	call   0x40682c
41fee8:	e8 0f de ff ff       	call   0x41dcfc
41feed:	89 45 f4             	mov    %eax,-0xc(%ebp)
41fef0:	33 c0                	xor    %eax,%eax
41fef2:	55                   	push   %ebp
41fef3:	68 cf ff 41 00       	push   $0x41ffcf
41fef8:	64 ff 30             	push   %fs:(%eax)
41fefb:	64 89 20             	mov    %esp,%fs:(%eax)
41fefe:	83 7d a4 00          	cmpl   $0x0,-0x5c(%ebp)
41ff02:	74 1e                	je     0x41ff22
41ff04:	c6 45 ef 01          	movb   $0x1,-0x11(%ebp)
41ff08:	33 c0                	xor    %eax,%eax
41ff0a:	89 45 a8             	mov    %eax,-0x58(%ebp)
41ff0d:	8d 45 90             	lea    -0x70(%ebp),%eax
41ff10:	50                   	push   %eax
41ff11:	6a 00                	push   $0x0
41ff13:	8b ce                	mov    %esi,%ecx
41ff15:	8b d6                	mov    %esi,%edx
41ff17:	8b c3                	mov    %ebx,%eax
41ff19:	e8 36 f8 ff ff       	call   0x41f754
41ff1e:	8b d8                	mov    %eax,%ebx
41ff20:	eb 04                	jmp    0x41ff26
41ff22:	c6 45 ef 00          	movb   $0x0,-0x11(%ebp)
41ff26:	53                   	push   %ebx
41ff27:	8b 45 f4             	mov    -0xc(%ebp),%eax
41ff2a:	50                   	push   %eax
41ff2b:	e8 2c 6a fe ff       	call   0x40695c
41ff30:	89 45 e8             	mov    %eax,-0x18(%ebp)
41ff33:	85 f6                	test   %esi,%esi
41ff35:	74 2a                	je     0x41ff61
41ff37:	6a 00                	push   $0x0
41ff39:	56                   	push   %esi
41ff3a:	8b 45 f4             	mov    -0xc(%ebp),%eax
41ff3d:	50                   	push   %eax
41ff3e:	e8 21 6a fe ff       	call   0x406964
41ff43:	8b 45 f4             	mov    -0xc(%ebp),%eax
41ff46:	50                   	push   %eax
41ff47:	e8 f0 69 fe ff       	call   0x40693c
41ff4c:	6a 00                	push   $0x0
41ff4e:	56                   	push   %esi
41ff4f:	8b 45 f0             	mov    -0x10(%ebp),%eax
41ff52:	50                   	push   %eax
41ff53:	e8 0c 6a fe ff       	call   0x406964
41ff58:	8b 45 f0             	mov    -0x10(%ebp),%eax
41ff5b:	50                   	push   %eax
41ff5c:	e8 db 69 fe ff       	call   0x40693c
41ff61:	57                   	push   %edi
41ff62:	8b 45 f4             	mov    -0xc(%ebp),%eax
41ff65:	50                   	push   %eax
41ff66:	e8 09 6a fe ff       	call   0x406974
41ff6b:	8b f0                	mov    %eax,%esi
41ff6d:	68 20 00 cc 00       	push   $0xcc0020
41ff72:	6a 00                	push   $0x0
41ff74:	6a 00                	push   $0x0
41ff76:	8b 45 f4             	mov    -0xc(%ebp),%eax
41ff79:	50                   	push   %eax
41ff7a:	8b 45 98             	mov    -0x68(%ebp),%eax
41ff7d:	50                   	push   %eax
41ff7e:	8b 45 94             	mov    -0x6c(%ebp),%eax
41ff81:	50                   	push   %eax
41ff82:	6a 00                	push   $0x0
41ff84:	6a 00                	push   $0x0
41ff86:	8b 45 f0             	mov    -0x10(%ebp),%eax
41ff89:	50                   	push   %eax
41ff8a:	e8 7d 68 fe ff       	call   0x40680c
41ff8f:	56                   	push   %esi
41ff90:	8b 45 f4             	mov    -0xc(%ebp),%eax
41ff93:	50                   	push   %eax
41ff94:	e8 db 69 fe ff       	call   0x406974
41ff99:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
41ff9d:	74 0d                	je     0x41ffac
41ff9f:	8b 45 e8             	mov    -0x18(%ebp),%eax
41ffa2:	50                   	push   %eax
41ffa3:	8b 45 f4             	mov    -0xc(%ebp),%eax
41ffa6:	50                   	push   %eax
41ffa7:	e8 b0 69 fe ff       	call   0x40695c
41ffac:	80 7d ef 00          	cmpb   $0x0,-0x11(%ebp)
41ffb0:	74 06                	je     0x41ffb8
41ffb2:	53                   	push   %ebx
41ffb3:	e8 c4 68 fe ff       	call   0x40687c
41ffb8:	33 c0                	xor    %eax,%eax
41ffba:	5a                   	pop    %edx
41ffbb:	59                   	pop    %ecx
41ffbc:	59                   	pop    %ecx
41ffbd:	64 89 10             	mov    %edx,%fs:(%eax)
41ffc0:	68 d6 ff 41 00       	push   $0x41ffd6
41ffc5:	8b 45 f4             	mov    -0xc(%ebp),%eax
41ffc8:	50                   	push   %eax
41ffc9:	e8 a6 68 fe ff       	call   0x406874
41ffce:	c3                   	ret
41ffcf:	e9 78 3f fe ff       	jmp    0x403f4c
41ffd4:	eb ef                	jmp    0x41ffc5
41ffd6:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
41ffda:	74 0d                	je     0x41ffe9
41ffdc:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41ffdf:	50                   	push   %eax
41ffe0:	8b 45 f0             	mov    -0x10(%ebp),%eax
41ffe3:	50                   	push   %eax
41ffe4:	e8 73 69 fe ff       	call   0x40695c
41ffe9:	33 c0                	xor    %eax,%eax
41ffeb:	5a                   	pop    %edx
41ffec:	59                   	pop    %ecx
41ffed:	59                   	pop    %ecx
41ffee:	64 89 10             	mov    %edx,%fs:(%eax)
41fff1:	68 1e 00 42 00       	push   $0x42001e
41fff6:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
41fffa:	74 09                	je     0x420005
41fffc:	8b 45 f0             	mov    -0x10(%ebp),%eax
41ffff:	50                   	push   %eax
420000:	e8 6f 68 fe ff       	call   0x406874
420005:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
420009:	74 0b                	je     0x420016
42000b:	8b 45 f8             	mov    -0x8(%ebp),%eax
42000e:	50                   	push   %eax
42000f:	6a 00                	push   $0x0
420011:	e8 7e 6d fe ff       	call   0x406d94
420016:	c3                   	ret
420017:	e9 30 3f fe ff       	jmp    0x403f4c
42001c:	eb d8                	jmp    0x41fff6
42001e:	8b 45 fc             	mov    -0x4(%ebp),%eax
420021:	5f                   	pop    %edi
420022:	5e                   	pop    %esi
420023:	5b                   	pop    %ebx
420024:	8b e5                	mov    %ebp,%esp
420026:	5d                   	pop    %ebp
420027:	c3                   	ret
420028:	53                   	push   %ebx
420029:	56                   	push   %esi
42002a:	57                   	push   %edi
42002b:	84 d2                	test   %dl,%dl
42002d:	74 08                	je     0x420037
42002f:	83 c4 f0             	add    $0xfffffff0,%esp
420032:	e8 e5 3a fe ff       	call   0x403b1c
420037:	8b da                	mov    %edx,%ebx
420039:	8b f8                	mov    %eax,%edi
42003b:	33 d2                	xor    %edx,%edx
42003d:	8b c7                	mov    %edi,%eax
42003f:	e8 40 ee ff ff       	call   0x41ee84
420044:	c7 47 34 00 00 00 20 	movl   $0x20000000,0x34(%edi)
42004b:	b2 01                	mov    $0x1,%dl
42004d:	a1 88 ba 41 00       	mov    0x41ba88,%eax
420052:	e8 75 37 fe ff       	call   0x4037cc
420057:	8b f0                	mov    %eax,%esi
420059:	89 77 28             	mov    %esi,0x28(%edi)
42005c:	8b c6                	mov    %esi,%eax
42005e:	e8 1d f5 ff ff       	call   0x41f580
420063:	80 3d 70 54 45 00 00 	cmpb   $0x0,0x455470
42006a:	74 09                	je     0x420075
42006c:	b2 01                	mov    $0x1,%dl
42006e:	8b c7                	mov    %edi,%eax
420070:	8b 08                	mov    (%eax),%ecx
420072:	ff 51 6c             	call   *0x6c(%ecx)
420075:	8b c7                	mov    %edi,%eax
420077:	84 db                	test   %bl,%bl
420079:	74 0f                	je     0x42008a
42007b:	e8 f4 3a fe ff       	call   0x403b74
420080:	64 8f 05 00 00 00 00 	pop    %fs:0x0
420087:	83 c4 0c             	add    $0xc,%esp
42008a:	8b c7                	mov    %edi,%eax
42008c:	5f                   	pop    %edi
42008d:	5e                   	pop    %esi
42008e:	5b                   	pop    %ebx
42008f:	c3                   	ret
420090:	53                   	push   %ebx
420091:	56                   	push   %esi
420092:	e8 ed 3a fe ff       	call   0x403b84
420097:	8b da                	mov    %edx,%ebx
420099:	8b f0                	mov    %eax,%esi
42009b:	8b c6                	mov    %esi,%eax
42009d:	e8 06 07 00 00       	call   0x4207a8
4200a2:	8b 46 28             	mov    0x28(%esi),%eax
4200a5:	e8 da f4 ff ff       	call   0x41f584
4200aa:	8b 46 2c             	mov    0x2c(%esi),%eax
4200ad:	e8 4a 37 fe ff       	call   0x4037fc
4200b2:	8b d3                	mov    %ebx,%edx
4200b4:	80 e2 fc             	and    $0xfc,%dl
4200b7:	8b c6                	mov    %esi,%eax
4200b9:	e8 c2 44 ff ff       	call   0x414580
4200be:	84 db                	test   %bl,%bl
4200c0:	7e 07                	jle    0x4200c9
4200c2:	8b c6                	mov    %esi,%eax
4200c4:	e8 a3 3a fe ff       	call   0x403b6c
4200c9:	5e                   	pop    %esi
4200ca:	5b                   	pop    %ebx
4200cb:	c3                   	ret
4200cc:	55                   	push   %ebp
4200cd:	8b ec                	mov    %esp,%ebp
4200cf:	83 c4 a8             	add    $0xffffffa8,%esp
4200d2:	53                   	push   %ebx
4200d3:	56                   	push   %esi
4200d4:	8b da                	mov    %edx,%ebx
4200d6:	89 45 fc             	mov    %eax,-0x4(%ebp)
4200d9:	85 db                	test   %ebx,%ebx
4200db:	74 15                	je     0x4200f2
4200dd:	8b c3                	mov    %ebx,%eax
4200df:	8b 15 e8 ba 41 00    	mov    0x41bae8,%edx
4200e5:	e8 aa 38 fe ff       	call   0x403994
4200ea:	84 c0                	test   %al,%al
4200ec:	0f 84 c1 00 00 00    	je     0x4201b3
4200f2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4200f5:	e8 ae 06 00 00       	call   0x4207a8
4200fa:	68 ac 18 46 00       	push   $0x4618ac
4200ff:	e8 20 65 fe ff       	call   0x406624
420104:	33 c0                	xor    %eax,%eax
420106:	55                   	push   %ebp
420107:	68 8c 01 42 00       	push   $0x42018c
42010c:	64 ff 30             	push   %fs:(%eax)
42010f:	64 89 20             	mov    %esp,%fs:(%eax)
420112:	85 db                	test   %ebx,%ebx
420114:	74 3b                	je     0x420151
420116:	8b f3                	mov    %ebx,%esi
420118:	8b 46 28             	mov    0x28(%esi),%eax
42011b:	e8 60 f4 ff ff       	call   0x41f580
420120:	8b 45 fc             	mov    -0x4(%ebp),%eax
420123:	8b 40 28             	mov    0x28(%eax),%eax
420126:	e8 59 f4 ff ff       	call   0x41f584
42012b:	8b 46 28             	mov    0x28(%esi),%eax
42012e:	8b 55 fc             	mov    -0x4(%ebp),%edx
420131:	89 42 28             	mov    %eax,0x28(%edx)
420134:	8a 46 21             	mov    0x21(%esi),%al
420137:	8b 55 fc             	mov    -0x4(%ebp),%edx
42013a:	88 42 21             	mov    %al,0x21(%edx)
42013d:	8b 46 34             	mov    0x34(%esi),%eax
420140:	8b 55 fc             	mov    -0x4(%ebp),%edx
420143:	89 42 34             	mov    %eax,0x34(%edx)
420146:	8a 46 38             	mov    0x38(%esi),%al
420149:	8b 55 fc             	mov    -0x4(%ebp),%edx
42014c:	88 42 38             	mov    %al,0x38(%edx)
42014f:	eb 23                	jmp    0x420174
420151:	8d 45 a8             	lea    -0x58(%ebp),%eax
420154:	33 c9                	xor    %ecx,%ecx
420156:	ba 54 00 00 00       	mov    $0x54,%edx
42015b:	e8 bc 2d fe ff       	call   0x402f1c
420160:	8d 45 a8             	lea    -0x58(%ebp),%eax
420163:	50                   	push   %eax
420164:	6a 00                	push   $0x0
420166:	6a 00                	push   $0x0
420168:	33 c9                	xor    %ecx,%ecx
42016a:	33 d2                	xor    %edx,%edx
42016c:	8b 45 fc             	mov    -0x4(%ebp),%eax
42016f:	e8 a4 08 00 00       	call   0x420a18
420174:	33 c0                	xor    %eax,%eax
420176:	5a                   	pop    %edx
420177:	59                   	pop    %ecx
420178:	59                   	pop    %ecx
420179:	64 89 10             	mov    %edx,%fs:(%eax)
42017c:	68 93 01 42 00       	push   $0x420193
420181:	68 ac 18 46 00       	push   $0x4618ac
420186:	e8 c9 65 fe ff       	call   0x406754
42018b:	c3                   	ret
42018c:	e9 bb 3d fe ff       	jmp    0x403f4c
420191:	eb ee                	jmp    0x420181
420193:	8b 45 fc             	mov    -0x4(%ebp),%eax
420196:	8b 10                	mov    (%eax),%edx
420198:	ff 52 24             	call   *0x24(%edx)
42019b:	85 c0                	test   %eax,%eax
42019d:	0f 95 c0             	setne  %al
4201a0:	8b 55 fc             	mov    -0x4(%ebp),%edx
4201a3:	88 42 22             	mov    %al,0x22(%edx)
4201a6:	8b 55 fc             	mov    -0x4(%ebp),%edx
4201a9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4201ac:	8b 08                	mov    (%eax),%ecx
4201ae:	ff 51 10             	call   *0x10(%ecx)
4201b1:	eb 0a                	jmp    0x4201bd
4201b3:	8b d3                	mov    %ebx,%edx
4201b5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4201b8:	e8 ef 43 ff ff       	call   0x4145ac
4201bd:	5e                   	pop    %esi
4201be:	5b                   	pop    %ebx
4201bf:	8b e5                	mov    %ebp,%esp
4201c1:	5d                   	pop    %ebp
4201c2:	c3                   	ret
4201c3:	90                   	nop
4201c4:	55                   	push   %ebp
4201c5:	8b ec                	mov    %esp,%ebp
4201c7:	83 c4 a4             	add    $0xffffffa4,%esp
4201ca:	53                   	push   %ebx
4201cb:	56                   	push   %esi
4201cc:	57                   	push   %edi
4201cd:	8b 75 08             	mov    0x8(%ebp),%esi
4201d0:	8d 7d a4             	lea    -0x5c(%ebp),%edi
4201d3:	51                   	push   %ecx
4201d4:	b9 15 00 00 00       	mov    $0x15,%ecx
4201d9:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4201db:	59                   	pop    %ecx
4201dc:	8b f1                	mov    %ecx,%esi
4201de:	8b fa                	mov    %edx,%edi
4201e0:	8b d8                	mov    %eax,%ebx
4201e2:	8b c3                	mov    %ebx,%eax
4201e4:	e8 bf 05 00 00       	call   0x4207a8
4201e9:	33 c0                	xor    %eax,%eax
4201eb:	89 45 fc             	mov    %eax,-0x4(%ebp)
4201ee:	33 c0                	xor    %eax,%eax
4201f0:	89 45 f8             	mov    %eax,-0x8(%ebp)
4201f3:	33 c0                	xor    %eax,%eax
4201f5:	55                   	push   %ebp
4201f6:	68 53 02 42 00       	push   $0x420253
4201fb:	64 ff 30             	push   %fs:(%eax)
4201fe:	64 89 20             	mov    %esp,%fs:(%eax)
420201:	3b 35 90 18 46 00    	cmp    0x461890,%esi
420207:	75 05                	jne    0x42020e
420209:	89 75 f8             	mov    %esi,-0x8(%ebp)
42020c:	eb 0a                	jmp    0x420218
42020e:	8b c6                	mov    %esi,%eax
420210:	e8 a3 fb ff ff       	call   0x41fdb8
420215:	89 45 f8             	mov    %eax,-0x8(%ebp)
420218:	8d 45 a4             	lea    -0x5c(%ebp),%eax
42021b:	50                   	push   %eax
42021c:	8b 43 2c             	mov    0x2c(%ebx),%eax
42021f:	50                   	push   %eax
420220:	8b 4d f8             	mov    -0x8(%ebp),%ecx
420223:	8b d6                	mov    %esi,%edx
420225:	8b c7                	mov    %edi,%eax
420227:	e8 28 f5 ff ff       	call   0x41f754
42022c:	89 45 fc             	mov    %eax,-0x4(%ebp)
42022f:	8d 45 a4             	lea    -0x5c(%ebp),%eax
420232:	50                   	push   %eax
420233:	8b 43 28             	mov    0x28(%ebx),%eax
420236:	8a 40 70             	mov    0x70(%eax),%al