4222a9:	8d 45 f0             	lea    -0x10(%ebp),%eax
4222ac:	50                   	push   %eax
4222ad:	8b 45 fc             	mov    -0x4(%ebp),%eax
4222b0:	83 c0 28             	add    $0x28,%eax
4222b3:	50                   	push   %eax
4222b4:	8b 75 fc             	mov    -0x4(%ebp),%esi
4222b7:	8b cb                	mov    %ebx,%ecx
4222b9:	8b 55 fc             	mov    -0x4(%ebp),%edx
4222bc:	8b 46 44             	mov    0x44(%esi),%eax
4222bf:	ff 56 40             	call   *0x40(%esi)
4222c2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4222c5:	8b 55 f0             	mov    -0x10(%ebp),%edx
4222c8:	89 50 20             	mov    %edx,0x20(%eax)
4222cb:	8b 55 fc             	mov    -0x4(%ebp),%edx
4222ce:	8b c3                	mov    %ebx,%eax
4222d0:	8b 08                	mov    (%eax),%ecx
4222d2:	ff 51 24             	call   *0x24(%ecx)
4222d5:	66 83 63 1c fb       	andw   $0xfffb,0x1c(%ebx)
4222da:	33 c0                	xor    %eax,%eax
4222dc:	5a                   	pop    %edx
4222dd:	59                   	pop    %ecx
4222de:	59                   	pop    %ecx
4222df:	64 89 10             	mov    %edx,%fs:(%eax)
4222e2:	68 01 23 42 00       	push   $0x422301
4222e7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4222ea:	8b 55 f8             	mov    -0x8(%ebp),%edx
4222ed:	89 50 20             	mov    %edx,0x20(%eax)
4222f0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4222f3:	8b 55 f4             	mov    -0xc(%ebp),%edx
4222f6:	89 50 28             	mov    %edx,0x28(%eax)
4222f9:	c3                   	ret
4222fa:	e9 0d 1f fe ff       	jmp    0x40420c
4222ff:	eb e6                	jmp    0x4222e7
422301:	5e                   	pop    %esi
422302:	5b                   	pop    %ebx
422303:	8b e5                	mov    %ebp,%esp
422305:	5d                   	pop    %ebp
422306:	c3                   	ret
422307:	90                   	nop
422308:	55                   	push   %ebp
422309:	8b ec                	mov    %esp,%ebp
42230b:	81 c4 c8 fe ff ff    	add    $0xfffffec8,%esp
422311:	53                   	push   %ebx
422312:	56                   	push   %esi
422313:	33 c9                	xor    %ecx,%ecx
422315:	89 8d c8 fe ff ff    	mov    %ecx,-0x138(%ebp)
42231b:	89 8d d4 fe ff ff    	mov    %ecx,-0x12c(%ebp)
422321:	89 8d d0 fe ff ff    	mov    %ecx,-0x130(%ebp)
422327:	89 8d cc fe ff ff    	mov    %ecx,-0x134(%ebp)
42232d:	89 55 f8             	mov    %edx,-0x8(%ebp)
422330:	89 45 fc             	mov    %eax,-0x4(%ebp)
422333:	33 c0                	xor    %eax,%eax
422335:	55                   	push   %ebp
422336:	68 e4 26 42 00       	push   $0x4226e4
42233b:	64 ff 30             	push   %fs:(%eax)
42233e:	64 89 20             	mov    %esp,%fs:(%eax)
422341:	8d 95 d8 fe ff ff    	lea    -0x128(%ebp),%edx
422347:	8b 45 f8             	mov    -0x8(%ebp),%eax
42234a:	8b 00                	mov    (%eax),%eax
42234c:	e8 77 16 fe ff       	call   0x4039c8
422351:	33 db                	xor    %ebx,%ebx
422353:	8a 9d d8 fe ff ff    	mov    -0x128(%ebp),%bl
422359:	8b 45 f8             	mov    -0x8(%ebp),%eax
42235c:	8b 40 08             	mov    0x8(%eax),%eax
42235f:	e8 bc 27 fe ff       	call   0x404b20
422364:	03 d8                	add    %eax,%ebx
422366:	43                   	inc    %ebx
422367:	83 c3 05             	add    $0x5,%ebx
42236a:	83 c3 03             	add    $0x3,%ebx
42236d:	8b 45 fc             	mov    -0x4(%ebp),%eax
422370:	8b 40 0c             	mov    0xc(%eax),%eax
422373:	8b 55 fc             	mov    -0x4(%ebp),%edx
422376:	2b 42 10             	sub    0x10(%edx),%eax
422379:	3b d8                	cmp    %eax,%ebx
42237b:	7e 08                	jle    0x422385
42237d:	8b 45 fc             	mov    -0x4(%ebp),%eax
422380:	e8 3b fd ff ff       	call   0x4220c0
422385:	8b 45 fc             	mov    -0x4(%ebp),%eax
422388:	e8 f3 fb ff ff       	call   0x421f80
42238d:	89 45 f4             	mov    %eax,-0xc(%ebp)
422390:	a0 f4 26 42 00       	mov    0x4226f4,%al
422395:	88 45 db             	mov    %al,-0x25(%ebp)
422398:	8b 45 f8             	mov    -0x8(%ebp),%eax
42239b:	f6 40 1d 02          	testb  $0x2,0x1d(%eax)
42239f:	74 27                	je     0x4223c8
4223a1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4223a4:	83 78 20 00          	cmpl   $0x0,0x20(%eax)
4223a8:	74 18                	je     0x4223c2
4223aa:	8b 45 f8             	mov    -0x8(%ebp),%eax
4223ad:	f6 40 1c 20          	testb  $0x20,0x1c(%eax)
4223b1:	74 0f                	je     0x4223c2
4223b3:	8b 45 fc             	mov    -0x4(%ebp),%eax
4223b6:	83 78 30 00          	cmpl   $0x0,0x30(%eax)
4223ba:	74 06                	je     0x4223c2
4223bc:	80 4d db 01          	orb    $0x1,-0x25(%ebp)
4223c0:	eb 13                	jmp    0x4223d5
4223c2:	80 4d db 04          	orb    $0x4,-0x25(%ebp)
4223c6:	eb 0d                	jmp    0x4223d5
4223c8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4223cb:	83 78 20 00          	cmpl   $0x0,0x20(%eax)
4223cf:	74 04                	je     0x4223d5
4223d1:	80 4d db 01          	orb    $0x1,-0x25(%ebp)
4223d5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4223d8:	8b 58 30             	mov    0x30(%eax),%ebx
4223db:	85 db                	test   %ebx,%ebx
4223dd:	74 31                	je     0x422410
4223df:	8b 45 fc             	mov    -0x4(%ebp),%eax
4223e2:	8b 40 34             	mov    0x34(%eax),%eax
4223e5:	3b 43 08             	cmp    0x8(%ebx),%eax
4223e8:	7d 26                	jge    0x422410
4223ea:	8b 45 fc             	mov    -0x4(%ebp),%eax
4223ed:	83 78 20 00          	cmpl   $0x0,0x20(%eax)
4223f1:	74 19                	je     0x42240c
4223f3:	8b 45 fc             	mov    -0x4(%ebp),%eax
4223f6:	8b 50 34             	mov    0x34(%eax),%edx
4223f9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4223fc:	8b 40 30             	mov    0x30(%eax),%eax
4223ff:	e8 bc 99 ff ff       	call   0x41bdc0
422404:	8b 55 fc             	mov    -0x4(%ebp),%edx
422407:	3b 42 20             	cmp    0x20(%edx),%eax
42240a:	74 04                	je     0x422410
42240c:	80 4d db 02          	orb    $0x2,-0x25(%ebp)
422410:	8b 45 fc             	mov    -0x4(%ebp),%eax
422413:	8b 48 38             	mov    0x38(%eax),%ecx
422416:	8a 55 db             	mov    -0x25(%ebp),%dl
422419:	8b 45 fc             	mov    -0x4(%ebp),%eax
42241c:	e8 3f 05 00 00       	call   0x422960
422421:	8b 45 fc             	mov    -0x4(%ebp),%eax
422424:	80 78 48 00          	cmpb   $0x0,0x48(%eax)
422428:	74 72                	je     0x42249c
42242a:	8b 45 f8             	mov    -0x8(%ebp),%eax
42242d:	e8 8e 15 fe ff       	call   0x4039c0
422432:	e8 81 18 fe ff       	call   0x403cb8
422437:	e8 2c 58 ff ff       	call   0x417c68
42243c:	8d 50 0a             	lea    0xa(%eax),%edx
42243f:	8d 85 d0 fe ff ff    	lea    -0x130(%ebp),%eax
422445:	e8 7a 26 fe ff       	call   0x404ac4
42244a:	ff b5 d0 fe ff ff    	push   -0x130(%ebp)
422450:	68 00 27 42 00       	push   $0x422700
422455:	8d 95 d8 fe ff ff    	lea    -0x128(%ebp),%edx
42245b:	8b 45 f8             	mov    -0x8(%ebp),%eax
42245e:	8b 00                	mov    (%eax),%eax
422460:	e8 63 15 fe ff       	call   0x4039c8
422465:	8d 95 d8 fe ff ff    	lea    -0x128(%ebp),%edx
42246b:	8d 85 cc fe ff ff    	lea    -0x134(%ebp),%eax
422471:	e8 4e 26 fe ff       	call   0x404ac4
422476:	ff b5 cc fe ff ff    	push   -0x134(%ebp)
42247c:	8d 85 d4 fe ff ff    	lea    -0x12c(%ebp),%eax
422482:	ba 03 00 00 00       	mov    $0x3,%edx
422487:	e8 54 27 fe ff       	call   0x404be0
42248c:	8b 95 d4 fe ff ff    	mov    -0x12c(%ebp),%edx
422492:	8b 45 fc             	mov    -0x4(%ebp),%eax
422495:	e8 26 19 00 00       	call   0x423dc0
42249a:	eb 2f                	jmp    0x4224cb
42249c:	8d 95 d8 fe ff ff    	lea    -0x128(%ebp),%edx
4224a2:	8b 45 f8             	mov    -0x8(%ebp),%eax
4224a5:	8b 00                	mov    (%eax),%eax
4224a7:	e8 1c 15 fe ff       	call   0x4039c8
4224ac:	8d 95 d8 fe ff ff    	lea    -0x128(%ebp),%edx
4224b2:	8d 85 c8 fe ff ff    	lea    -0x138(%ebp),%eax
4224b8:	e8 07 26 fe ff       	call   0x404ac4
4224bd:	8b 95 c8 fe ff ff    	mov    -0x138(%ebp),%edx
4224c3:	8b 45 fc             	mov    -0x4(%ebp),%eax
4224c6:	e8 f5 18 00 00       	call   0x423dc0
4224cb:	8b 45 f8             	mov    -0x8(%ebp),%eax
4224ce:	8b 50 08             	mov    0x8(%eax),%edx
4224d1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4224d4:	e8 e7 18 00 00       	call   0x423dc0
4224d9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4224dc:	e8 9f fa ff ff       	call   0x421f80
4224e1:	89 45 f0             	mov    %eax,-0x10(%ebp)
4224e4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4224e7:	8b 40 30             	mov    0x30(%eax),%eax
4224ea:	85 c0                	test   %eax,%eax
4224ec:	74 20                	je     0x42250e
4224ee:	8b 55 fc             	mov    -0x4(%ebp),%edx
4224f1:	8b 52 34             	mov    0x34(%edx),%edx
4224f4:	3b 50 08             	cmp    0x8(%eax),%edx
4224f7:	7d 15                	jge    0x42250e
4224f9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4224fc:	83 78 20 00          	cmpl   $0x0,0x20(%eax)
422500:	74 06                	je     0x422508
422502:	8b 45 fc             	mov    -0x4(%ebp),%eax
422505:	ff 40 34             	incl   0x34(%eax)
422508:	8b 45 fc             	mov    -0x4(%ebp),%eax
42250b:	ff 40 38             	incl   0x38(%eax)
42250e:	8b 55 f8             	mov    -0x8(%ebp),%edx
422511:	8b 45 fc             	mov    -0x4(%ebp),%eax
422514:	e8 8b 04 00 00       	call   0x4229a4
422519:	8b 45 fc             	mov    -0x4(%ebp),%eax
42251c:	e8 37 04 00 00       	call   0x422958
422521:	8b 45 fc             	mov    -0x4(%ebp),%eax
422524:	8b 40 30             	mov    0x30(%eax),%eax
422527:	89 45 ec             	mov    %eax,-0x14(%ebp)
42252a:	8b 45 fc             	mov    -0x4(%ebp),%eax
42252d:	8b 40 34             	mov    0x34(%eax),%eax
422530:	89 45 e8             	mov    %eax,-0x18(%ebp)
422533:	8b 45 fc             	mov    -0x4(%ebp),%eax
422536:	8b 40 38             	mov    0x38(%eax),%eax
422539:	89 45 e4             	mov    %eax,-0x1c(%ebp)
42253c:	8b 45 fc             	mov    -0x4(%ebp),%eax
42253f:	8b 40 18             	mov    0x18(%eax),%eax
422542:	89 45 e0             	mov    %eax,-0x20(%ebp)
422545:	8b 45 fc             	mov    -0x4(%ebp),%eax
422548:	8b 40 28             	mov    0x28(%eax),%eax
42254b:	89 45 dc             	mov    %eax,-0x24(%ebp)
42254e:	33 c0                	xor    %eax,%eax
422550:	55                   	push   %ebp
422551:	68 85 26 42 00       	push   $0x422685
422556:	64 ff 30             	push   %fs:(%eax)
422559:	64 89 20             	mov    %esp,%fs:(%eax)
42255c:	8b 45 fc             	mov    -0x4(%ebp),%eax
42255f:	33 d2                	xor    %edx,%edx
422561:	89 50 30             	mov    %edx,0x30(%eax)
422564:	8b 45 fc             	mov    -0x4(%ebp),%eax
422567:	33 d2                	xor    %edx,%edx
422569:	89 50 34             	mov    %edx,0x34(%eax)
42256c:	8b 45 fc             	mov    -0x4(%ebp),%eax
42256f:	33 d2                	xor    %edx,%edx
422571:	89 50 38             	mov    %edx,0x38(%eax)
422574:	8b 45 fc             	mov    -0x4(%ebp),%eax
422577:	80 78 24 00          	cmpb   $0x0,0x24(%eax)
42257b:	0f 85 c9 00 00 00    	jne    0x42264a
422581:	33 c0                	xor    %eax,%eax
422583:	55                   	push   %ebp
422584:	68 43 26 42 00       	push   $0x422643
422589:	64 ff 30             	push   %fs:(%eax)
42258c:	64 89 20             	mov    %esp,%fs:(%eax)
42258f:	8b 45 fc             	mov    -0x4(%ebp),%eax
422592:	8b 58 20             	mov    0x20(%eax),%ebx
422595:	85 db                	test   %ebx,%ebx
422597:	74 64                	je     0x4225fd
422599:	8b c3                	mov    %ebx,%eax
42259b:	8b 15 74 a3 41 00    	mov    0x41a374,%edx
4225a1:	e8 5e 16 fe ff       	call   0x403c04
4225a6:	84 c0                	test   %al,%al
4225a8:	74 53                	je     0x4225fd
4225aa:	8b 45 fc             	mov    -0x4(%ebp),%eax
4225ad:	8b 58 20             	mov    0x20(%eax),%ebx
4225b0:	8b c3                	mov    %ebx,%eax
4225b2:	8b 15 74 a3 41 00    	mov    0x41a374,%edx
4225b8:	e8 47 16 fe ff       	call   0x403c04
4225bd:	84 c0                	test   %al,%al
4225bf:	74 0c                	je     0x4225cd
4225c1:	f6 43 1d 02          	testb  $0x2,0x1d(%ebx)
4225c5:	74 06                	je     0x4225cd
4225c7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4225ca:	89 58 28             	mov    %ebx,0x28(%eax)
4225cd:	b2 01                	mov    $0x1,%dl
4225cf:	a1 24 94 41 00       	mov    0x419424,%eax
4225d4:	e8 6f 14 fe ff       	call   0x403a48
4225d9:	8b 55 fc             	mov    -0x4(%ebp),%edx
4225dc:	89 42 30             	mov    %eax,0x30(%edx)
4225df:	8b 45 fc             	mov    -0x4(%ebp),%eax
4225e2:	50                   	push   %eax
4225e3:	68 20 1f 42 00       	push   $0x421f20
4225e8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4225eb:	8b 50 28             	mov    0x28(%eax),%edx
4225ee:	8b 45 fc             	mov    -0x4(%ebp),%eax
4225f1:	8b 40 20             	mov    0x20(%eax),%eax
4225f4:	66 be fd ff          	mov    $0xfffd,%si
4225f8:	e8 77 16 fe ff       	call   0x403c74
4225fd:	8b 45 f8             	mov    -0x8(%ebp),%eax
422600:	f6 40 1d 02          	testb  $0x2,0x1d(%eax)
422604:	74 09                	je     0x42260f
422606:	8b 45 fc             	mov    -0x4(%ebp),%eax
422609:	8b 55 f8             	mov    -0x8(%ebp),%edx
42260c:	89 50 18             	mov    %edx,0x18(%eax)
42260f:	8b 45 fc             	mov    -0x4(%ebp),%eax
422612:	50                   	push   %eax
422613:	68 2c 22 42 00       	push   $0x42222c
422618:	8b 45 fc             	mov    -0x4(%ebp),%eax
42261b:	8b 50 18             	mov    0x18(%eax),%edx
42261e:	8b 45 f8             	mov    -0x8(%ebp),%eax
422621:	66 be fd ff          	mov    $0xfffd,%si
422625:	e8 4a 16 fe ff       	call   0x403c74
42262a:	33 c0                	xor    %eax,%eax
42262c:	5a                   	pop    %edx
42262d:	59                   	pop    %ecx
42262e:	59                   	pop    %ecx
42262f:	64 89 10             	mov    %edx,%fs:(%eax)
422632:	68 4a 26 42 00       	push   $0x42264a
422637:	8b 45 fc             	mov    -0x4(%ebp),%eax
42263a:	8b 40 30             	mov    0x30(%eax),%eax
42263d:	e8 36 14 fe ff       	call   0x403a78
422642:	c3                   	ret
422643:	e9 c4 1b fe ff       	jmp    0x40420c
422648:	eb ed                	jmp    0x422637
42264a:	33 c0                	xor    %eax,%eax
42264c:	5a                   	pop    %edx
42264d:	59                   	pop    %ecx
42264e:	59                   	pop    %ecx
42264f:	64 89 10             	mov    %edx,%fs:(%eax)
422652:	68 8c 26 42 00       	push   $0x42268c
422657:	8b 45 fc             	mov    -0x4(%ebp),%eax
42265a:	8b 55 ec             	mov    -0x14(%ebp),%edx
42265d:	89 50 30             	mov    %edx,0x30(%eax)
422660:	8b 45 fc             	mov    -0x4(%ebp),%eax
422663:	8b 55 e8             	mov    -0x18(%ebp),%edx
422666:	89 50 34             	mov    %edx,0x34(%eax)
422669:	8b 45 fc             	mov    -0x4(%ebp),%eax
42266c:	8b 55 e4             	mov    -0x1c(%ebp),%edx
42266f:	89 50 38             	mov    %edx,0x38(%eax)
422672:	8b 45 fc             	mov    -0x4(%ebp),%eax
422675:	8b 55 e0             	mov    -0x20(%ebp),%edx
422678:	89 50 18             	mov    %edx,0x18(%eax)
42267b:	8b 45 fc             	mov    -0x4(%ebp),%eax
42267e:	8b 55 dc             	mov    -0x24(%ebp),%edx
422681:	89 50 28             	mov    %edx,0x28(%eax)
422684:	c3                   	ret
422685:	e9 82 1b fe ff       	jmp    0x40420c
42268a:	eb cb                	jmp    0x422657
42268c:	8b 45 fc             	mov    -0x4(%ebp),%eax
42268f:	e8 c4 02 00 00       	call   0x422958
422694:	8b 45 fc             	mov    -0x4(%ebp),%eax
422697:	8b 40 18             	mov    0x18(%eax),%eax
42269a:	3b 45 f8             	cmp    -0x8(%ebp),%eax
42269d:	74 27                	je     0x4226c6
42269f:	a0 04 27 42 00       	mov    0x422704,%al
4226a4:	3a 45 db             	cmp    -0x25(%ebp),%al
4226a7:	75 1d                	jne    0x4226c6
4226a9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4226ac:	e8 cf f8 ff ff       	call   0x421f80
4226b1:	8b 55 f0             	mov    -0x10(%ebp),%edx
4226b4:	83 c2 02             	add    $0x2,%edx
4226b7:	3b c2                	cmp    %edx,%eax
4226b9:	75 0b                	jne    0x4226c6
4226bb:	8b 55 f4             	mov    -0xc(%ebp),%edx
4226be:	8b 45 fc             	mov    -0x4(%ebp),%eax
4226c1:	e8 d2 f8 ff ff       	call   0x421f98
4226c6:	33 c0                	xor    %eax,%eax
4226c8:	5a                   	pop    %edx
4226c9:	59                   	pop    %ecx
4226ca:	59                   	pop    %ecx
4226cb:	64 89 10             	mov    %edx,%fs:(%eax)
4226ce:	68 eb 26 42 00       	push   $0x4226eb
4226d3:	8d 85 c8 fe ff ff    	lea    -0x138(%ebp),%eax
4226d9:	ba 04 00 00 00       	mov    $0x4,%edx
4226de:	e8 a9 21 fe ff       	call   0x40488c
4226e3:	c3                   	ret
4226e4:	e9 23 1b fe ff       	jmp    0x40420c
4226e9:	eb e8                	jmp    0x4226d3
4226eb:	5e                   	pop    %esi
4226ec:	5b                   	pop    %ebx
4226ed:	8b e5                	mov    %ebp,%esp
4226ef:	5d                   	pop    %ebp
4226f0:	c3                   	ret
4226f1:	00 00                	add    %al,(%eax)
4226f3:	00 00                	add    %al,(%eax)
4226f5:	00 00                	add    %al,(%eax)