423305:	8b ce                	mov    %esi,%ecx
423307:	ff 90 d0 00 00 00    	call   *0xd0(%eax)
42330d:	5f                   	pop    %edi
42330e:	5e                   	pop    %esi
42330f:	5b                   	pop    %ebx
423310:	5d                   	pop    %ebp
423311:	c2 0c 00             	ret    $0xc
423314:	55                   	push   %ebp
423315:	8b ec                	mov    %esp,%ebp
423317:	83 ec 2c             	sub    $0x2c,%esp
42331a:	53                   	push   %ebx
42331b:	56                   	push   %esi
42331c:	8b d9                	mov    %ecx,%ebx
42331e:	57                   	push   %edi
42331f:	89 5d fc             	mov    %ebx,-0x4(%ebp)
423322:	ff 73 1c             	push   0x1c(%ebx)
423325:	e8 bb cd ff ff       	call   0x4200e5
42332a:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
42332e:	0f 85 3e 01 00 00    	jne    0x423472
423334:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
423337:	e8 24 a9 ff ff       	call   0x41dc60
42333c:	8b 75 08             	mov    0x8(%ebp),%esi
42333f:	89 75 e0             	mov    %esi,-0x20(%ebp)
423342:	e8 ad 10 00 00       	call   0x4243f4
423347:	8b 40 54             	mov    0x54(%eax),%eax
42334a:	3b 46 04             	cmp    0x4(%esi),%eax
42334d:	75 05                	jne    0x423354
42334f:	89 75 f8             	mov    %esi,-0x8(%ebp)
423352:	eb 53                	jmp    0x4233a7
423354:	ff 73 1c             	push   0x1c(%ebx)
423357:	8b 3d cc 98 43 00    	mov    0x4398cc,%edi
42335d:	ff d7                	call   *%edi
42335f:	85 c0                	test   %eax,%eax
423361:	74 44                	je     0x4233a7
423363:	8b cb                	mov    %ebx,%ecx
423365:	e8 6d 85 ff ff       	call   0x41b8d7
42336a:	85 c0                	test   %eax,%eax
42336c:	74 39                	je     0x4233a7
42336e:	ff 70 1c             	push   0x1c(%eax)
423371:	ff d7                	call   *%edi
423373:	8b f8                	mov    %eax,%edi
423375:	85 ff                	test   %edi,%edi
423377:	74 2e                	je     0x4233a7
423379:	57                   	push   %edi
42337a:	ff 15 c0 98 43 00    	call   *0x4398c0
423380:	33 db                	xor    %ebx,%ebx
423382:	89 45 10             	mov    %eax,0x10(%ebp)
423385:	85 c0                	test   %eax,%eax
423387:	7e 1e                	jle    0x4233a7
423389:	53                   	push   %ebx
42338a:	57                   	push   %edi
42338b:	ff 15 c4 98 43 00    	call   *0x4398c4
423391:	3b 46 04             	cmp    0x4(%esi),%eax
423394:	74 08                	je     0x42339e
423396:	43                   	inc    %ebx
423397:	3b 5d 10             	cmp    0x10(%ebp),%ebx
42339a:	7c ed                	jl     0x423389
42339c:	eb 09                	jmp    0x4233a7
42339e:	57                   	push   %edi
42339f:	e8 9c 98 ff ff       	call   0x41cc40
4233a4:	89 45 f8             	mov    %eax,-0x8(%ebp)
4233a7:	ff 76 04             	push   0x4(%esi)
4233aa:	ff 15 c0 98 43 00    	call   *0x4398c0
4233b0:	83 65 dc 00          	andl   $0x0,-0x24(%ebp)
4233b4:	89 45 f4             	mov    %eax,-0xc(%ebp)
4233b7:	85 c0                	test   %eax,%eax
4233b9:	0f 86 b3 00 00 00    	jbe    0x423472
4233bf:	8b 3d c8 98 43 00    	mov    0x4398c8,%edi
4233c5:	ff 75 dc             	push   -0x24(%ebp)
4233c8:	ff 76 04             	push   0x4(%esi)
4233cb:	ff d7                	call   *%edi
4233cd:	33 db                	xor    %ebx,%ebx
4233cf:	89 45 d8             	mov    %eax,-0x28(%ebp)
4233d2:	3b c3                	cmp    %ebx,%eax
4233d4:	0f 84 89 00 00 00    	je     0x423463
4233da:	83 f8 ff             	cmp    $0xffffffff,%eax
4233dd:	75 31                	jne    0x423410
4233df:	ff 75 dc             	push   -0x24(%ebp)
4233e2:	ff 76 04             	push   0x4(%esi)
4233e5:	ff 15 c4 98 43 00    	call   *0x4398c4
4233eb:	50                   	push   %eax
4233ec:	e8 4f 98 ff ff       	call   0x41cc40
4233f1:	3b c3                	cmp    %ebx,%eax
4233f3:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4233f6:	74 6b                	je     0x423463
4233f8:	53                   	push   %ebx
4233f9:	ff 70 04             	push   0x4(%eax)
4233fc:	ff d7                	call   *%edi
4233fe:	3b c3                	cmp    %ebx,%eax
423400:	89 45 d8             	mov    %eax,-0x28(%ebp)
423403:	74 5e                	je     0x423463
423405:	83 f8 ff             	cmp    $0xffffffff,%eax
423408:	74 59                	je     0x423463
42340a:	53                   	push   %ebx
42340b:	ff 75 fc             	push   -0x4(%ebp)
42340e:	eb 1b                	jmp    0x42342b
423410:	8b 4d fc             	mov    -0x4(%ebp),%ecx
423413:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
423416:	39 59 3c             	cmp    %ebx,0x3c(%ecx)
423419:	74 0c                	je     0x423427
42341b:	3d 00 f0 00 00       	cmp    $0xf000,%eax
423420:	73 05                	jae    0x423427
423422:	6a 01                	push   $0x1
423424:	58                   	pop    %eax
423425:	eb 02                	jmp    0x423429
423427:	33 c0                	xor    %eax,%eax
423429:	50                   	push   %eax
42342a:	51                   	push   %ecx
42342b:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
42342e:	e8 ed a9 ff ff       	call   0x41de20
423433:	ff 76 04             	push   0x4(%esi)
423436:	ff 15 c0 98 43 00    	call   *0x4398c0
42343c:	8b d8                	mov    %eax,%ebx
42343e:	3b 5d f4             	cmp    -0xc(%ebp),%ebx
423441:	73 1d                	jae    0x423460
423443:	2b 45 f4             	sub    -0xc(%ebp),%eax
423446:	01 45 dc             	add    %eax,-0x24(%ebp)
423449:	39 5d dc             	cmp    %ebx,-0x24(%ebp)
42344c:	73 12                	jae    0x423460
42344e:	ff 75 dc             	push   -0x24(%ebp)
423451:	ff 76 04             	push   0x4(%esi)
423454:	ff d7                	call   *%edi
423456:	3b 45 d8             	cmp    -0x28(%ebp),%eax
423459:	75 05                	jne    0x423460
42345b:	ff 45 dc             	incl   -0x24(%ebp)
42345e:	eb e9                	jmp    0x423449
423460:	89 5d f4             	mov    %ebx,-0xc(%ebp)
423463:	ff 45 dc             	incl   -0x24(%ebp)
423466:	8b 45 dc             	mov    -0x24(%ebp),%eax
423469:	3b 45 f4             	cmp    -0xc(%ebp),%eax
42346c:	0f 82 53 ff ff ff    	jb     0x4233c5
423472:	5f                   	pop    %edi
423473:	5e                   	pop    %esi
423474:	5b                   	pop    %ebx
423475:	c9                   	leave
423476:	c2 0c 00             	ret    $0xc
423479:	56                   	push   %esi
42347a:	8b f1                	mov    %ecx,%esi
42347c:	e8 82 84 ff ff       	call   0x41b903
423481:	81 7c 24 0c ff ff 00 	cmpl   $0xffff,0xc(%esp)
423488:	00
423489:	75 4f                	jne    0x4234da
42348b:	83 66 24 bf          	andl   $0xffffffbf,0x24(%esi)
42348f:	83 78 50 00          	cmpl   $0x0,0x50(%eax)
423493:	75 0c                	jne    0x4234a1
423495:	c7 86 90 00 00 00 01 	movl   $0xe001,0x90(%esi)
42349c:	e0 00 00
42349f:	eb 0a                	jmp    0x4234ab
4234a1:	c7 86 90 00 00 00 02 	movl   $0xe002,0x90(%esi)
4234a8:	e0 00 00
4234ab:	6a 00                	push   $0x0
4234ad:	ff b6 90 00 00 00    	push   0x90(%esi)
4234b3:	68 62 03 00 00       	push   $0x362
4234b8:	ff 76 1c             	push   0x1c(%esi)
4234bb:	ff 15 88 99 43 00    	call   *0x439988
4234c1:	8b 06                	mov    (%esi),%eax
4234c3:	8b ce                	mov    %esi,%ecx
4234c5:	ff 90 dc 00 00 00    	call   *0xdc(%eax)
4234cb:	85 c0                	test   %eax,%eax
4234cd:	74 62                	je     0x423531
4234cf:	ff 70 1c             	push   0x1c(%eax)
4234d2:	ff 15 3c 99 43 00    	call   *0x43993c
4234d8:	eb 57                	jmp    0x423531
4234da:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4234de:	85 c9                	test   %ecx,%ecx
4234e0:	74 44                	je     0x423526
4234e2:	66 f7 44 24 0c 10 08 	testw  $0x810,0xc(%esp)
4234e9:	75 3b                	jne    0x423526
4234eb:	81 f9 00 f0 00 00    	cmp    $0xf000,%ecx
4234f1:	72 1f                	jb     0x423512
4234f3:	81 f9 f0 f1 00 00    	cmp    $0xf1f0,%ecx
4234f9:	73 17                	jae    0x423512
4234fb:	81 c1 00 10 ff ff    	add    $0xffff1000,%ecx
423501:	c1 e9 04             	shr    $0x4,%ecx
423504:	81 c1 00 ef 00 00    	add    $0xef00,%ecx
42350a:	89 8e 90 00 00 00    	mov    %ecx,0x90(%esi)
423510:	eb 1b                	jmp    0x42352d
423512:	81 f9 00 ff 00 00    	cmp    $0xff00,%ecx
423518:	72 f0                	jb     0x42350a
42351a:	c7 86 90 00 00 00 1f 	movl   $0xef1f,0x90(%esi)
423521:	ef 00 00
423524:	eb 07                	jmp    0x42352d
423526:	83 a6 90 00 00 00 00 	andl   $0x0,0x90(%esi)
42352d:	83 48 24 40          	orl    $0x40,0x24(%eax)
423531:	8b 86 90 00 00 00    	mov    0x90(%esi),%eax
423537:	3b 86 94 00 00 00    	cmp    0x94(%esi),%eax
42353d:	74 25                	je     0x423564
42353f:	ff 76 1c             	push   0x1c(%esi)
423542:	ff 15 a8 98 43 00    	call   *0x4398a8
423548:	50                   	push   %eax
423549:	e8 72 6d ff ff       	call   0x41a2c0
42354e:	85 c0                	test   %eax,%eax
423550:	74 12                	je     0x423564
423552:	6a 00                	push   $0x0
423554:	6a 00                	push   $0x0
423556:	68 6a 03 00 00       	push   $0x36a
42355b:	ff 76 1c             	push   0x1c(%esi)
42355e:	ff 15 40 98 43 00    	call   *0x439840
423564:	5e                   	pop    %esi
423565:	c2 0c 00             	ret    $0xc
423568:	8b 4c 24 08          	mov    0x8(%esp),%ecx
42356c:	56                   	push   %esi
42356d:	68 ff 00 00 00       	push   $0xff
423572:	e8 a6 b5 ff ff       	call   0x41eb1d
423577:	8b f0                	mov    %eax,%esi
423579:	68 00 01 00 00       	push   $0x100
42357e:	56                   	push   %esi
42357f:	ff 74 24 10          	push   0x10(%esp)
423583:	e8 e5 b6 ff ff       	call   0x41ec6d
423588:	85 c0                	test   %eax,%eax
42358a:	74 11                	je     0x42359d
42358c:	6a 0a                	push   $0xa
42358e:	56                   	push   %esi
42358f:	e8 6c 90 fe ff       	call   0x40c600
423594:	59                   	pop    %ecx
423595:	85 c0                	test   %eax,%eax
423597:	59                   	pop    %ecx
423598:	74 03                	je     0x42359d
42359a:	80 20 00             	andb   $0x0,(%eax)
42359d:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4235a1:	6a ff                	push   $0xffffffff
4235a3:	e8 c4 b5 ff ff       	call   0x41eb6c
4235a8:	5e                   	pop    %esi
4235a9:	c2 08 00             	ret    $0x8
4235ac:	f6 41 24 40          	testb  $0x40,0x24(%ecx)
4235b0:	74 04                	je     0x4235b6
4235b2:	33 c0                	xor    %eax,%eax
4235b4:	eb 16                	jmp    0x4235cc
4235b6:	ff 74 24 08          	push   0x8(%esp)
4235ba:	ff 74 24 08          	push   0x8(%esp)
4235be:	68 62 03 00 00       	push   $0x362
4235c3:	ff 71 1c             	push   0x1c(%ecx)
4235c6:	ff 15 88 99 43 00    	call   *0x439988
4235cc:	c2 08 00             	ret    $0x8
4235cf:	b8 98 79 42 00       	mov    $0x427998,%eax
4235d4:	e8 57 86 fe ff       	call   0x40bc30
4235d9:	83 ec 10             	sub    $0x10,%esp
4235dc:	53                   	push   %ebx
4235dd:	56                   	push   %esi
4235de:	8b f1                	mov    %ecx,%esi
4235e0:	57                   	push   %edi
4235e1:	8b 86 94 00 00 00    	mov    0x94(%esi),%eax
4235e7:	8b 3e                	mov    (%esi),%edi
4235e9:	83 66 24 bf          	andl   $0xffffffbf,0x24(%esi)
4235ed:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4235f0:	ff 97 dc 00 00 00    	call   *0xdc(%edi)
4235f6:	85 c0                	test   %eax,%eax
4235f8:	89 45 e8             	mov    %eax,-0x18(%ebp)
4235fb:	0f 84 80 00 00 00    	je     0x423681
423601:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
423605:	8d 4d ec             	lea    -0x14(%ebp),%ecx
423608:	e8 7f b3 ff ff       	call   0x41e98c
42360d:	8b 45 0c             	mov    0xc(%ebp),%eax
423610:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
423614:	85 c0                	test   %eax,%eax
423616:	74 08                	je     0x423620
423618:	8b 5d 08             	mov    0x8(%ebp),%ebx
42361b:	89 45 f0             	mov    %eax,-0x10(%ebp)
42361e:	eb 30                	jmp    0x423650
423620:	8b 5d 08             	mov    0x8(%ebp),%ebx
423623:	85 db                	test   %ebx,%ebx
423625:	74 29                	je     0x423650
423627:	81 fb 06 ef 00 00    	cmp    $0xef06,%ebx
42362d:	75 0e                	jne    0x42363d
42362f:	83 be 9c 00 00 00 00 	cmpl   $0x0,0x9c(%esi)
423636:	74 05                	je     0x42363d
423638:	bb 05 f0 00 00       	mov    $0xf005,%ebx
42363d:	8d 45 ec             	lea    -0x14(%ebp),%eax
423640:	8b ce                	mov    %esi,%ecx
423642:	50                   	push   %eax
423643:	53                   	push   %ebx
423644:	ff 97 cc 00 00 00    	call   *0xcc(%edi)
42364a:	8b 45 ec             	mov    -0x14(%ebp),%eax
42364d:	89 45 f0             	mov    %eax,-0x10(%ebp)
423650:	ff 75 f0             	push   -0x10(%ebp)
423653:	8b 4d e8             	mov    -0x18(%ebp),%ecx
423656:	e8 19 a1 ff ff       	call   0x41d774
42365b:	8b 4d e8             	mov    -0x18(%ebp),%ecx
42365e:	e8 eb 81 ff ff       	call   0x41b84e
423663:	85 c0                	test   %eax,%eax
423665:	74 0c                	je     0x423673
423667:	89 98 94 00 00 00    	mov    %ebx,0x94(%eax)
42366d:	89 98 90 00 00 00    	mov    %ebx,0x90(%eax)
423673:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
423677:	8d 4d ec             	lea    -0x14(%ebp),%ecx
42367a:	e8 21 b4 ff ff       	call   0x41eaa0
42367f:	eb 03                	jmp    0x423684
423681:	8b 5d 08             	mov    0x8(%ebp),%ebx
423684:	8b 4d f4             	mov    -0xc(%ebp),%ecx
423687:	8b 45 e4             	mov    -0x1c(%ebp),%eax
42368a:	89 9e 94 00 00 00    	mov    %ebx,0x94(%esi)
423690:	89 9e 90 00 00 00    	mov    %ebx,0x90(%esi)
423696:	5f                   	pop    %edi
423697:	5e                   	pop    %esi
423698:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
42369f:	5b                   	pop    %ebx
4236a0:	c9                   	leave
4236a1:	c2 08 00             	ret    $0x8
4236a4:	6a 01                	push   $0x1
4236a6:	68 01 e8 00 00       	push   $0xe801
4236ab:	ff 71 1c             	push   0x1c(%ecx)
4236ae:	e8 34 83 ff ff       	call   0x41b9e7
4236b3:	c3                   	ret
4236b4:	56                   	push   %esi
4236b5:	8b f1                	mov    %ecx,%esi
4236b7:	ff 74 24 0c          	push   0xc(%esp)
4236bb:	ff 74 24 0c          	push   0xc(%esp)
4236bf:	e8 f8 8c ff ff       	call   0x41c3bc
4236c4:	83 7c 24 08 02       	cmpl   $0x2,0x8(%esp)
4236c9:	75 16                	jne    0x4236e1
4236cb:	8b 86 90 00 00 00    	mov    0x90(%esi),%eax
4236d1:	3b 86 94 00 00 00    	cmp    0x94(%esi),%eax
4236d7:	74 08                	je     0x4236e1
4236d9:	50                   	push   %eax
4236da:	8b ce                	mov    %esi,%ecx
4236dc:	e8 04 00 00 00       	call   0x4236e5
4236e1:	5e                   	pop    %esi
4236e2:	c2 08 00             	ret    $0x8
4236e5:	6a 00                	push   $0x0
4236e7:	ff 74 24 08          	push   0x8(%esp)
4236eb:	68 62 03 00 00       	push   $0x362
4236f0:	ff 71 1c             	push   0x1c(%ecx)
4236f3:	ff 15 88 99 43 00    	call   *0x439988
4236f9:	c2 04 00             	ret    $0x4
4236fc:	b8 ac 79 42 00       	mov    $0x4279ac,%eax
423701:	e8 2a 85 fe ff       	call   0x40bc30
423706:	83 ec 1c             	sub    $0x1c,%esp
423709:	56                   	push   %esi
42370a:	8b f1                	mov    %ecx,%esi
42370c:	57                   	push   %edi
42370d:	6a 0a                	push   $0xa
42370f:	8d 4d d8             	lea    -0x28(%ebp),%ecx
423712:	e8 56 61 ff ff       	call   0x41986d
423717:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
42371b:	8b 76 70             	mov    0x70(%esi),%esi
42371e:	85 f6                	test   %esi,%esi
423720:	74 20                	je     0x423742
423722:	8b c6                	mov    %esi,%eax
423724:	8b 36                	mov    (%esi),%esi
423726:	8b 78 08             	mov    0x8(%eax),%edi
423729:	8b cf                	mov    %edi,%ecx
42372b:	8b 07                	mov    (%edi),%eax
42372d:	ff 90 d8 00 00 00    	call   *0xd8(%eax)
423733:	85 c0                	test   %eax,%eax
423735:	74 e7                	je     0x42371e
423737:	57                   	push   %edi
423738:	8d 4d d8             	lea    -0x28(%ebp),%ecx
42373b:	e8 2d 62 ff ff       	call   0x41996d
423740:	eb dc                	jmp    0x42371e
423742:	8b 75 dc             	mov    -0x24(%ebp),%esi