42234f:	8b e5                	mov    %ebp,%esp
422351:	5d                   	pop    %ebp
422352:	c3                   	ret
422353:	cc                   	int3
422354:	cc                   	int3
422355:	cc                   	int3
422356:	cc                   	int3
422357:	cc                   	int3
422358:	cc                   	int3
422359:	cc                   	int3
42235a:	cc                   	int3
42235b:	cc                   	int3
42235c:	cc                   	int3
42235d:	cc                   	int3
42235e:	cc                   	int3
42235f:	cc                   	int3
422360:	8b ff                	mov    %edi,%edi
422362:	55                   	push   %ebp
422363:	8b ec                	mov    %esp,%ebp
422365:	51                   	push   %ecx
422366:	89 4d fc             	mov    %ecx,-0x4(%ebp)
422369:	8b 45 fc             	mov    -0x4(%ebp),%eax
42236c:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
422370:	74 0d                	je     0x42237f
422372:	8b 4d fc             	mov    -0x4(%ebp),%ecx
422375:	8b 51 04             	mov    0x4(%ecx),%edx
422378:	8b 45 fc             	mov    -0x4(%ebp),%eax
42237b:	8b 08                	mov    (%eax),%ecx
42237d:	89 0a                	mov    %ecx,(%edx)
42237f:	8b e5                	mov    %ebp,%esp
422381:	5d                   	pop    %ebp
422382:	c3                   	ret
422383:	cc                   	int3
422384:	cc                   	int3
422385:	cc                   	int3
422386:	cc                   	int3
422387:	cc                   	int3
422388:	cc                   	int3
422389:	cc                   	int3
42238a:	cc                   	int3
42238b:	cc                   	int3
42238c:	cc                   	int3
42238d:	cc                   	int3
42238e:	cc                   	int3
42238f:	cc                   	int3
422390:	8b ff                	mov    %edi,%edi
422392:	55                   	push   %ebp
422393:	8b ec                	mov    %esp,%ebp
422395:	51                   	push   %ecx
422396:	89 4d fc             	mov    %ecx,-0x4(%ebp)
422399:	8b 45 fc             	mov    -0x4(%ebp),%eax
42239c:	0f b6 48 0c          	movzbl 0xc(%eax),%ecx
4223a0:	85 c9                	test   %ecx,%ecx
4223a2:	74 19                	je     0x4223bd
4223a4:	8b 55 fc             	mov    -0x4(%ebp),%edx
4223a7:	8b 02                	mov    (%edx),%eax
4223a9:	8b 88 50 03 00 00    	mov    0x350(%eax),%ecx
4223af:	83 e1 fd             	and    $0xfffffffd,%ecx
4223b2:	8b 55 fc             	mov    -0x4(%ebp),%edx
4223b5:	8b 02                	mov    (%edx),%eax
4223b7:	89 88 50 03 00 00    	mov    %ecx,0x350(%eax)
4223bd:	8b e5                	mov    %ebp,%esp
4223bf:	5d                   	pop    %ebp
4223c0:	c3                   	ret
4223c1:	cc                   	int3
4223c2:	cc                   	int3
4223c3:	cc                   	int3
4223c4:	cc                   	int3
4223c5:	cc                   	int3
4223c6:	cc                   	int3
4223c7:	cc                   	int3
4223c8:	cc                   	int3
4223c9:	cc                   	int3
4223ca:	cc                   	int3
4223cb:	cc                   	int3
4223cc:	cc                   	int3
4223cd:	cc                   	int3
4223ce:	cc                   	int3
4223cf:	cc                   	int3
4223d0:	8b ff                	mov    %edi,%edi
4223d2:	55                   	push   %ebp
4223d3:	8b ec                	mov    %esp,%ebp
4223d5:	51                   	push   %ecx
4223d6:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4223d9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4223dc:	83 c0 04             	add    $0x4,%eax
4223df:	8b e5                	mov    %ebp,%esp
4223e1:	5d                   	pop    %ebp
4223e2:	c3                   	ret
4223e3:	cc                   	int3
4223e4:	cc                   	int3
4223e5:	cc                   	int3
4223e6:	cc                   	int3
4223e7:	cc                   	int3
4223e8:	cc                   	int3
4223e9:	cc                   	int3
4223ea:	cc                   	int3
4223eb:	cc                   	int3
4223ec:	cc                   	int3
4223ed:	cc                   	int3
4223ee:	cc                   	int3
4223ef:	cc                   	int3
4223f0:	8b ff                	mov    %edi,%edi
4223f2:	55                   	push   %ebp
4223f3:	8b ec                	mov    %esp,%ebp
4223f5:	83 ec 08             	sub    $0x8,%esp
4223f8:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4223fb:	8b 45 f8             	mov    -0x8(%ebp),%eax
4223fe:	8b 08                	mov    (%eax),%ecx
422400:	8a 11                	mov    (%ecx),%dl
422402:	88 55 ff             	mov    %dl,-0x1(%ebp)
422405:	8b 45 f8             	mov    -0x8(%ebp),%eax
422408:	8b 08                	mov    (%eax),%ecx
42240a:	83 c1 01             	add    $0x1,%ecx
42240d:	8b 55 f8             	mov    -0x8(%ebp),%edx
422410:	89 0a                	mov    %ecx,(%edx)
422412:	8a 45 ff             	mov    -0x1(%ebp),%al
422415:	8b e5                	mov    %ebp,%esp
422417:	5d                   	pop    %ebp
422418:	c3                   	ret
422419:	cc                   	int3
42241a:	cc                   	int3
42241b:	cc                   	int3
42241c:	cc                   	int3
42241d:	cc                   	int3
42241e:	cc                   	int3
42241f:	cc                   	int3
422420:	cc                   	int3
422421:	cc                   	int3
422422:	cc                   	int3
422423:	cc                   	int3
422424:	cc                   	int3
422425:	cc                   	int3
422426:	cc                   	int3
422427:	cc                   	int3
422428:	cc                   	int3
422429:	cc                   	int3
42242a:	cc                   	int3
42242b:	cc                   	int3
42242c:	cc                   	int3
42242d:	cc                   	int3
42242e:	cc                   	int3
42242f:	cc                   	int3
422430:	8b ff                	mov    %edi,%edi
422432:	55                   	push   %ebp
422433:	8b ec                	mov    %esp,%ebp
422435:	83 ec 08             	sub    $0x8,%esp
422438:	89 4d f8             	mov    %ecx,-0x8(%ebp)
42243b:	8b 45 f8             	mov    -0x8(%ebp),%eax
42243e:	8b 08                	mov    (%eax),%ecx
422440:	66 8b 11             	mov    (%ecx),%dx
422443:	66 89 55 fe          	mov    %dx,-0x2(%ebp)
422447:	8b 45 f8             	mov    -0x8(%ebp),%eax
42244a:	8b 08                	mov    (%eax),%ecx
42244c:	83 c1 02             	add    $0x2,%ecx
42244f:	8b 55 f8             	mov    -0x8(%ebp),%edx
422452:	89 0a                	mov    %ecx,(%edx)
422454:	66 8b 45 fe          	mov    -0x2(%ebp),%ax
422458:	8b e5                	mov    %ebp,%esp
42245a:	5d                   	pop    %ebp
42245b:	c3                   	ret
42245c:	cc                   	int3
42245d:	cc                   	int3
42245e:	cc                   	int3
42245f:	cc                   	int3
422460:	cc                   	int3
422461:	cc                   	int3
422462:	cc                   	int3
422463:	cc                   	int3
422464:	cc                   	int3
422465:	cc                   	int3
422466:	cc                   	int3
422467:	cc                   	int3
422468:	cc                   	int3
422469:	cc                   	int3
42246a:	cc                   	int3
42246b:	cc                   	int3
42246c:	cc                   	int3
42246d:	cc                   	int3
42246e:	cc                   	int3
42246f:	cc                   	int3
422470:	8b ff                	mov    %edi,%edi
422472:	55                   	push   %ebp
422473:	8b ec                	mov    %esp,%ebp
422475:	51                   	push   %ecx
422476:	8b 45 0c             	mov    0xc(%ebp),%eax
422479:	50                   	push   %eax
42247a:	6a 08                	push   $0x8
42247c:	0f b6 4d 08          	movzbl 0x8(%ebp),%ecx
422480:	51                   	push   %ecx
422481:	e8 08 f9 fd ff       	call   0x401d8e
422486:	83 c4 0c             	add    $0xc,%esp
422489:	85 c0                	test   %eax,%eax
42248b:	74 09                	je     0x422496
42248d:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
422494:	eb 07                	jmp    0x42249d
422496:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
42249d:	8a 45 fc             	mov    -0x4(%ebp),%al
4224a0:	8b e5                	mov    %ebp,%esp
4224a2:	5d                   	pop    %ebp
4224a3:	c3                   	ret
4224a4:	cc                   	int3
4224a5:	cc                   	int3
4224a6:	cc                   	int3
4224a7:	cc                   	int3
4224a8:	cc                   	int3
4224a9:	cc                   	int3
4224aa:	cc                   	int3
4224ab:	cc                   	int3
4224ac:	cc                   	int3
4224ad:	cc                   	int3
4224ae:	cc                   	int3
4224af:	cc                   	int3
4224b0:	cc                   	int3
4224b1:	cc                   	int3
4224b2:	cc                   	int3
4224b3:	cc                   	int3
4224b4:	cc                   	int3
4224b5:	cc                   	int3
4224b6:	cc                   	int3
4224b7:	cc                   	int3
4224b8:	cc                   	int3
4224b9:	cc                   	int3
4224ba:	cc                   	int3
4224bb:	cc                   	int3
4224bc:	cc                   	int3
4224bd:	cc                   	int3
4224be:	cc                   	int3
4224bf:	cc                   	int3
4224c0:	8b ff                	mov    %edi,%edi
4224c2:	55                   	push   %ebp
4224c3:	8b ec                	mov    %esp,%ebp
4224c5:	51                   	push   %ecx
4224c6:	6a 08                	push   $0x8
4224c8:	0f b7 45 08          	movzwl 0x8(%ebp),%eax
4224cc:	50                   	push   %eax
4224cd:	e8 b4 19 fe ff       	call   0x403e86
4224d2:	83 c4 08             	add    $0x8,%esp
4224d5:	85 c0                	test   %eax,%eax
4224d7:	74 09                	je     0x4224e2
4224d9:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4224e0:	eb 07                	jmp    0x4224e9
4224e2:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4224e9:	8a 45 fc             	mov    -0x4(%ebp),%al
4224ec:	8b e5                	mov    %ebp,%esp
4224ee:	5d                   	pop    %ebp
4224ef:	c3                   	ret
4224f0:	cc                   	int3
4224f1:	cc                   	int3
4224f2:	cc                   	int3
4224f3:	cc                   	int3
4224f4:	cc                   	int3
4224f5:	cc                   	int3
4224f6:	cc                   	int3
4224f7:	cc                   	int3
4224f8:	cc                   	int3
4224f9:	cc                   	int3
4224fa:	cc                   	int3
4224fb:	cc                   	int3
4224fc:	cc                   	int3
4224fd:	cc                   	int3
4224fe:	cc                   	int3
4224ff:	cc                   	int3
422500:	8b ff                	mov    %edi,%edi
422502:	55                   	push   %ebp
422503:	8b ec                	mov    %esp,%ebp
422505:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
42250a:	5d                   	pop    %ebp
42250b:	c3                   	ret
42250c:	cc                   	int3
42250d:	cc                   	int3
42250e:	cc                   	int3
42250f:	cc                   	int3
422510:	8b ff                	mov    %edi,%edi
422512:	55                   	push   %ebp
422513:	8b ec                	mov    %esp,%ebp
422515:	83 c8 ff             	or     $0xffffffff,%eax
422518:	ba ff ff ff 7f       	mov    $0x7fffffff,%edx
42251d:	5d                   	pop    %ebp
42251e:	c3                   	ret
42251f:	cc                   	int3
422520:	cc                   	int3
422521:	cc                   	int3
422522:	cc                   	int3
422523:	cc                   	int3
422524:	cc                   	int3
422525:	cc                   	int3
422526:	cc                   	int3
422527:	cc                   	int3
422528:	cc                   	int3
422529:	cc                   	int3
42252a:	cc                   	int3
42252b:	cc                   	int3
42252c:	cc                   	int3
42252d:	cc                   	int3
42252e:	cc                   	int3
42252f:	cc                   	int3
422530:	8b ff                	mov    %edi,%edi
422532:	55                   	push   %ebp
422533:	8b ec                	mov    %esp,%ebp
422535:	b8 00 00 00 80       	mov    $0x80000000,%eax
42253a:	5d                   	pop    %ebp
42253b:	c3                   	ret
42253c:	cc                   	int3
42253d:	cc                   	int3
42253e:	cc                   	int3
42253f:	cc                   	int3
422540:	8b ff                	mov    %edi,%edi
422542:	55                   	push   %ebp
422543:	8b ec                	mov    %esp,%ebp
422545:	33 c0                	xor    %eax,%eax
422547:	ba 00 00 00 80       	mov    $0x80000000,%edx
42254c:	5d                   	pop    %ebp
42254d:	c3                   	ret
42254e:	cc                   	int3
42254f:	cc                   	int3
422550:	cc                   	int3
422551:	cc                   	int3
422552:	cc                   	int3
422553:	cc                   	int3
422554:	cc                   	int3
422555:	cc                   	int3
422556:	cc                   	int3
422557:	cc                   	int3
422558:	cc                   	int3
422559:	cc                   	int3
42255a:	cc                   	int3
42255b:	cc                   	int3
42255c:	cc                   	int3
42255d:	cc                   	int3
42255e:	cc                   	int3
42255f:	cc                   	int3
422560:	8b ff                	mov    %edi,%edi
422562:	55                   	push   %ebp
422563:	8b ec                	mov    %esp,%ebp
422565:	0f be 45 08          	movsbl 0x8(%ebp),%eax
422569:	83 f8 30             	cmp    $0x30,%eax
42256c:	7c 12                	jl     0x422580
42256e:	0f be 4d 08          	movsbl 0x8(%ebp),%ecx
422572:	83 f9 39             	cmp    $0x39,%ecx
422575:	7f 09                	jg     0x422580
422577:	0f be 45 08          	movsbl 0x8(%ebp),%eax
42257b:	83 e8 30             	sub    $0x30,%eax
42257e:	eb 39                	jmp    0x4225b9
422580:	0f be 55 08          	movsbl 0x8(%ebp),%edx
422584:	83 fa 61             	cmp    $0x61,%edx
422587:	7c 12                	jl     0x42259b
422589:	0f be 45 08          	movsbl 0x8(%ebp),%eax
42258d:	83 f8 7a             	cmp    $0x7a,%eax
422590:	7f 09                	jg     0x42259b