420114:	66 ba 02 00          	mov    $0x2,%dx
420118:	8b c6                	mov    %esi,%eax
42011a:	e8 49 00 00 00       	call   0x420168
42011f:	8b c6                	mov    %esi,%eax
420121:	84 db                	test   %bl,%bl
420123:	74 0f                	je     0x420134
420125:	e8 9a 34 fe ff       	call   0x4035c4
42012a:	64 8f 05 00 00 00 00 	pop    %fs:0x0
420131:	83 c4 0c             	add    $0xc,%esp
420134:	8b c6                	mov    %esi,%eax
420136:	5e                   	pop    %esi
420137:	5b                   	pop    %ebx
420138:	c3                   	ret
420139:	8d 40 00             	lea    0x0(%eax),%eax
42013c:	53                   	push   %ebx
42013d:	56                   	push   %esi
42013e:	e8 91 34 fe ff       	call   0x4035d4
420143:	8b da                	mov    %edx,%ebx
420145:	8b f0                	mov    %eax,%esi
420147:	8b 46 04             	mov    0x4(%esi),%eax
42014a:	e8 f9 30 fe ff       	call   0x403248
42014f:	8b 46 08             	mov    0x8(%esi),%eax
420152:	e8 f1 30 fe ff       	call   0x403248
420157:	84 db                	test   %bl,%bl
420159:	7e 07                	jle    0x420162
42015b:	8b c6                	mov    %esi,%eax
42015d:	e8 5a 34 fe ff       	call   0x4035bc
420162:	5e                   	pop    %esi
420163:	5b                   	pop    %ebx
420164:	c3                   	ret
420165:	8d 40 00             	lea    0x0(%eax),%eax
420168:	55                   	push   %ebp
420169:	8b ec                	mov    %esp,%ebp
42016b:	83 c4 f8             	add    $0xfffffff8,%esp
42016e:	53                   	push   %ebx
42016f:	56                   	push   %esi
420170:	57                   	push   %edi
420171:	8b da                	mov    %edx,%ebx
420173:	89 45 fc             	mov    %eax,-0x4(%ebp)
420176:	8b 45 fc             	mov    -0x4(%ebp),%eax
420179:	8b 40 04             	mov    0x4(%eax),%eax
42017c:	8b d1                	mov    %ecx,%edx
42017e:	e8 9d 3a ff ff       	call   0x413c20
420183:	89 45 f8             	mov    %eax,-0x8(%ebp)
420186:	33 c0                	xor    %eax,%eax
420188:	55                   	push   %ebp
420189:	68 ac 01 42 00       	push   $0x4201ac
42018e:	64 ff 30             	push   %fs:(%eax)
420191:	64 89 20             	mov    %esp,%fs:(%eax)
420194:	0f b7 d3             	movzwl %bx,%edx
420197:	8b 45 fc             	mov    -0x4(%ebp),%eax
42019a:	8b 40 08             	mov    0x8(%eax),%eax
42019d:	e8 7e 3a ff ff       	call   0x413c20
4201a2:	33 c0                	xor    %eax,%eax
4201a4:	5a                   	pop    %edx
4201a5:	59                   	pop    %ecx
4201a6:	59                   	pop    %ecx
4201a7:	64 89 10             	mov    %edx,%fs:(%eax)
4201aa:	eb 1d                	jmp    0x4201c9
4201ac:	e9 37 35 fe ff       	jmp    0x4036e8
4201b1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4201b4:	8b 40 04             	mov    0x4(%eax),%eax
4201b7:	8b 55 f8             	mov    -0x8(%ebp),%edx
4201ba:	e8 ad 3a ff ff       	call   0x413c6c
4201bf:	e8 38 38 fe ff       	call   0x4039fc
4201c4:	e8 87 38 fe ff       	call   0x403a50
4201c9:	5f                   	pop    %edi
4201ca:	5e                   	pop    %esi
4201cb:	5b                   	pop    %ebx
4201cc:	59                   	pop    %ecx
4201cd:	59                   	pop    %ecx
4201ce:	5d                   	pop    %ebp
4201cf:	c3                   	ret
4201d0:	83 3d cc 36 46 00 00 	cmpl   $0x0,0x4636cc
4201d7:	75 11                	jne    0x4201ea
4201d9:	b2 01                	mov    $0x1,%dl
4201db:	a1 c4 fa 41 00       	mov    0x41fac4,%eax
4201e0:	e8 4f f9 ff ff       	call   0x41fb34
4201e5:	a3 cc 36 46 00       	mov    %eax,0x4636cc
4201ea:	a1 cc 36 46 00       	mov    0x4636cc,%eax
4201ef:	c3                   	ret
4201f0:	83 3d c8 36 46 00 00 	cmpl   $0x0,0x4636c8
4201f7:	75 11                	jne    0x42020a
4201f9:	b2 01                	mov    $0x1,%dl
4201fb:	a1 5c 00 42 00       	mov    0x42005c,%eax
420200:	e8 b7 fe ff ff       	call   0x4200bc
420205:	a3 c8 36 46 00       	mov    %eax,0x4636c8
42020a:	a1 c8 36 46 00       	mov    0x4636c8,%eax
42020f:	c3                   	ret
420210:	53                   	push   %ebx
420211:	56                   	push   %esi
420212:	84 d2                	test   %dl,%dl
420214:	74 08                	je     0x42021e
420216:	83 c4 f0             	add    $0xfffffff0,%esp
420219:	e8 4e 33 fe ff       	call   0x40356c
42021e:	8b da                	mov    %edx,%ebx
420220:	8b f0                	mov    %eax,%esi
420222:	33 d2                	xor    %edx,%edx
420224:	8b c6                	mov    %esi,%eax
420226:	e8 ed 2f fe ff       	call   0x403218
42022b:	e8 a0 ff ff ff       	call   0x4201d0
420230:	e8 bb ff ff ff       	call   0x4201f0
420235:	8b c6                	mov    %esi,%eax
420237:	84 db                	test   %bl,%bl
420239:	74 0f                	je     0x42024a
42023b:	e8 84 33 fe ff       	call   0x4035c4
420240:	64 8f 05 00 00 00 00 	pop    %fs:0x0
420247:	83 c4 0c             	add    $0xc,%esp
42024a:	8b c6                	mov    %esi,%eax
42024c:	5e                   	pop    %esi
42024d:	5b                   	pop    %ebx
42024e:	c3                   	ret
42024f:	90                   	nop
420250:	53                   	push   %ebx
420251:	56                   	push   %esi
420252:	e8 7d 33 fe ff       	call   0x4035d4
420257:	8b da                	mov    %edx,%ebx
420259:	8b f0                	mov    %eax,%esi
42025b:	8b 46 0c             	mov    0xc(%esi),%eax
42025e:	e8 e5 2f fe ff       	call   0x403248
420263:	8b d3                	mov    %ebx,%edx
420265:	80 e2 fc             	and    $0xfc,%dl
420268:	8b c6                	mov    %esi,%eax
42026a:	e8 f5 40 ff ff       	call   0x414364
42026f:	84 db                	test   %bl,%bl
420271:	7e 07                	jle    0x42027a
420273:	8b c6                	mov    %esi,%eax
420275:	e8 42 33 fe ff       	call   0x4035bc
42027a:	5e                   	pop    %esi
42027b:	5b                   	pop    %ebx
42027c:	c3                   	ret
42027d:	8d 40 00             	lea    0x0(%eax),%eax
420280:	53                   	push   %ebx
420281:	56                   	push   %esi
420282:	8b f2                	mov    %edx,%esi
420284:	8b d8                	mov    %eax,%ebx
420286:	8b c6                	mov    %esi,%eax
420288:	e8 03 2f fe ff       	call   0x403190
42028d:	8b d0                	mov    %eax,%edx
42028f:	8b 43 0c             	mov    0xc(%ebx),%eax
420292:	e8 3d 31 fe ff       	call   0x4033d4
420297:	84 c0                	test   %al,%al
420299:	74 0d                	je     0x4202a8
42029b:	8b 53 0c             	mov    0xc(%ebx),%edx
42029e:	8b c6                	mov    %esi,%eax
4202a0:	8b 08                	mov    (%eax),%ecx
4202a2:	ff 51 08             	call   *0x8(%ecx)
4202a5:	5e                   	pop    %esi
4202a6:	5b                   	pop    %ebx
4202a7:	c3                   	ret
4202a8:	8b d6                	mov    %esi,%edx
4202aa:	8b c3                	mov    %ebx,%eax
4202ac:	e8 c3 41 ff ff       	call   0x414474
4202b1:	5e                   	pop    %esi
4202b2:	5b                   	pop    %ebx
4202b3:	c3                   	ret
4202b4:	53                   	push   %ebx
4202b5:	56                   	push   %esi
4202b6:	57                   	push   %edi
4202b7:	8b fa                	mov    %edx,%edi
4202b9:	8b d8                	mov    %eax,%ebx
4202bb:	8b 73 0c             	mov    0xc(%ebx),%esi
4202be:	8b c6                	mov    %esi,%eax
4202c0:	8b d7                	mov    %edi,%edx
4202c2:	e8 0d 31 fe ff       	call   0x4033d4
4202c7:	84 c0                	test   %al,%al
4202c9:	75 47                	jne    0x420312
4202cb:	8b c6                	mov    %esi,%eax
4202cd:	e8 76 2f fe ff       	call   0x403248
4202d2:	33 c0                	xor    %eax,%eax
4202d4:	89 43 0c             	mov    %eax,0xc(%ebx)
4202d7:	b2 01                	mov    $0x1,%dl
4202d9:	8b c7                	mov    %edi,%eax
4202db:	ff 50 48             	call   *0x48(%eax)
4202de:	8b f0                	mov    %eax,%esi
4202e0:	89 73 0c             	mov    %esi,0xc(%ebx)
4202e3:	89 5e 14             	mov    %ebx,0x14(%esi)
4202e6:	8b c3                	mov    %ebx,%eax
4202e8:	66 ba fd ff          	mov    $0xfffd,%dx
4202ec:	e8 6b 31 fe ff       	call   0x40345c
4202f1:	89 46 10             	mov    %eax,0x10(%esi)
4202f4:	89 5e 1c             	mov    %ebx,0x1c(%esi)
4202f7:	8b c3                	mov    %ebx,%eax
4202f9:	66 ba fc ff          	mov    $0xfffc,%dx
4202fd:	e8 5a 31 fe ff       	call   0x40345c
420302:	89 46 18             	mov    %eax,0x18(%esi)
420305:	8b d3                	mov    %ebx,%edx
420307:	8b c3                	mov    %ebx,%eax
420309:	66 be fd ff          	mov    $0xfffd,%si
42030d:	e8 32 31 fe ff       	call   0x403444
420312:	5f                   	pop    %edi
420313:	5e                   	pop    %esi
420314:	5b                   	pop    %ebx
420315:	c3                   	ret
420316:	8b c0                	mov    %eax,%eax
420318:	53                   	push   %ebx
420319:	8b d8                	mov    %eax,%ebx
42031b:	8b 15 1c c3 41 00    	mov    0x41c31c,%edx
420321:	8b c3                	mov    %ebx,%eax
420323:	e8 8c ff ff ff       	call   0x4202b4
420328:	8b 43 0c             	mov    0xc(%ebx),%eax
42032b:	5b                   	pop    %ebx
42032c:	c3                   	ret
42032d:	8d 40 00             	lea    0x0(%eax),%eax
420330:	55                   	push   %ebp
420331:	8b ec                	mov    %esp,%ebp
420333:	51                   	push   %ecx
420334:	53                   	push   %ebx
420335:	56                   	push   %esi
420336:	57                   	push   %edi
420337:	8b f2                	mov    %edx,%esi
420339:	8b d8                	mov    %eax,%ebx
42033b:	33 c0                	xor    %eax,%eax
42033d:	89 45 fc             	mov    %eax,-0x4(%ebp)
420340:	85 f6                	test   %esi,%esi
420342:	74 49                	je     0x42038d
420344:	8b c6                	mov    %esi,%eax
420346:	e8 45 2e fe ff       	call   0x403190
42034b:	b2 01                	mov    $0x1,%dl
42034d:	ff 50 48             	call   *0x48(%eax)
420350:	89 45 fc             	mov    %eax,-0x4(%ebp)
420353:	8b d6                	mov    %esi,%edx
420355:	8b 45 fc             	mov    -0x4(%ebp),%eax
420358:	8b 08                	mov    (%eax),%ecx
42035a:	ff 51 08             	call   *0x8(%ecx)
42035d:	8b 45 fc             	mov    -0x4(%ebp),%eax
420360:	89 58 14             	mov    %ebx,0x14(%eax)
420363:	50                   	push   %eax
420364:	8b c3                	mov    %ebx,%eax
420366:	66 ba fd ff          	mov    $0xfffd,%dx
42036a:	e8 ed 30 fe ff       	call   0x40345c
42036f:	8b d0                	mov    %eax,%edx
420371:	58                   	pop    %eax
420372:	89 50 10             	mov    %edx,0x10(%eax)
420375:	8b 45 fc             	mov    -0x4(%ebp),%eax
420378:	89 58 1c             	mov    %ebx,0x1c(%eax)
42037b:	50                   	push   %eax
42037c:	8b c3                	mov    %ebx,%eax
42037e:	66 ba fc ff          	mov    $0xfffc,%dx
420382:	e8 d5 30 fe ff       	call   0x40345c
420387:	8b d0                	mov    %eax,%edx
420389:	58                   	pop    %eax
42038a:	89 50 18             	mov    %edx,0x18(%eax)
42038d:	33 c0                	xor    %eax,%eax
42038f:	55                   	push   %ebp
420390:	68 c0 03 42 00       	push   $0x4203c0
420395:	64 ff 30             	push   %fs:(%eax)
420398:	64 89 20             	mov    %esp,%fs:(%eax)
42039b:	8b 43 0c             	mov    0xc(%ebx),%eax
42039e:	e8 a5 2e fe ff       	call   0x403248
4203a3:	8b 45 fc             	mov    -0x4(%ebp),%eax
4203a6:	89 43 0c             	mov    %eax,0xc(%ebx)
4203a9:	8b d3                	mov    %ebx,%edx
4203ab:	8b c3                	mov    %ebx,%eax
4203ad:	66 be fd ff          	mov    $0xfffd,%si
4203b1:	e8 8e 30 fe ff       	call   0x403444
4203b6:	33 c0                	xor    %eax,%eax
4203b8:	5a                   	pop    %edx
4203b9:	59                   	pop    %ecx
4203ba:	59                   	pop    %ecx
4203bb:	64 89 10             	mov    %edx,%fs:(%eax)
4203be:	eb 17                	jmp    0x4203d7
4203c0:	e9 23 33 fe ff       	jmp    0x4036e8
4203c5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4203c8:	e8 7b 2e fe ff       	call   0x403248
4203cd:	e8 2a 36 fe ff       	call   0x4039fc
4203d2:	e8 79 36 fe ff       	call   0x403a50
4203d7:	5f                   	pop    %edi
4203d8:	5e                   	pop    %esi
4203d9:	5b                   	pop    %ebx
4203da:	59                   	pop    %ecx
4203db:	5d                   	pop    %ebp
4203dc:	c3                   	ret
4203dd:	8d 40 00             	lea    0x0(%eax),%eax
4203e0:	55                   	push   %ebp
4203e1:	8b ec                	mov    %esp,%ebp
4203e3:	83 c4 ec             	add    $0xffffffec,%esp
4203e6:	53                   	push   %ebx
4203e7:	56                   	push   %esi
4203e8:	57                   	push   %edi
4203e9:	33 c9                	xor    %ecx,%ecx
4203eb:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4203ee:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4203f1:	8b f2                	mov    %edx,%esi
4203f3:	8b d8                	mov    %eax,%ebx
4203f5:	33 c0                	xor    %eax,%eax
4203f7:	55                   	push   %ebp
4203f8:	68 04 05 42 00       	push   $0x420504
4203fd:	64 ff 30             	push   %fs:(%eax)
420400:	64 89 20             	mov    %esp,%fs:(%eax)
420403:	8d 55 fc             	lea    -0x4(%ebp),%edx
420406:	8b c6                	mov    %esi,%eax
420408:	e8 07 81 fe ff       	call   0x408514
42040d:	8d 45 fc             	lea    -0x4(%ebp),%eax
420410:	b9 01 00 00 00       	mov    $0x1,%ecx
420415:	ba 01 00 00 00       	mov    $0x1,%edx
42041a:	e8 d9 40 fe ff       	call   0x4044f8
42041f:	8b 55 fc             	mov    -0x4(%ebp),%edx
420422:	a1 cc 36 46 00       	mov    0x4636cc,%eax
420427:	e8 1c f9 ff ff       	call   0x41fd48
42042c:	85 c0                	test   %eax,%eax
42042e:	75 31                	jne    0x420461
420430:	8b 45 fc             	mov    -0x4(%ebp),%eax
420433:	89 45 f0             	mov    %eax,-0x10(%ebp)
420436:	c6 45 f4 0b          	movb   $0xb,-0xc(%ebp)
42043a:	8d 45 f0             	lea    -0x10(%ebp),%eax
42043d:	50                   	push   %eax
42043e:	6a 00                	push   $0x0
420440:	8d 55 ec             	lea    -0x14(%ebp),%edx
420443:	a1 0c de 46 00       	mov    0x46de0c,%eax
420448:	e8 af 56 fe ff       	call   0x405afc
42044d:	8b 4d ec             	mov    -0x14(%ebp),%ecx
420450:	b2 01                	mov    $0x1,%dl
420452:	a1 70 b5 41 00       	mov    0x41b570,%eax
420457:	e8 48 b1 fe ff       	call   0x40b5a4
42045c:	e8 73 35 fe ff       	call   0x4039d4
420461:	b2 01                	mov    $0x1,%dl
420463:	ff 50 48             	call   *0x48(%eax)
420466:	89 45 f8             	mov    %eax,-0x8(%ebp)
420469:	33 c0                	xor    %eax,%eax
42046b:	55                   	push   %ebp
42046c:	68 a3 04 42 00       	push   $0x4204a3
420471:	64 ff 30             	push   %fs:(%eax)
420474:	64 89 20             	mov    %esp,%fs:(%eax)
420477:	8b 45 f8             	mov    -0x8(%ebp),%eax
42047a:	89 58 1c             	mov    %ebx,0x1c(%eax)
42047d:	50                   	push   %eax
42047e:	8b c3                	mov    %ebx,%eax
420480:	66 ba fc ff          	mov    $0xfffc,%dx
420484:	e8 d3 2f fe ff       	call   0x40345c
420489:	8b d0                	mov    %eax,%edx
42048b:	58                   	pop    %eax
42048c:	89 50 18             	mov    %edx,0x18(%eax)
42048f:	8b d6                	mov    %esi,%edx
420491:	8b 45 f8             	mov    -0x8(%ebp),%eax
420494:	8b 08                	mov    (%eax),%ecx
420496:	ff 51 4c             	call   *0x4c(%ecx)
420499:	33 c0                	xor    %eax,%eax
42049b:	5a                   	pop    %edx
42049c:	59                   	pop    %ecx
42049d:	59                   	pop    %ecx
42049e:	64 89 10             	mov    %edx,%fs:(%eax)
4204a1:	eb 17                	jmp    0x4204ba
4204a3:	e9 40 32 fe ff       	jmp    0x4036e8
4204a8:	8b 45 f8             	mov    -0x8(%ebp),%eax
4204ab:	e8 98 2d fe ff       	call   0x403248
4204b0:	e8 47 35 fe ff       	call   0x4039fc
4204b5:	e8 96 35 fe ff       	call   0x403a50
4204ba:	8b 43 0c             	mov    0xc(%ebx),%eax
4204bd:	e8 86 2d fe ff       	call   0x403248