4213db:	e8 9b 54 00 00       	call   0x42687b
4213e0:	59                   	pop    %ecx
4213e1:	59                   	pop    %ecx
4213e2:	85 c0                	test   %eax,%eax
4213e4:	75 0e                	jne    0x4213f4
4213e6:	6a 2e                	push   $0x2e
4213e8:	53                   	push   %ebx
4213e9:	e8 8d 54 00 00       	call   0x42687b
4213ee:	59                   	pop    %ecx
4213ef:	59                   	pop    %ecx
4213f0:	85 c0                	test   %eax,%eax
4213f2:	74 15                	je     0x421409
4213f4:	6a 40                	push   $0x40
4213f6:	53                   	push   %ebx
4213f7:	6a 07                	push   $0x7
4213f9:	8d 87 20 01 00 00    	lea    0x120(%edi),%eax
4213ff:	50                   	push   %eax
421400:	e8 b0 7c ff ff       	call   0x4190b5
421405:	85 c0                	test   %eax,%eax
421407:	74 19                	je     0x421422
421409:	6a 0a                	push   $0xa
42140b:	6a 10                	push   $0x10
42140d:	8d 87 00 01 00 00    	lea    0x100(%edi),%eax
421413:	50                   	push   %eax
421414:	56                   	push   %esi
421415:	e8 49 42 00 00       	call   0x425663
42141a:	83 c4 10             	add    $0x10,%esp
42141d:	33 c0                	xor    %eax,%eax
42141f:	40                   	inc    %eax
421420:	eb 02                	jmp    0x421424
421422:	33 c0                	xor    %eax,%eax
421424:	5f                   	pop    %edi
421425:	5e                   	pop    %esi
421426:	5b                   	pop    %ebx
421427:	8b e5                	mov    %ebp,%esp
421429:	5d                   	pop    %ebp
42142a:	c3                   	ret
42142b:	33 c0                	xor    %eax,%eax
42142d:	50                   	push   %eax
42142e:	50                   	push   %eax
42142f:	50                   	push   %eax
421430:	50                   	push   %eax
421431:	50                   	push   %eax
421432:	e8 d8 a8 fe ff       	call   0x40bd0f
421437:	cc                   	int3
421438:	8b ff                	mov    %edi,%edi
42143a:	55                   	push   %ebp
42143b:	8b ec                	mov    %esp,%ebp
42143d:	81 ec f4 00 00 00    	sub    $0xf4,%esp
421443:	a1 28 ba 43 00       	mov    0x43ba28,%eax
421448:	33 c5                	xor    %ebp,%eax
42144a:	89 45 fc             	mov    %eax,-0x4(%ebp)
42144d:	53                   	push   %ebx
42144e:	56                   	push   %esi
42144f:	8b 75 08             	mov    0x8(%ebp),%esi
421452:	57                   	push   %edi
421453:	e8 04 77 ff ff       	call   0x418b5c
421458:	8b d8                	mov    %eax,%ebx
42145a:	e8 fd 76 ff ff       	call   0x418b5c
42145f:	56                   	push   %esi
421460:	8b b8 4c 03 00 00    	mov    0x34c(%eax),%edi
421466:	e8 11 05 00 00       	call   0x42197c
42146b:	59                   	pop    %ecx
42146c:	8b 4b 64             	mov    0x64(%ebx),%ecx
42146f:	8b f0                	mov    %eax,%esi
421471:	f7 d9                	neg    %ecx
421473:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
421479:	6a 78                	push   $0x78
42147b:	1b c9                	sbb    %ecx,%ecx
42147d:	81 e1 05 f0 ff ff    	and    $0xfffff005,%ecx
421483:	50                   	push   %eax
421484:	81 c1 02 10 00 00    	add    $0x1002,%ecx
42148a:	51                   	push   %ecx
42148b:	56                   	push   %esi
42148c:	ff 15 78 71 42 00    	call   *0x427178
421492:	85 c0                	test   %eax,%eax
421494:	75 05                	jne    0x42149b
421496:	21 07                	and    %eax,(%edi)
421498:	40                   	inc    %eax
421499:	eb 33                	jmp    0x4214ce
42149b:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
4214a1:	50                   	push   %eax
4214a2:	ff 73 54             	push   0x54(%ebx)
4214a5:	e8 12 d2 ff ff       	call   0x41e6bc
4214aa:	59                   	pop    %ecx
4214ab:	59                   	pop    %ecx
4214ac:	85 c0                	test   %eax,%eax
4214ae:	75 14                	jne    0x4214c4
4214b0:	56                   	push   %esi
4214b1:	e8 fa 05 00 00       	call   0x421ab0
4214b6:	59                   	pop    %ecx
4214b7:	85 c0                	test   %eax,%eax
4214b9:	74 09                	je     0x4214c4
4214bb:	83 0f 04             	orl    $0x4,(%edi)
4214be:	89 77 08             	mov    %esi,0x8(%edi)
4214c1:	89 77 04             	mov    %esi,0x4(%edi)
4214c4:	8b 07                	mov    (%edi),%eax
4214c6:	c1 e8 02             	shr    $0x2,%eax
4214c9:	f7 d0                	not    %eax
4214cb:	83 e0 01             	and    $0x1,%eax
4214ce:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4214d1:	5f                   	pop    %edi
4214d2:	5e                   	pop    %esi
4214d3:	33 cd                	xor    %ebp,%ecx
4214d5:	5b                   	pop    %ebx
4214d6:	e8 85 5b fe ff       	call   0x407060
4214db:	8b e5                	mov    %ebp,%esp
4214dd:	5d                   	pop    %ebp
4214de:	c2 04 00             	ret    $0x4
4214e1:	8b ff                	mov    %edi,%edi
4214e3:	55                   	push   %ebp
4214e4:	8b ec                	mov    %esp,%ebp
4214e6:	56                   	push   %esi
4214e7:	57                   	push   %edi
4214e8:	e8 6f 76 ff ff       	call   0x418b5c
4214ed:	8b d0                	mov    %eax,%edx
4214ef:	33 ff                	xor    %edi,%edi
4214f1:	8b 4a 54             	mov    0x54(%edx),%ecx
4214f4:	8d 71 02             	lea    0x2(%ecx),%esi
4214f7:	66 8b 01             	mov    (%ecx),%ax
4214fa:	83 c1 02             	add    $0x2,%ecx
4214fd:	66 3b c7             	cmp    %di,%ax
421500:	75 f5                	jne    0x4214f7
421502:	2b ce                	sub    %esi,%ecx
421504:	33 c0                	xor    %eax,%eax
421506:	d1 f9                	sar    $1,%ecx
421508:	83 f9 03             	cmp    $0x3,%ecx
42150b:	6a 01                	push   $0x1
42150d:	0f 94 c0             	sete   %al
421510:	68 38 14 42 00       	push   $0x421438
421515:	89 42 64             	mov    %eax,0x64(%edx)
421518:	ff 15 f8 71 42 00    	call   *0x4271f8
42151e:	8b 45 08             	mov    0x8(%ebp),%eax
421521:	f6 00 04             	testb  $0x4,(%eax)
421524:	75 02                	jne    0x421528
421526:	89 38                	mov    %edi,(%eax)
421528:	5f                   	pop    %edi
421529:	5e                   	pop    %esi
42152a:	5d                   	pop    %ebp
42152b:	c3                   	ret
42152c:	8b ff                	mov    %edi,%edi
42152e:	55                   	push   %ebp
42152f:	8b ec                	mov    %esp,%ebp
421531:	53                   	push   %ebx
421532:	56                   	push   %esi
421533:	57                   	push   %edi
421534:	e8 23 76 ff ff       	call   0x418b5c
421539:	8b f0                	mov    %eax,%esi
42153b:	33 db                	xor    %ebx,%ebx
42153d:	6a 02                	push   $0x2
42153f:	5a                   	pop    %edx
421540:	8b 4e 50             	mov    0x50(%esi),%ecx
421543:	8d 79 02             	lea    0x2(%ecx),%edi
421546:	66 8b 01             	mov    (%ecx),%ax
421549:	03 ca                	add    %edx,%ecx
42154b:	66 3b c3             	cmp    %bx,%ax
42154e:	75 f6                	jne    0x421546
421550:	2b cf                	sub    %edi,%ecx
421552:	33 c0                	xor    %eax,%eax
421554:	d1 f9                	sar    $1,%ecx
421556:	83 f9 03             	cmp    $0x3,%ecx
421559:	8b 4e 54             	mov    0x54(%esi),%ecx
42155c:	0f 94 c0             	sete   %al
42155f:	89 46 60             	mov    %eax,0x60(%esi)
421562:	8d 79 02             	lea    0x2(%ecx),%edi
421565:	66 8b 01             	mov    (%ecx),%ax
421568:	03 ca                	add    %edx,%ecx
42156a:	66 3b c3             	cmp    %bx,%ax
42156d:	75 f6                	jne    0x421565
42156f:	2b cf                	sub    %edi,%ecx
421571:	33 c0                	xor    %eax,%eax
421573:	8b 7d 08             	mov    0x8(%ebp),%edi
421576:	d1 f9                	sar    $1,%ecx
421578:	83 f9 03             	cmp    $0x3,%ecx
42157b:	0f 94 c0             	sete   %al
42157e:	89 46 64             	mov    %eax,0x64(%esi)
421581:	89 5f 04             	mov    %ebx,0x4(%edi)
421584:	39 5e 60             	cmp    %ebx,0x60(%esi)
421587:	75 0b                	jne    0x421594
421589:	ff 76 50             	push   0x50(%esi)
42158c:	e8 97 00 00 00       	call   0x421628
421591:	59                   	pop    %ecx
421592:	8b d0                	mov    %eax,%edx
421594:	6a 01                	push   $0x1
421596:	68 54 16 42 00       	push   $0x421654
42159b:	89 56 5c             	mov    %edx,0x5c(%esi)
42159e:	ff 15 f8 71 42 00    	call   *0x4271f8
4215a4:	8b 0f                	mov    (%edi),%ecx
4215a6:	f6 c1 07             	test   $0x7,%cl
4215a9:	0f 95 c2             	setne  %dl
4215ac:	0f ba e1 09          	bt     $0x9,%ecx
4215b0:	0f 92 c0             	setb   %al
4215b3:	22 d0                	and    %al,%dl
4215b5:	0f ba e1 08          	bt     $0x8,%ecx
4215b9:	0f 92 c0             	setb   %al
4215bc:	84 d0                	test   %dl,%al
4215be:	75 02                	jne    0x4215c2
4215c0:	89 1f                	mov    %ebx,(%edi)
4215c2:	5f                   	pop    %edi
4215c3:	5e                   	pop    %esi
4215c4:	5b                   	pop    %ebx
4215c5:	5d                   	pop    %ebp
4215c6:	c3                   	ret
4215c7:	8b ff                	mov    %edi,%edi
4215c9:	55                   	push   %ebp
4215ca:	8b ec                	mov    %esp,%ebp
4215cc:	53                   	push   %ebx
4215cd:	56                   	push   %esi
4215ce:	57                   	push   %edi
4215cf:	e8 88 75 ff ff       	call   0x418b5c
4215d4:	8b f0                	mov    %eax,%esi
4215d6:	33 db                	xor    %ebx,%ebx
4215d8:	6a 02                	push   $0x2
4215da:	5a                   	pop    %edx
4215db:	8b 4e 50             	mov    0x50(%esi),%ecx
4215de:	8d 79 02             	lea    0x2(%ecx),%edi
4215e1:	66 8b 01             	mov    (%ecx),%ax
4215e4:	03 ca                	add    %edx,%ecx
4215e6:	66 3b c3             	cmp    %bx,%ax
4215e9:	75 f6                	jne    0x4215e1
4215eb:	2b cf                	sub    %edi,%ecx
4215ed:	33 c0                	xor    %eax,%eax
4215ef:	d1 f9                	sar    $1,%ecx
4215f1:	83 f9 03             	cmp    $0x3,%ecx
4215f4:	0f 94 c0             	sete   %al
4215f7:	89 46 60             	mov    %eax,0x60(%esi)
4215fa:	85 c0                	test   %eax,%eax
4215fc:	75 0b                	jne    0x421609
4215fe:	ff 76 50             	push   0x50(%esi)
421601:	e8 22 00 00 00       	call   0x421628
421606:	59                   	pop    %ecx
421607:	8b d0                	mov    %eax,%edx
421609:	6a 01                	push   $0x1
42160b:	68 a4 18 42 00       	push   $0x4218a4
421610:	89 56 5c             	mov    %edx,0x5c(%esi)
421613:	ff 15 f8 71 42 00    	call   *0x4271f8
421619:	8b 45 08             	mov    0x8(%ebp),%eax
42161c:	f6 00 04             	testb  $0x4,(%eax)
42161f:	75 02                	jne    0x421623
421621:	89 18                	mov    %ebx,(%eax)
421623:	5f                   	pop    %edi
421624:	5e                   	pop    %esi
421625:	5b                   	pop    %ebx
421626:	5d                   	pop    %ebp
421627:	c3                   	ret
421628:	8b ff                	mov    %edi,%edi
42162a:	55                   	push   %ebp
42162b:	8b ec                	mov    %esp,%ebp
42162d:	8b 4d 08             	mov    0x8(%ebp),%ecx
421630:	33 d2                	xor    %edx,%edx
421632:	0f b7 01             	movzwl (%ecx),%eax
421635:	83 c1 02             	add    $0x2,%ecx
421638:	66 83 f8 41          	cmp    $0x41,%ax
42163c:	72 06                	jb     0x421644
42163e:	66 83 f8 5a          	cmp    $0x5a,%ax
421642:	76 09                	jbe    0x42164d
421644:	83 c0 9f             	add    $0xffffff9f,%eax
421647:	66 83 f8 19          	cmp    $0x19,%ax
42164b:	77 03                	ja     0x421650
42164d:	42                   	inc    %edx
42164e:	eb e2                	jmp    0x421632
421650:	8b c2                	mov    %edx,%eax
421652:	5d                   	pop    %ebp
421653:	c3                   	ret
421654:	8b ff                	mov    %edi,%edi
421656:	55                   	push   %ebp
421657:	8b ec                	mov    %esp,%ebp
421659:	81 ec fc 00 00 00    	sub    $0xfc,%esp
42165f:	a1 28 ba 43 00       	mov    0x43ba28,%eax
421664:	33 c5                	xor    %ebp,%eax
421666:	89 45 fc             	mov    %eax,-0x4(%ebp)
421669:	53                   	push   %ebx
42166a:	56                   	push   %esi
42166b:	8b 75 08             	mov    0x8(%ebp),%esi
42166e:	57                   	push   %edi
42166f:	e8 e8 74 ff ff       	call   0x418b5c
421674:	8b d8                	mov    %eax,%ebx
421676:	e8 e1 74 ff ff       	call   0x418b5c
42167b:	56                   	push   %esi
42167c:	8b b8 4c 03 00 00    	mov    0x34c(%eax),%edi
421682:	e8 f5 02 00 00       	call   0x42197c
421687:	59                   	pop    %ecx
421688:	8b 4b 64             	mov    0x64(%ebx),%ecx
42168b:	8b f0                	mov    %eax,%esi
42168d:	f7 d9                	neg    %ecx
42168f:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
421695:	6a 78                	push   $0x78
421697:	1b c9                	sbb    %ecx,%ecx
421699:	81 e1 05 f0 ff ff    	and    $0xfffff005,%ecx
42169f:	50                   	push   %eax
4216a0:	81 c1 02 10 00 00    	add    $0x1002,%ecx
4216a6:	51                   	push   %ecx
4216a7:	56                   	push   %esi
4216a8:	ff 15 78 71 42 00    	call   *0x427178
4216ae:	85 c0                	test   %eax,%eax
4216b0:	75 0b                	jne    0x4216bd
4216b2:	83 27 00             	andl   $0x0,(%edi)
4216b5:	33 c0                	xor    %eax,%eax
4216b7:	40                   	inc    %eax
4216b8:	e9 d4 01 00 00       	jmp    0x421891
4216bd:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
4216c3:	50                   	push   %eax
4216c4:	ff 73 54             	push   0x54(%ebx)
4216c7:	e8 f0 cf ff ff       	call   0x41e6bc
4216cc:	83 a5 08 ff ff ff 00 	andl   $0x0,-0xf8(%ebp)
4216d3:	59                   	pop    %ecx
4216d4:	59                   	pop    %ecx
4216d5:	85 c0                	test   %eax,%eax
4216d7:	0f 85 ad 00 00 00    	jne    0x42178a
4216dd:	6a 78                	push   $0x78
4216df:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
4216e5:	50                   	push   %eax
4216e6:	8b 43 60             	mov    0x60(%ebx),%eax
4216e9:	f7 d8                	neg    %eax
4216eb:	1b c0                	sbb    %eax,%eax
4216ed:	25 02 f0 ff ff       	and    $0xfffff002,%eax
4216f2:	05 01 10 00 00       	add    $0x1001,%eax
4216f7:	50                   	push   %eax
4216f8:	56                   	push   %esi
4216f9:	ff 15 78 71 42 00    	call   *0x427178
4216ff:	85 c0                	test   %eax,%eax
421701:	74 af                	je     0x4216b2
421703:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
421709:	50                   	push   %eax
42170a:	ff 73 50             	push   0x50(%ebx)
42170d:	e8 aa cf ff ff       	call   0x41e6bc
421712:	59                   	pop    %ecx
421713:	59                   	pop    %ecx
421714:	85 c0                	test   %eax,%eax
421716:	75 0b                	jne    0x421723
421718:	81 0f 04 03 00 00    	orl    $0x304,(%edi)
42171e:	89 77 04             	mov    %esi,0x4(%edi)
421721:	eb 64                	jmp    0x421787
421723:	f6 07 02             	testb  $0x2,(%edi)
421726:	75 62                	jne    0x42178a
421728:	83 7b 5c 00          	cmpl   $0x0,0x5c(%ebx)
42172c:	74 42                	je     0x421770
42172e:	ff 73 5c             	push   0x5c(%ebx)
421731:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
421737:	50                   	push   %eax
421738:	ff 73 50             	push   0x50(%ebx)
42173b:	e8 58 3f 00 00       	call   0x425698
421740:	83 c4 0c             	add    $0xc,%esp
421743:	85 c0                	test   %eax,%eax
421745:	75 29                	jne    0x421770
421747:	83 0f 02             	orl    $0x2,(%edi)
42174a:	89 77 08             	mov    %esi,0x8(%edi)
42174d:	8b 4b 50             	mov    0x50(%ebx),%ecx
421750:	8d 51 02             	lea    0x2(%ecx),%edx
421753:	66 8b 01             	mov    (%ecx),%ax