500610:	e8 6b 89 fd ff       	call   0x4d8f80
500615:	8b c3                	mov    %ebx,%eax
500617:	83 e0 01             	and    $0x1,%eax
50061a:	50                   	push   %eax
50061b:	e8 40 8b fd ff       	call   0x4d9160
500620:	83 c4 18             	add    $0x18,%esp
500623:	8b 74 24 24          	mov    0x24(%esp),%esi
500627:	8b 7c 24 20          	mov    0x20(%esp),%edi
50062b:	8d 44 24 4c          	lea    0x4c(%esp),%eax
50062f:	6a 40                	push   $0x40
500631:	50                   	push   %eax
500632:	e8 a9 13 f0 ff       	call   0x4019e0
500637:	68 0b 01 00 00       	push   $0x10b
50063c:	68 58 9c 62 00       	push   $0x629c58
500641:	56                   	push   %esi
500642:	ff 74 24 28          	push   0x28(%esp)
500646:	e8 f5 01 fe ff       	call   0x4e0840
50064b:	8b 44 24 58          	mov    0x58(%esp),%eax
50064f:	68 0c 01 00 00       	push   $0x10c
500654:	68 58 9c 62 00       	push   $0x629c58
500659:	50                   	push   %eax
50065a:	57                   	push   %edi
50065b:	e8 e0 01 fe ff       	call   0x4e0840
500660:	89 5c 24 44          	mov    %ebx,0x44(%esp)
500664:	83 c4 28             	add    $0x28,%esp
500667:	f7 d3                	not    %ebx
500669:	89 5c 24 10          	mov    %ebx,0x10(%esp)
50066d:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
500671:	23 4c 24 38          	and    0x38(%esp),%ecx
500675:	8b 44 24 10          	mov    0x10(%esp),%eax
500679:	0b c1                	or     %ecx,%eax
50067b:	eb 1e                	jmp    0x50069b
50067d:	68 98 00 00 00       	push   $0x98
500682:	68 58 9c 62 00       	push   $0x629c58
500687:	6a 79                	push   $0x79
500689:	68 99 00 00 00       	push   $0x99
50068e:	6a 04                	push   $0x4
500690:	e8 eb 88 fd ff       	call   0x4d8f80
500695:	83 c4 14             	add    $0x14,%esp
500698:	83 c8 ff             	or     $0xffffffff,%eax
50069b:	8b 8c 24 cc 00 00 00 	mov    0xcc(%esp),%ecx
5006a2:	5f                   	pop    %edi
5006a3:	5e                   	pop    %esi
5006a4:	5d                   	pop    %ebp
5006a5:	5b                   	pop    %ebx
5006a6:	33 cc                	xor    %esp,%ecx
5006a8:	e8 79 13 0d 00       	call   0x5d1a26
5006ad:	81 c4 c0 00 00 00    	add    $0xc0,%esp
5006b3:	c3                   	ret
5006b4:	cc                   	int3
5006b5:	cc                   	int3
5006b6:	cc                   	int3
5006b7:	cc                   	int3
5006b8:	cc                   	int3
5006b9:	cc                   	int3
5006ba:	cc                   	int3
5006bb:	cc                   	int3
5006bc:	cc                   	int3
5006bd:	cc                   	int3
5006be:	cc                   	int3
5006bf:	cc                   	int3
5006c0:	53                   	push   %ebx
5006c1:	8b 5c 24 0c          	mov    0xc(%esp),%ebx
5006c5:	55                   	push   %ebp
5006c6:	8b 6c 24 18          	mov    0x18(%esp),%ebp
5006ca:	8d 43 f5             	lea    -0xb(%ebx),%eax
5006cd:	3b e8                	cmp    %eax,%ebp
5006cf:	7e 1a                	jle    0x5006eb
5006d1:	6a 19                	push   $0x19
5006d3:	68 70 9c 62 00       	push   $0x629c70
5006d8:	6a 6e                	push   $0x6e
5006da:	6a 6e                	push   $0x6e
5006dc:	6a 04                	push   $0x4
5006de:	e8 9d 88 fd ff       	call   0x4d8f80
5006e3:	83 c4 14             	add    $0x14,%esp
5006e6:	33 c0                	xor    %eax,%eax
5006e8:	5d                   	pop    %ebp
5006e9:	5b                   	pop    %ebx
5006ea:	c3                   	ret
5006eb:	56                   	push   %esi
5006ec:	8b 74 24 10          	mov    0x10(%esp),%esi
5006f0:	2b dd                	sub    %ebp,%ebx
5006f2:	57                   	push   %edi
5006f3:	83 eb 0b             	sub    $0xb,%ebx
5006f6:	53                   	push   %ebx
5006f7:	66 c7 06 00 02       	movw   $0x200,(%esi)
5006fc:	83 c6 02             	add    $0x2,%esi
5006ff:	56                   	push   %esi
500700:	e8 4b 0b fe ff       	call   0x4e1250
500705:	83 c4 08             	add    $0x8,%esp
500708:	85 c0                	test   %eax,%eax
50070a:	7e 51                	jle    0x50075d
50070c:	33 ff                	xor    %edi,%edi
50070e:	85 db                	test   %ebx,%ebx
500710:	7e 1f                	jle    0x500731
500712:	80 3e 00             	cmpb   $0x0,(%esi)
500715:	75 14                	jne    0x50072b
500717:	6a 01                	push   $0x1
500719:	56                   	push   %esi
50071a:	e8 31 0b fe ff       	call   0x4e1250
50071f:	83 c4 08             	add    $0x8,%esp
500722:	85 c0                	test   %eax,%eax
500724:	7e 37                	jle    0x50075d
500726:	80 3e 00             	cmpb   $0x0,(%esi)
500729:	74 ec                	je     0x500717
50072b:	47                   	inc    %edi
50072c:	46                   	inc    %esi
50072d:	3b fb                	cmp    %ebx,%edi
50072f:	7c e1                	jl     0x500712
500731:	c7 06 03 03 03 03    	movl   $0x3030303,(%esi)
500737:	c7 46 04 03 03 03 03 	movl   $0x3030303,0x4(%esi)
50073e:	55                   	push   %ebp
50073f:	ff 74 24 20          	push   0x20(%esp)
500743:	c6 46 08 00          	movb   $0x0,0x8(%esi)
500747:	83 c6 09             	add    $0x9,%esi
50074a:	56                   	push   %esi
50074b:	e8 80 26 0d 00       	call   0x5d2dd0
500750:	83 c4 0c             	add    $0xc,%esp
500753:	b8 01 00 00 00       	mov    $0x1,%eax
500758:	5f                   	pop    %edi
500759:	5e                   	pop    %esi
50075a:	5d                   	pop    %ebp
50075b:	5b                   	pop    %ebx
50075c:	c3                   	ret
50075d:	5f                   	pop    %edi
50075e:	5e                   	pop    %esi
50075f:	5d                   	pop    %ebp
500760:	33 c0                	xor    %eax,%eax
500762:	5b                   	pop    %ebx
500763:	c3                   	ret
500764:	cc                   	int3
500765:	cc                   	int3
500766:	cc                   	int3
500767:	cc                   	int3
500768:	cc                   	int3
500769:	cc                   	int3
50076a:	cc                   	int3
50076b:	cc                   	int3
50076c:	cc                   	int3
50076d:	cc                   	int3
50076e:	cc                   	int3
50076f:	cc                   	int3
500770:	b8 24 00 00 00       	mov    $0x24,%eax
500775:	e8 36 10 0d 00       	call   0x5d17b0
50077a:	83 7c 24 2c 00       	cmpl   $0x0,0x2c(%esp)
50077f:	56                   	push   %esi
500780:	c7 44 24 08 00 00 00 	movl   $0x0,0x8(%esp)
500787:	00
500788:	0f 8e a2 03 00 00    	jle    0x500b30
50078e:	8b 74 24 38          	mov    0x38(%esp),%esi
500792:	85 f6                	test   %esi,%esi
500794:	0f 8e 96 03 00 00    	jle    0x500b30
50079a:	55                   	push   %ebp
50079b:	8b 6c 24 40          	mov    0x40(%esp),%ebp
50079f:	3b f5                	cmp    %ebp,%esi
5007a1:	0f 8f 6b 03 00 00    	jg     0x500b12
5007a7:	83 fd 0b             	cmp    $0xb,%ebp
5007aa:	0f 8c 62 03 00 00    	jl     0x500b12
5007b0:	53                   	push   %ebx
5007b1:	6a 4e                	push   $0x4e
5007b3:	68 70 9c 62 00       	push   $0x629c70
5007b8:	55                   	push   %ebp
5007b9:	e8 92 ff fd ff       	call   0x4e0750
5007be:	8b d8                	mov    %eax,%ebx
5007c0:	83 c4 0c             	add    $0xc,%esp
5007c3:	85 db                	test   %ebx,%ebx
5007c5:	75 1f                	jne    0x5007e6
5007c7:	6a 50                	push   $0x50
5007c9:	68 70 9c 62 00       	push   $0x629c70
5007ce:	6a 41                	push   $0x41
5007d0:	6a 72                	push   $0x72
5007d2:	6a 04                	push   $0x4
5007d4:	e8 a7 87 fd ff       	call   0x4d8f80
5007d9:	83 c4 14             	add    $0x14,%esp
5007dc:	83 c8 ff             	or     $0xffffffff,%eax
5007df:	5b                   	pop    %ebx
5007e0:	5d                   	pop    %ebp
5007e1:	5e                   	pop    %esi
5007e2:	83 c4 24             	add    $0x24,%esp
5007e5:	c3                   	ret
5007e6:	8b 54 24 3c          	mov    0x3c(%esp),%edx
5007ea:	57                   	push   %edi
5007eb:	03 d6                	add    %esi,%edx
5007ed:	8b fd                	mov    %ebp,%edi
5007ef:	03 dd                	add    %ebp,%ebx
5007f1:	8b c6                	mov    %esi,%eax
5007f3:	89 5c 24 20          	mov    %ebx,0x20(%esp)
5007f7:	f7 d0                	not    %eax
5007f9:	8d 4e ff             	lea    -0x1(%esi),%ecx
5007fc:	c1 e8 1f             	shr    $0x1f,%eax
5007ff:	4b                   	dec    %ebx
500800:	c1 e9 1f             	shr    $0x1f,%ecx
500803:	23 c8                	and    %eax,%ecx
500805:	49                   	dec    %ecx
500806:	8b c1                	mov    %ecx,%eax
500808:	83 e0 01             	and    $0x1,%eax
50080b:	2b d0                	sub    %eax,%edx
50080d:	2b f0                	sub    %eax,%esi
50080f:	8a 02                	mov    (%edx),%al
500811:	22 c1                	and    %cl,%al
500813:	88 03                	mov    %al,(%ebx)
500815:	83 ef 01             	sub    $0x1,%edi
500818:	75 d7                	jne    0x5007f1
50081a:	0f b6 c8             	movzbl %al,%ecx
50081d:	8b 44 24 20          	mov    0x20(%esp),%eax
500821:	89 7c 24 18          	mov    %edi,0x18(%esp)
500825:	89 5c 24 24          	mov    %ebx,0x24(%esp)
500829:	0f b6 10             	movzbl (%eax),%edx
50082c:	8d 41 ff             	lea    -0x1(%ecx),%eax
50082f:	83 f2 02             	xor    $0x2,%edx
500832:	c1 e8 1f             	shr    $0x1f,%eax
500835:	f7 d8                	neg    %eax
500837:	8d 52 ff             	lea    -0x1(%edx),%edx
50083a:	c1 ea 1f             	shr    $0x1f,%edx
50083d:	f7 da                	neg    %edx
50083f:	23 d0                	and    %eax,%edx
500841:	89 54 24 1c          	mov    %edx,0x1c(%esp)
500845:	8b c2                	mov    %edx,%eax
500847:	f7 d0                	not    %eax
500849:	89 54 24 10          	mov    %edx,0x10(%esp)
50084d:	89 44 24 20          	mov    %eax,0x20(%esp)
500851:	8b 44 24 1c          	mov    0x1c(%esp),%eax
500855:	8b 44 24 20          	mov    0x20(%esp),%eax
500859:	83 e0 6b             	and    $0x6b,%eax
50085c:	89 7c 24 1c          	mov    %edi,0x1c(%esp)
500860:	89 44 24 30          	mov    %eax,0x30(%esp)
500864:	bf 02 00 00 00       	mov    $0x2,%edi
500869:	83 ce ff             	or     $0xffffffff,%esi
50086c:	0f 1f 40 00          	nopl   0x0(%eax)
500870:	0f b6 14 3b          	movzbl (%ebx,%edi,1),%edx
500874:	4a                   	dec    %edx
500875:	c1 ea 1f             	shr    $0x1f,%edx
500878:	f7 da                	neg    %edx
50087a:	23 f2                	and    %edx,%esi
50087c:	89 74 24 28          	mov    %esi,0x28(%esp)
500880:	f7 d6                	not    %esi
500882:	89 74 24 2c          	mov    %esi,0x2c(%esp)
500886:	8b 4c 24 28          	mov    0x28(%esp),%ecx
50088a:	8b 44 24 2c          	mov    0x2c(%esp),%eax
50088e:	23 cf                	and    %edi,%ecx
500890:	23 44 24 14          	and    0x14(%esp),%eax
500894:	0b c1                	or     %ecx,%eax
500896:	0f b6 0c 3b          	movzbl (%ebx,%edi,1),%ecx
50089a:	83 f1 03             	xor    $0x3,%ecx
50089d:	89 44 24 14          	mov    %eax,0x14(%esp)
5008a1:	8b 44 24 1c          	mov    0x1c(%esp),%eax
5008a5:	49                   	dec    %ecx
5008a6:	0b c2                	or     %edx,%eax
5008a8:	c1 e9 1f             	shr    $0x1f,%ecx
5008ab:	8b f0                	mov    %eax,%esi
5008ad:	89 44 24 1c          	mov    %eax,0x1c(%esp)
5008b1:	f7 d9                	neg    %ecx
5008b3:	f7 d6                	not    %esi
5008b5:	0b c8                	or     %eax,%ecx
5008b7:	47                   	inc    %edi
5008b8:	8b c6                	mov    %esi,%eax
5008ba:	83 e0 01             	and    $0x1,%eax
5008bd:	03 44 24 18          	add    0x18(%esp),%eax
5008c1:	23 c8                	and    %eax,%ecx
5008c3:	89 4c 24 18          	mov    %ecx,0x18(%esp)
5008c7:	3b fd                	cmp    %ebp,%edi
5008c9:	7c a5                	jl     0x500870
5008cb:	8b 4c 24 14          	mov    0x14(%esp),%ecx
5008cf:	8b 74 24 18          	mov    0x18(%esp),%esi
5008d3:	8d 41 f6             	lea    -0xa(%ecx),%eax
5008d6:	0b c1                	or     %ecx,%eax
5008d8:	33 c1                	xor    %ecx,%eax
5008da:	8b 4c 24 10          	mov    0x10(%esp),%ecx
5008de:	c1 e8 1f             	shr    $0x1f,%eax
5008e1:	48                   	dec    %eax
5008e2:	23 c8                	and    %eax,%ecx
5008e4:	8b c1                	mov    %ecx,%eax
5008e6:	89 4c 24 10          	mov    %ecx,0x10(%esp)
5008ea:	0b 44 24 20          	or     0x20(%esp),%eax
5008ee:	f7 d1                	not    %ecx
5008f0:	89 44 24 2c          	mov    %eax,0x2c(%esp)
5008f4:	f7 d0                	not    %eax
5008f6:	89 44 24 28          	mov    %eax,0x28(%esp)
5008fa:	8b 44 24 2c          	mov    0x2c(%esp),%eax
5008fe:	23 44 24 30          	and    0x30(%esp),%eax
500902:	8b 54 24 28          	mov    0x28(%esp),%edx
500906:	8b 7c 24 10          	mov    0x10(%esp),%edi
50090a:	83 e2 71             	and    $0x71,%edx
50090d:	0b d0                	or     %eax,%edx
50090f:	8d 46 f8             	lea    -0x8(%esi),%eax
500912:	0b c6                	or     %esi,%eax
500914:	33 c6                	xor    %esi,%eax
500916:	c1 e8 1f             	shr    $0x1f,%eax
500919:	48                   	dec    %eax
50091a:	23 f8                	and    %eax,%edi
50091c:	8b c7                	mov    %edi,%eax
50091e:	89 7c 24 10          	mov    %edi,0x10(%esp)
500922:	0b c1                	or     %ecx,%eax
500924:	8b 4c 24 3c          	mov    0x3c(%esp),%ecx
500928:	89 44 24 30          	mov    %eax,0x30(%esp)
50092c:	f7 d0                	not    %eax
50092e:	89 44 24 2c          	mov    %eax,0x2c(%esp)
500932:	8b 44 24 30          	mov    0x30(%esp),%eax
500936:	8b 74 24 2c          	mov    0x2c(%esp),%esi
50093a:	23 c2                	and    %edx,%eax
50093c:	8b d7                	mov    %edi,%edx
50093e:	83 e6 73             	and    $0x73,%esi
500941:	0b f0                	or     %eax,%esi
500943:	8b fd                	mov    %ebp,%edi
500945:	2b 7c 24 14          	sub    0x14(%esp),%edi
500949:	f7 d2                	not    %edx
50094b:	4f                   	dec    %edi
50094c:	2b cf                	sub    %edi,%ecx
50094e:	89 7c 24 20          	mov    %edi,0x20(%esp)
500952:	33 cf                	xor    %edi,%ecx
500954:	8b c7                	mov    %edi,%eax
500956:	33 44 24 3c          	xor    0x3c(%esp),%eax
50095a:	0b c8                	or     %eax,%ecx
50095c:	8b 44 24 10          	mov    0x10(%esp),%eax
500960:	33 4c 24 3c          	xor    0x3c(%esp),%ecx
500964:	c1 e9 1f             	shr    $0x1f,%ecx
500967:	49                   	dec    %ecx
500968:	23 c1                	and    %ecx,%eax
50096a:	89 44 24 10          	mov    %eax,0x10(%esp)
50096e:	0b c2                	or     %edx,%eax
500970:	89 44 24 30          	mov    %eax,0x30(%esp)
500974:	f7 d0                	not    %eax
500976:	89 44 24 2c          	mov    %eax,0x2c(%esp)
50097a:	8b 44 24 30          	mov    0x30(%esp),%eax
50097e:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
500982:	23 c6                	and    %esi,%eax
500984:	8b 74 24 3c          	mov    0x3c(%esp),%esi
500988:	83 e1 6d             	and    $0x6d,%ecx
50098b:	0b c8                	or     %eax,%ecx
50098d:	89 4c 24 18          	mov    %ecx,0x18(%esp)
500991:	8d 4d f5             	lea    -0xb(%ebp),%ecx
500994:	8b d1                	mov    %ecx,%edx
500996:	8b c1                	mov    %ecx,%eax
500998:	2b d6                	sub    %esi,%edx
50099a:	33 c6                	xor    %esi,%eax
50099c:	33 d6                	xor    %esi,%edx
50099e:	0b d0                	or     %eax,%edx
5009a0:	33 d1                	xor    %ecx,%edx
5009a2:	c1 ea 1f             	shr    $0x1f,%edx
5009a5:	f7 da                	neg    %edx
5009a7:	89 54 24 3c          	mov    %edx,0x3c(%esp)
5009ab:	f7 d2                	not    %edx
5009ad:	89 54 24 30          	mov    %edx,0x30(%esp)
5009b1:	8b 44 24 3c          	mov    0x3c(%esp),%eax
5009b5:	8d 55 f5             	lea    -0xb(%ebp),%edx
5009b8:	8b 4c 24 30          	mov    0x30(%esp),%ecx
5009bc:	23 c2                	and    %edx,%eax
5009be:	23 ce                	and    %esi,%ecx
5009c0:	89 54 24 28          	mov    %edx,0x28(%esp)
5009c4:	0b c8                	or     %eax,%ecx