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
420239:	50                   	push   %eax
42023a:	6a 00                	push   $0x0
42023c:	8b 4d f8             	mov    -0x8(%ebp),%ecx
42023f:	8b 55 fc             	mov    -0x4(%ebp),%edx
420242:	8b c3                	mov    %ebx,%eax
420244:	e8 cf 07 00 00       	call   0x420a18
420249:	33 c0                	xor    %eax,%eax
42024b:	5a                   	pop    %edx
42024c:	59                   	pop    %ecx
42024d:	59                   	pop    %ecx
42024e:	64 89 10             	mov    %edx,%fs:(%eax)
420251:	eb 26                	jmp    0x420279
420253:	e9 40 3a fe ff       	jmp    0x403c98
420258:	8b 45 f8             	mov    -0x8(%ebp),%eax
42025b:	e8 a4 ba ff ff       	call   0x41bd04
420260:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
420264:	74 09                	je     0x42026f
420266:	8b 45 fc             	mov    -0x4(%ebp),%eax
420269:	50                   	push   %eax
42026a:	e8 0d 66 fe ff       	call   0x40687c
42026f:	e8 38 3d fe ff       	call   0x403fac
420274:	e8 87 3d fe ff       	call   0x404000
420279:	5f                   	pop    %edi
42027a:	5e                   	pop    %esi
42027b:	5b                   	pop    %ebx
42027c:	8b e5                	mov    %ebp,%esp
42027e:	5d                   	pop    %ebp
42027f:	c2 04 00             	ret    $0x4
420282:	8b c0                	mov    %eax,%eax
420284:	53                   	push   %ebx
420285:	8b d8                	mov    %eax,%ebx
420287:	8b c3                	mov    %ebx,%eax
420289:	e8 ea 02 00 00       	call   0x420578
42028e:	8b 43 28             	mov    0x28(%ebx),%eax
420291:	33 d2                	xor    %edx,%edx
420293:	89 50 50             	mov    %edx,0x50(%eax)
420296:	33 d2                	xor    %edx,%edx
420298:	89 50 54             	mov    %edx,0x54(%eax)
42029b:	83 c0 6c             	add    $0x6c,%eax
42029e:	e8 35 d1 fe ff       	call   0x40d3d8
4202a3:	5b                   	pop    %ebx
4202a4:	c3                   	ret
4202a5:	8d 40 00             	lea    0x0(%eax),%eax
4202a8:	c6 40 31 00          	movb   $0x0,0x31(%eax)
4202ac:	e8 0b ec ff ff       	call   0x41eebc
4202b1:	c3                   	ret
4202b2:	8b c0                	mov    %eax,%eax
4202b4:	53                   	push   %ebx
4202b5:	56                   	push   %esi
4202b6:	57                   	push   %edi
4202b7:	83 c4 ac             	add    $0xffffffac,%esp
4202ba:	8b d8                	mov    %eax,%ebx
4202bc:	b2 01                	mov    $0x1,%dl
4202be:	a1 78 23 41 00       	mov    0x412378,%eax
4202c3:	e8 04 35 fe ff       	call   0x4037cc
4202c8:	8b f0                	mov    %eax,%esi
4202ca:	8b d6                	mov    %esi,%edx
4202cc:	8b c3                	mov    %ebx,%eax
4202ce:	8b 08                	mov    (%eax),%ecx
4202d0:	ff 51 58             	call   *0x58(%ecx)
4202d3:	8b c6                	mov    %esi,%eax
4202d5:	8b 10                	mov    (%eax),%edx
4202d7:	ff 12                	call   *(%edx)
4202d9:	52                   	push   %edx
4202da:	50                   	push   %eax
4202db:	8b c6                	mov    %esi,%eax
4202dd:	e8 4a 5a ff ff       	call   0x415d2c
4202e2:	8b 43 28             	mov    0x28(%ebx),%eax
4202e5:	56                   	push   %esi
4202e6:	8d 70 18             	lea    0x18(%eax),%esi
4202e9:	8d 7c 24 04          	lea    0x4(%esp),%edi
4202ed:	b9 15 00 00 00       	mov    $0x15,%ecx
4202f2:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4202f4:	5e                   	pop    %esi
4202f5:	33 c0                	xor    %eax,%eax
4202f7:	89 44 24 14          	mov    %eax,0x14(%esp)
4202fb:	8b c3                	mov    %ebx,%eax
4202fd:	e8 a6 04 00 00       	call   0x4207a8
420302:	8d 43 2c             	lea    0x2c(%ebx),%eax
420305:	e8 ce d0 fe ff       	call   0x40d3d8
42030a:	54                   	push   %esp
42030b:	8b 43 28             	mov    0x28(%ebx),%eax
42030e:	8a 40 70             	mov    0x70(%eax),%al
420311:	50                   	push   %eax
420312:	56                   	push   %esi
420313:	33 c9                	xor    %ecx,%ecx
420315:	33 d2                	xor    %edx,%edx
420317:	8b c3                	mov    %ebx,%eax
420319:	e8 fa 06 00 00       	call   0x420a18
42031e:	83 c4 54             	add    $0x54,%esp
420321:	5f                   	pop    %edi
420322:	5e                   	pop    %esi
420323:	5b                   	pop    %ebx
420324:	c3                   	ret
420325:	8d 40 00             	lea    0x0(%eax),%eax
420328:	55                   	push   %ebp
420329:	8b ec                	mov    %esp,%ebp
42032b:	83 c4 e4             	add    $0xffffffe4,%esp
42032e:	53                   	push   %ebx
42032f:	56                   	push   %esi
420330:	57                   	push   %edi
420331:	8b f9                	mov    %ecx,%edi
420333:	89 55 fc             	mov    %edx,-0x4(%ebp)
420336:	8b d8                	mov    %eax,%ebx
420338:	8b 73 28             	mov    0x28(%ebx),%esi
42033b:	8a 15 74 05 42 00    	mov    0x420574,%dl
420341:	8b 45 fc             	mov    -0x4(%ebp),%eax
420344:	e8 9b d6 ff ff       	call   0x41d9e4
420349:	8b c3                	mov    %ebx,%eax
42034b:	e8 68 05 00 00       	call   0x4208b8
420350:	33 c0                	xor    %eax,%eax
420352:	89 45 f8             	mov    %eax,-0x8(%ebp)
420355:	c6 45 f7 00          	movb   $0x0,-0x9(%ebp)
420359:	8b 46 10             	mov    0x10(%esi),%eax
42035c:	85 c0                	test   %eax,%eax
42035e:	74 22                	je     0x420382
420360:	6a ff                	push   $0xffffffff
420362:	50                   	push   %eax
420363:	8b 45 fc             	mov    -0x4(%ebp),%eax
420366:	8b 40 04             	mov    0x4(%eax),%eax
420369:	50                   	push   %eax
42036a:	e8 f5 65 fe ff       	call   0x406964
42036f:	89 45 f8             	mov    %eax,-0x8(%ebp)
420372:	8b 45 fc             	mov    -0x4(%ebp),%eax
420375:	8b 40 04             	mov    0x4(%eax),%eax
420378:	50                   	push   %eax
420379:	e8 be 65 fe ff       	call   0x40693c
42037e:	c6 45 f7 01          	movb   $0x1,-0x9(%ebp)
420382:	6a 0c                	push   $0xc
420384:	8b 45 fc             	mov    -0x4(%ebp),%eax
420387:	8b 40 04             	mov    0x4(%eax),%eax
42038a:	50                   	push   %eax
42038b:	e8 34 65 fe ff       	call   0x4068c4
420390:	50                   	push   %eax
420391:	6a 0e                	push   $0xe
420393:	8b 45 fc             	mov    -0x4(%ebp),%eax
420396:	8b 40 04             	mov    0x4(%eax),%eax
420399:	50                   	push   %eax
42039a:	e8 25 65 fe ff       	call   0x4068c4
42039f:	8b d0                	mov    %eax,%edx
4203a1:	58                   	pop    %eax
4203a2:	f7 ea                	imul   %edx
4203a4:	83 f8 08             	cmp    $0x8,%eax
4203a7:	7f 0f                	jg     0x4203b8
4203a9:	0f b7 56 2a          	movzwl 0x2a(%esi),%edx
4203ad:	0f b7 4e 28          	movzwl 0x28(%esi),%ecx
4203b1:	0f af d1             	imul   %ecx,%edx
4203b4:	3b c2                	cmp    %edx,%eax
4203b6:	7c 04                	jl     0x4203bc
4203b8:	33 c0                	xor    %eax,%eax
4203ba:	eb 02                	jmp    0x4203be
4203bc:	b0 01                	mov    $0x1,%al
4203be:	84 c0                	test   %al,%al
4203c0:	74 38                	je     0x4203fa
4203c2:	8d 45 ef             	lea    -0x11(%ebp),%eax
4203c5:	50                   	push   %eax
4203c6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4203c9:	8b 40 04             	mov    0x4(%eax),%eax
4203cc:	50                   	push   %eax
4203cd:	e8 c2 64 fe ff       	call   0x406894
4203d2:	6a 04                	push   $0x4
4203d4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4203d7:	8b 40 04             	mov    0x4(%eax),%eax
4203da:	50                   	push   %eax
4203db:	e8 cc 65 fe ff       	call   0x4069ac
4203e0:	8d 45 ef             	lea    -0x11(%ebp),%eax
4203e3:	50                   	push   %eax
4203e4:	8b 45 f3             	mov    -0xd(%ebp),%eax
4203e7:	50                   	push   %eax
4203e8:	8b 45 ef             	mov    -0x11(%ebp),%eax
4203eb:	50                   	push   %eax
4203ec:	8b 45 fc             	mov    -0x4(%ebp),%eax
4203ef:	8b 40 04             	mov    0x4(%eax),%eax
4203f2:	50                   	push   %eax
4203f3:	e8 8c 65 fe ff       	call   0x406984