42272c:	8d 44 24 54          	lea    0x54(%esp),%eax
422730:	89 44 24 18          	mov    %eax,0x18(%esp)
422734:	8d 44 24 20          	lea    0x20(%esp),%eax
422738:	50                   	push   %eax
422739:	e8 92 03 ff ff       	call   0x412ad0
42273e:	85 c0                	test   %eax,%eax
422740:	0f 88 5e 31 ff ff    	js     0x4158a4
422746:	8d 44 24 10          	lea    0x10(%esp),%eax
42274a:	8b cb                	mov    %ebx,%ecx
42274c:	50                   	push   %eax
42274d:	e8 2e d1 fe ff       	call   0x40f880
422752:	e9 4d 31 ff ff       	jmp    0x4158a4
422757:	8b 4e 28             	mov    0x28(%esi),%ecx
42275a:	bb 80 00 00 00       	mov    $0x80,%ebx
42275f:	03 cb                	add    %ebx,%ecx
422761:	ba 00 00 00 80       	mov    $0x80000000,%edx
422766:	e8 c4 27 ff ff       	call   0x414f2f
42276b:	8b 46 28             	mov    0x28(%esi),%eax
42276e:	89 b8 88 00 00 00    	mov    %edi,0x88(%eax)
422774:	8b 46 28             	mov    0x28(%esi),%eax
422777:	89 b8 90 00 00 00    	mov    %edi,0x90(%eax)
42277d:	ff 76 2c             	push   0x2c(%esi)
422780:	ff 15 b0 a2 43 00    	call   *0x43a2b0
422786:	85 c0                	test   %eax,%eax
422788:	75 32                	jne    0x4227bc
42278a:	8b 4e 28             	mov    0x28(%esi),%ecx
42278d:	03 cb                	add    %ebx,%ecx
42278f:	eb 06                	jmp    0x422797
422791:	8b 4e 28             	mov    0x28(%esi),%ecx
422794:	83 e9 80             	sub    $0xffffff80,%ecx
422797:	ba 00 00 00 80       	mov    $0x80000000,%edx
42279c:	e8 38 27 ff ff       	call   0x414ed9
4227a1:	ff 15 a8 a0 43 00    	call   *0x43a0a8
4227a7:	85 c0                	test   %eax,%eax
4227a9:	0f 8e f9 31 ff ff    	jle    0x4159a8
4227af:	0f b7 c0             	movzwl %ax,%eax
4227b2:	0d 00 00 07 80       	or     $0x80070000,%eax
4227b7:	e9 ec 31 ff ff       	jmp    0x4159a8
4227bc:	ff 76 30             	push   0x30(%esi)
4227bf:	8b ce                	mov    %esi,%ecx
4227c1:	e8 2c 27 ff ff       	call   0x414ef2
4227c6:	ff 76 48             	push   0x48(%esi)
4227c9:	8d 56 14             	lea    0x14(%esi),%edx
4227cc:	8b c8                	mov    %eax,%ecx
4227ce:	e8 ad 23 ff ff       	call   0x414b80
4227d3:	8b c8                	mov    %eax,%ecx
4227d5:	e8 6c 27 ff ff       	call   0x414f46
4227da:	8b f8                	mov    %eax,%edi
4227dc:	85 ff                	test   %edi,%edi
4227de:	79 17                	jns    0x4227f7
4227e0:	8b 4e 28             	mov    0x28(%esi),%ecx
4227e3:	03 cb                	add    %ebx,%ecx
4227e5:	eb 06                	jmp    0x4227ed
4227e7:	8b 4e 28             	mov    0x28(%esi),%ecx
4227ea:	83 e9 80             	sub    $0xffffff80,%ecx
4227ed:	ba 00 00 00 80       	mov    $0x80000000,%edx
4227f2:	e8 e2 26 ff ff       	call   0x414ed9
4227f7:	8b c7                	mov    %edi,%eax
4227f9:	e9 aa 31 ff ff       	jmp    0x4159a8
4227fe:	68 57 00 07 80       	push   $0x80070057
422803:	68 20 79 40 00       	push   $0x407920
422808:	ba 5e 05 00 00       	mov    $0x55e,%edx
42280d:	eb 0f                	jmp    0x42281e
42280f:	68 57 00 07 80       	push   $0x80070057
422814:	68 20 79 40 00       	push   $0x407920
422819:	ba 8b 05 00 00       	mov    $0x58b,%edx
42281e:	8b 4d 04             	mov    0x4(%ebp),%ecx
422821:	e8 13 ab 00 00       	call   0x42d339
422826:	83 f9 ff             	cmp    $0xffffffff,%ecx
422829:	0f 84 f9 31 ff ff    	je     0x415a28
42282f:	e8 1c bb 00 00       	call   0x42e350
422834:	e9 ef 31 ff ff       	jmp    0x415a28
422839:	68 57 00 07 80       	push   $0x80070057
42283e:	68 20 79 40 00       	push   $0x407920
422843:	ba 6d 05 00 00       	mov    $0x56d,%edx
422848:	eb d4                	jmp    0x42281e
42284a:	83 f9 ff             	cmp    $0xffffffff,%ecx
42284d:	0f 84 28 32 ff ff    	je     0x415a7b
422853:	e8 f8 ba 00 00       	call   0x42e350
422858:	e9 1e 32 ff ff       	jmp    0x415a7b
42285d:	68 57 00 07 80       	push   $0x80070057
422862:	68 20 79 40 00       	push   $0x407920
422867:	ba 7c 05 00 00       	mov    $0x57c,%edx
42286c:	eb b0                	jmp    0x42281e
42286e:	83 f9 ff             	cmp    $0xffffffff,%ecx
422871:	0f 84 57 32 ff ff    	je     0x415ace
422877:	e8 d4 ba 00 00       	call   0x42e350
42287c:	e9 4d 32 ff ff       	jmp    0x415ace
422881:	83 f9 ff             	cmp    $0xffffffff,%ecx
422884:	0f 84 93 32 ff ff    	je     0x415b1d
42288a:	e8 c1 ba 00 00       	call   0x42e350
42288f:	e9 89 32 ff ff       	jmp    0x415b1d
422894:	50                   	push   %eax
422895:	ff 15 14 a4 43 00    	call   *0x43a414
42289b:	59                   	pop    %ecx
42289c:	e9 9b 32 ff ff       	jmp    0x415b3c
4228a1:	39 7b 48             	cmp    %edi,0x48(%ebx)
4228a4:	0f 83 c9 32 ff ff    	jae    0x415b73
4228aa:	8b 7b 48             	mov    0x48(%ebx),%edi
4228ad:	e9 c1 32 ff ff       	jmp    0x415b73
4228b2:	f7 c1 00 00 00 40    	test   $0x40000000,%ecx
4228b8:	75 4f                	jne    0x422909
4228ba:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4228bd:	03 cf                	add    %edi,%ecx
4228bf:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4228c2:	3b ce                	cmp    %esi,%ecx
4228c4:	72 1c                	jb     0x4228e2
4228c6:	8b 55 08             	mov    0x8(%ebp),%edx
4228c9:	51                   	push   %ecx
4228ca:	52                   	push   %edx
4228cb:	8b 02                	mov    (%edx),%eax
4228cd:	8b 70 0c             	mov    0xc(%eax),%esi
4228d0:	8b ce                	mov    %esi,%ecx
4228d2:	ff 15 20 a5 43 00    	call   *0x43a520
4228d8:	ff d6                	call   *%esi
4228da:	8b 75 0c             	mov    0xc(%ebp),%esi
4228dd:	33 c0                	xor    %eax,%eax
4228df:	89 45 fc             	mov    %eax,-0x4(%ebp)
4228e2:	83 7b 48 ff          	cmpl   $0xffffffff,0x48(%ebx)
4228e6:	8b 45 f8             	mov    -0x8(%ebp),%eax
4228e9:	74 05                	je     0x4228f0
4228eb:	03 c7                	add    %edi,%eax
4228ed:	89 45 f8             	mov    %eax,-0x8(%ebp)
4228f0:	3b 43 48             	cmp    0x48(%ebx),%eax
4228f3:	8d 43 14             	lea    0x14(%ebx),%eax
4228f6:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4228f9:	0f 82 87 32 ff ff    	jb     0x415b86
4228ff:	b8 b4 05 07 80       	mov    $0x800705b4,%eax
422904:	e9 a4 32 ff ff       	jmp    0x415bad
422909:	8b 92 88 00 00 00    	mov    0x88(%edx),%edx
42290f:	8b 43 28             	mov    0x28(%ebx),%eax
422912:	8b 88 90 00 00 00    	mov    0x90(%eax),%ecx
422918:	33 c0                	xor    %eax,%eax
42291a:	3b d1                	cmp    %ecx,%edx
42291c:	0f 94 c0             	sete   %al
42291f:	e9 89 32 ff ff       	jmp    0x415bad
422924:	8b 4d 04             	mov    0x4(%ebp),%ecx
422927:	ba fd 0d 00 00       	mov    $0xdfd,%edx
42292c:	56                   	push   %esi
42292d:	68 58 52 40 00       	push   $0x405258
422932:	e8 d3 97 00 00       	call   0x42c10a
422937:	e9 8b 33 ff ff       	jmp    0x415cc7
42293c:	8b 4d 04             	mov    0x4(%ebp),%ecx
42293f:	ba 29 0e 00 00       	mov    $0xe29,%edx
422944:	57                   	push   %edi
422945:	68 58 52 40 00       	push   $0x405258
42294a:	e8 bb 97 00 00       	call   0x42c10a
42294f:	e9 bf 35 ff ff       	jmp    0x415f13
422954:	8b 45 e8             	mov    -0x18(%ebp),%eax
422957:	52                   	push   %edx
422958:	8d 55 f0             	lea    -0x10(%ebp),%edx
42295b:	52                   	push   %edx
42295c:	8b 30                	mov    (%eax),%esi
42295e:	8d 55 cc             	lea    -0x34(%ebp),%edx
422961:	52                   	push   %edx
422962:	51                   	push   %ecx
422963:	50                   	push   %eax
422964:	8b 4e 10             	mov    0x10(%esi),%ecx
422967:	ff 15 20 a5 43 00    	call   *0x43a520
42296d:	ff 56 10             	call   *0x10(%esi)
422970:	e9 7a 80 fe ff       	jmp    0x40a9ef
422975:	8b 87 04 04 00 00    	mov    0x404(%edi),%eax
42297b:	3b 87 08 04 00 00    	cmp    0x408(%edi),%eax
422981:	75 20                	jne    0x4229a3
422983:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
422987:	8b 35 40 1a 40 00    	mov    0x401a40,%esi
42298d:	8b ce                	mov    %esi,%ecx
42298f:	50                   	push   %eax
422990:	ff 15 20 a5 43 00    	call   *0x43a520
422996:	ff d6                	call   *%esi
422998:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
42299c:	83 a7 08 04 00 00 00 	andl   $0x0,0x408(%edi)
4229a3:	8b 35 3c 1a 40 00    	mov    0x401a3c,%esi
4229a9:	8b ce                	mov    %esi,%ecx
4229ab:	53                   	push   %ebx
4229ac:	ff 15 20 a5 43 00    	call   *0x43a520
4229b2:	ff d6                	call   *%esi
4229b4:	89 87 04 04 00 00    	mov    %eax,0x404(%edi)
4229ba:	85 c0                	test   %eax,%eax
4229bc:	75 0a                	jne    0x4229c8
4229be:	b8 0e 00 07 80       	mov    $0x8007000e,%eax
4229c3:	e9 65 48 ff ff       	jmp    0x41722d
4229c8:	89 87 08 04 00 00    	mov    %eax,0x408(%edi)
4229ce:	89 9f 0c 04 00 00    	mov    %ebx,0x40c(%edi)
4229d4:	e9 1f 48 ff ff       	jmp    0x4171f8
4229d9:	8b ce                	mov    %esi,%ecx
4229db:	e8 28 f3 00 00       	call   0x431d08
4229e0:	8b c8                	mov    %eax,%ecx
4229e2:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4229e5:	85 c9                	test   %ecx,%ecx
4229e7:	0f 88 cb 49 ff ff    	js     0x4173b8
4229ed:	e9 c4 48 ff ff       	jmp    0x4172b6
4229f2:	03 fa                	add    %edx,%edi
4229f4:	e9 16 49 ff ff       	jmp    0x41730f
4229f9:	8b 46 28             	mov    0x28(%esi),%eax
4229fc:	8b 88 88 00 00 00    	mov    0x88(%eax),%ecx
422a02:	8b 46 28             	mov    0x28(%esi),%eax
422a05:	8b 80 90 00 00 00    	mov    0x90(%eax),%eax
422a0b:	3b c8                	cmp    %eax,%ecx
422a0d:	0f 85 7a 49 ff ff    	jne    0x41738d
422a13:	33 c9                	xor    %ecx,%ecx
422a15:	41                   	inc    %ecx
422a16:	e9 13 49 ff ff       	jmp    0x41732e
422a1b:	8b ca                	mov    %edx,%ecx
422a1d:	2b cb                	sub    %ebx,%ecx
422a1f:	89 4d e8             	mov    %ecx,-0x18(%ebp)
422a22:	8b d1                	mov    %ecx,%edx
422a24:	3b cf                	cmp    %edi,%ecx
422a26:	72 05                	jb     0x422a2d
422a28:	8b cf                	mov    %edi,%ecx
422a2a:	89 7d e8             	mov    %edi,-0x18(%ebp)
422a2d:	8b c7                	mov    %edi,%eax
422a2f:	2b c2                	sub    %edx,%eax
422a31:	3b d7                	cmp    %edi,%edx
422a33:	1b d2                	sbb    %edx,%edx
422a35:	23 d0                	and    %eax,%edx
422a37:	89 55 e4             	mov    %edx,-0x1c(%ebp)
422a3a:	85 c9                	test   %ecx,%ecx
422a3c:	74 2e                	je     0x422a6c
422a3e:	8b 46 28             	mov    0x28(%esi),%eax
422a41:	05 98 00 00 00       	add    $0x98,%eax
422a46:	03 c3                	add    %ebx,%eax
422a48:	51                   	push   %ecx
422a49:	50                   	push   %eax
422a4a:	8b 45 f8             	mov    -0x8(%ebp),%eax
422a4d:	03 45 08             	add    0x8(%ebp),%eax
422a50:	50                   	push   %eax
422a51:	e8 90 84 ff ff       	call   0x41aee6
422a56:	8b 4d e8             	mov    -0x18(%ebp),%ecx
422a59:	83 c4 0c             	add    $0xc,%esp
422a5c:	8b 55 e4             	mov    -0x1c(%ebp),%edx
422a5f:	03 d9                	add    %ecx,%ebx
422a61:	8b c3                	mov    %ebx,%eax
422a63:	2b 45 f4             	sub    -0xc(%ebp),%eax
422a66:	f7 d8                	neg    %eax
422a68:	1b c0                	sbb    %eax,%eax
422a6a:	23 d8                	and    %eax,%ebx
422a6c:	85 d2                	test   %edx,%edx
422a6e:	0f 84 ef 48 ff ff    	je     0x417363
422a74:	8b 46 28             	mov    0x28(%esi),%eax
422a77:	05 98 00 00 00       	add    $0x98,%eax
422a7c:	52                   	push   %edx
422a7d:	50                   	push   %eax
422a7e:	8b 45 f8             	mov    -0x8(%ebp),%eax
422a81:	03 c1                	add    %ecx,%eax
422a83:	03 45 08             	add    0x8(%ebp),%eax
422a86:	50                   	push   %eax
422a87:	e8 5a 84 ff ff       	call   0x41aee6
422a8c:	83 c4 0c             	add    $0xc,%esp
422a8f:	03 5d e4             	add    -0x1c(%ebp),%ebx
422a92:	e9 cc 48 ff ff       	jmp    0x417363
422a97:	8b 15 5c 82 43 00    	mov    0x43825c,%edx
422a9d:	83 fa ff             	cmp    $0xffffffff,%edx
422aa0:	75 25                	jne    0x422ac7
422aa2:	8b 0d cc 8e 43 00    	mov    0x438ecc,%ecx
422aa8:	68 5c 82 43 00       	push   $0x43825c
422aad:	ff 35 60 82 43 00    	push   0x438260
422ab3:	e8 96 0a 01 00       	call   0x43354e
422ab8:	8b 15 5c 82 43 00    	mov    0x43825c,%edx
422abe:	83 fa ff             	cmp    $0xffffffff,%edx
422ac1:	0f 84 83 4a ff ff    	je     0x41754a
422ac7:	a1 c8 8e 43 00       	mov    0x438ec8,%eax
422acc:	6b ca 44             	imul   $0x44,%edx,%ecx
422acf:	6a 04                	push   $0x4
422ad1:	5e                   	pop    %esi
422ad2:	39 34 01             	cmp    %esi,(%ecx,%eax,1)
422ad5:	0f 8c 6f 4a ff ff    	jl     0x41754a
422adb:	a1 cc 8e 43 00       	mov    0x438ecc,%eax
422ae0:	8b 40 38             	mov    0x38(%eax),%eax
422ae3:	39 70 24             	cmp    %esi,0x24(%eax)
422ae6:	0f 82 5e 4a ff ff    	jb     0x41754a
422aec:	83 38 00             	cmpl   $0x0,(%eax)
422aef:	0f 84 55 4a ff ff    	je     0x41754a
422af5:	8d 85 9c fe ff ff    	lea    -0x164(%ebp),%eax
422afb:	c7 85 9c fe ff ff 58 	movl   $0x405258,-0x164(%ebp)
422b02:	52 40 00
422b05:	68 f4 75 40 00       	push   $0x4075f4
422b0a:	50                   	push   %eax
422b0b:	c7 85 a0 fe ff ff 32 	movl   $0x132,-0x160(%ebp)
422b12:	01 00 00
422b15:	89 95 a4 fe ff ff    	mov    %edx,-0x15c(%ebp)
422b1b:	89 b5 a8 fe ff ff    	mov    %esi,-0x158(%ebp)
422b21:	c7 85 ac fe ff ff bc 	movl   $0x438ebc,-0x154(%ebp)
422b28:	8e 43 00
422b2b:	e8 b9 0b 01 00       	call   0x4336e9
422b30:	59                   	pop    %ecx
422b31:	59                   	pop    %ecx
422b32:	e9 13 4a ff ff       	jmp    0x41754a
422b37:	68 0c 0c 00 c0       	push   $0xc0000c0c
422b3c:	8b d3                	mov    %ebx,%edx
422b3e:	8b ce                	mov    %esi,%ecx
422b40:	e8 7d d5 00 00       	call   0x4300c2
422b45:	e9 76 4a ff ff       	jmp    0x4175c0
422b4a:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
422b4e:	85 f6                	test   %esi,%esi
422b50:	74 18                	je     0x422b6a
422b52:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
422b59:	56                   	push   %esi
422b5a:	8b 35 40 1a 40 00    	mov    0x401a40,%esi
422b60:	8b ce                	mov    %esi,%ecx
422b62:	ff 15 20 a5 43 00    	call   *0x43a520
422b68:	ff d6                	call   *%esi
422b6a:	8b 45 f0             	mov    -0x10(%ebp),%eax
422b6d:	e9 18 4b ff ff       	jmp    0x41768a
422b72:	8b cf                	mov    %edi,%ecx
422b74:	ff 15 20 a5 43 00    	call   *0x43a520
422b7a:	8b ce                	mov    %esi,%ecx
422b7c:	ff d7                	call   *%edi
422b7e:	e9 47 4b ff ff       	jmp    0x4176ca
422b83:	ff 15 a8 a0 43 00    	call   *0x43a0a8
422b89:	85 c0                	test   %eax,%eax
422b8b:	0f 8e 28 4c ff ff    	jle    0x4177b9
422b91:	0f b7 c0             	movzwl %ax,%eax
422b94:	0d 00 00 07 80       	or     $0x80070000,%eax
422b99:	e9 1b 4c ff ff       	jmp    0x4177b9
422b9e:	57                   	push   %edi
422b9f:	ff 15 38 a1 43 00    	call   *0x43a138
422ba5:	e9 03 4c ff ff       	jmp    0x4177ad
422baa:	be a0 00 07 80       	mov    $0x800700a0,%esi
422baf:	e9 f9 4b ff ff       	jmp    0x4177ad
422bb4:	56                   	push   %esi
422bb5:	ff 15 bc a1 43 00    	call   *0x43a1bc
422bbb:	ff 15 a8 a0 43 00    	call   *0x43a0a8
422bc1:	8b f0                	mov    %eax,%esi
422bc3:	85 f6                	test   %esi,%esi
422bc5:	0f 8e e2 4b ff ff    	jle    0x4177ad
422bcb:	0f b7 f6             	movzwl %si,%esi
422bce:	81 ce 00 00 07 80    	or     $0x80070000,%esi
422bd4:	e9 d4 4b ff ff       	jmp    0x4177ad
422bd9:	8b 4b 04             	mov    0x4(%ebx),%ecx
422bdc:	0f b7 01             	movzwl (%ecx),%eax
422bdf:	50                   	push   %eax
422be0:	51                   	push   %ecx
422be1:	6a 02                	push   $0x2
422be3:	ff 77 04             	push   0x4(%edi)
422be6:	ff 37                	push   (%edi)
422be8:	ff 15 5c a3 43 00    	call   *0x43a35c
422bee:	e9 26 4c ff ff       	jmp    0x417819
422bf3:	85 c0                	test   %eax,%eax
422bf5:	0f 8e 07 4e ff ff    	jle    0x417a02
422bfb:	0f b7 c0             	movzwl %ax,%eax
422bfe:	0d 00 00 07 80       	or     $0x80070000,%eax
422c03:	e9 fa 4d ff ff       	jmp    0x417a02
422c08:	bb 0e 00 07 80       	mov    $0x8007000e,%ebx
422c0d:	e9 ce 4d ff ff       	jmp    0x4179e0
422c12:	ff 15 a8 a0 43 00    	call   *0x43a0a8
422c18:	8b d8                	mov    %eax,%ebx
422c1a:	85 db                	test   %ebx,%ebx
422c1c:	0f 8e be 4d ff ff    	jle    0x4179e0
422c22:	0f b7 db             	movzwl %bx,%ebx