4287d0:	57                   	push   %edi
4287d1:	74 65                	je     0x428838
4287d3:	8b 46 08             	mov    0x8(%esi),%eax
4287d6:	8b 3e                	mov    (%esi),%edi
4287d8:	8d 50 02             	lea    0x2(%eax),%edx
4287db:	89 16                	mov    %edx,(%esi)
4287dd:	8b 56 18             	mov    0x18(%esi),%edx
4287e0:	2b f8                	sub    %eax,%edi
4287e2:	4a                   	dec    %edx
4287e3:	4a                   	dec    %edx
4287e4:	3b fb                	cmp    %ebx,%edi
4287e6:	89 56 04             	mov    %edx,0x4(%esi)
4287e9:	7e 0d                	jle    0x4287f8
4287eb:	57                   	push   %edi
4287ec:	50                   	push   %eax
4287ed:	51                   	push   %ecx
4287ee:	e8 c2 a3 ff ff       	call   0x422bb5
4287f3:	89 45 0c             	mov    %eax,0xc(%ebp)
4287f6:	eb 32                	jmp    0x42882a
4287f8:	83 f9 ff             	cmp    $0xffffffff,%ecx
4287fb:	74 19                	je     0x428816
4287fd:	8b d1                	mov    %ecx,%edx
4287ff:	c1 fa 05             	sar    $0x5,%edx
428802:	8b 14 95 c0 cc 4a 00 	mov    0x4accc0(,%edx,4),%edx
428809:	8b c1                	mov    %ecx,%eax
42880b:	83 e0 1f             	and    $0x1f,%eax
42880e:	8d 04 c0             	lea    (%eax,%eax,8),%eax
428811:	8d 04 82             	lea    (%edx,%eax,4),%eax
428814:	eb 05                	jmp    0x42881b
428816:	b8 70 93 4a 00       	mov    $0x4a9370,%eax
42881b:	f6 40 04 20          	testb  $0x20,0x4(%eax)
42881f:	74 0c                	je     0x42882d
428821:	6a 02                	push   $0x2
428823:	53                   	push   %ebx
428824:	51                   	push   %ecx
428825:	e8 aa a4 ff ff       	call   0x422cd4
42882a:	83 c4 0c             	add    $0xc,%esp
42882d:	8b 46 08             	mov    0x8(%esi),%eax
428830:	8b 5d 08             	mov    0x8(%ebp),%ebx
428833:	66 89 18             	mov    %bx,(%eax)
428836:	eb 1b                	jmp    0x428853
428838:	8b 5d 08             	mov    0x8(%ebp),%ebx
42883b:	6a 02                	push   $0x2
42883d:	5f                   	pop    %edi
42883e:	57                   	push   %edi
42883f:	8d 45 0c             	lea    0xc(%ebp),%eax
428842:	50                   	push   %eax
428843:	51                   	push   %ecx
428844:	66 89 5d 0c          	mov    %bx,0xc(%ebp)
428848:	e8 68 a3 ff ff       	call   0x422bb5
42884d:	83 c4 0c             	add    $0xc,%esp
428850:	89 45 0c             	mov    %eax,0xc(%ebp)
428853:	39 7d 0c             	cmp    %edi,0xc(%ebp)
428856:	5f                   	pop    %edi
428857:	74 06                	je     0x42885f
428859:	83 4e 0c 20          	orl    $0x20,0xc(%esi)
42885d:	eb 0f                	jmp    0x42886e
42885f:	8b c3                	mov    %ebx,%eax
428861:	25 ff ff 00 00       	and    $0xffff,%eax
428866:	eb 0b                	jmp    0x428873
428868:	83 c8 20             	or     $0x20,%eax
42886b:	89 46 0c             	mov    %eax,0xc(%esi)
42886e:	b8 ff ff 00 00       	mov    $0xffff,%eax
428873:	5e                   	pop    %esi
428874:	5b                   	pop    %ebx
428875:	c9                   	leave
428876:	c3                   	ret
428877:	cc                   	int3
428878:	cc                   	int3
428879:	cc                   	int3
42887a:	cc                   	int3
42887b:	cc                   	int3
42887c:	cc                   	int3
42887d:	cc                   	int3
42887e:	cc                   	int3
42887f:	cc                   	int3
428880:	55                   	push   %ebp
428881:	8b ec                	mov    %esp,%ebp
428883:	57                   	push   %edi
428884:	56                   	push   %esi
428885:	53                   	push   %ebx
428886:	8b 75 0c             	mov    0xc(%ebp),%esi
428889:	8b 7d 08             	mov    0x8(%ebp),%edi
42888c:	b0 ff                	mov    $0xff,%al
42888e:	8b ff                	mov    %edi,%edi
428890:	0a c0                	or     %al,%al
428892:	74 32                	je     0x4288c6
428894:	8a 06                	mov    (%esi),%al
428896:	83 c6 01             	add    $0x1,%esi
428899:	8a 27                	mov    (%edi),%ah
42889b:	83 c7 01             	add    $0x1,%edi
42889e:	38 c4                	cmp    %al,%ah
4288a0:	74 ee                	je     0x428890
4288a2:	2c 41                	sub    $0x41,%al
4288a4:	3c 1a                	cmp    $0x1a,%al
4288a6:	1a c9                	sbb    %cl,%cl
4288a8:	80 e1 20             	and    $0x20,%cl
4288ab:	02 c1                	add    %cl,%al
4288ad:	04 41                	add    $0x41,%al
4288af:	86 e0                	xchg   %ah,%al
4288b1:	2c 41                	sub    $0x41,%al
4288b3:	3c 1a                	cmp    $0x1a,%al
4288b5:	1a c9                	sbb    %cl,%cl
4288b7:	80 e1 20             	and    $0x20,%cl
4288ba:	02 c1                	add    %cl,%al
4288bc:	04 41                	add    $0x41,%al
4288be:	38 e0                	cmp    %ah,%al
4288c0:	74 ce                	je     0x428890
4288c2:	1a c0                	sbb    %al,%al
4288c4:	1c ff                	sbb    $0xff,%al
4288c6:	0f be c0             	movsbl %al,%eax
4288c9:	5b                   	pop    %ebx
4288ca:	5e                   	pop    %esi
4288cb:	5f                   	pop    %edi
4288cc:	c9                   	leave
4288cd:	c3                   	ret
4288ce:	55                   	push   %ebp
4288cf:	8b ec                	mov    %esp,%ebp
4288d1:	81 ec 84 00 00 00    	sub    $0x84,%esp
4288d7:	a1 40 8b 4a 00       	mov    0x4a8b40,%eax
4288dc:	53                   	push   %ebx
4288dd:	56                   	push   %esi
4288de:	33 db                	xor    %ebx,%ebx
4288e0:	83 7d 08 01          	cmpl   $0x1,0x8(%ebp)
4288e4:	89 45 fc             	mov    %eax,-0x4(%ebp)
4288e7:	57                   	push   %edi
4288e8:	0f 85 b8 00 00 00    	jne    0x4289a6
4288ee:	53                   	push   %ebx
4288ef:	8d bd 7c ff ff ff    	lea    -0x84(%ebp),%edi
4288f5:	68 80 00 00 00       	push   $0x80
4288fa:	8b c7                	mov    %edi,%eax
4288fc:	50                   	push   %eax
4288fd:	ff 75 10             	push   0x10(%ebp)
428900:	89 5d 08             	mov    %ebx,0x8(%ebp)
428903:	ff 75 0c             	push   0xc(%ebp)
428906:	e8 dd 0b 00 00       	call   0x4294e8
42890b:	8b f0                	mov    %eax,%esi
42890d:	83 c4 14             	add    $0x14,%esp
428910:	3b f3                	cmp    %ebx,%esi
428912:	75 4d                	jne    0x428961
428914:	ff 15 9c 03 4b 00    	call   *0x4b039c
42891a:	83 f8 7a             	cmp    $0x7a,%eax
42891d:	75 5e                	jne    0x42897d
42891f:	53                   	push   %ebx
428920:	53                   	push   %ebx
428921:	53                   	push   %ebx
428922:	ff 75 10             	push   0x10(%ebp)
428925:	ff 75 0c             	push   0xc(%ebp)
428928:	e8 bb 0b 00 00       	call   0x4294e8
42892d:	8b f0                	mov    %eax,%esi
42892f:	83 c4 14             	add    $0x14,%esp
428932:	3b f3                	cmp    %ebx,%esi
428934:	74 47                	je     0x42897d
428936:	56                   	push   %esi
428937:	e8 50 da fe ff       	call   0x41638c
42893c:	8b f8                	mov    %eax,%edi
42893e:	3b fb                	cmp    %ebx,%edi
428940:	59                   	pop    %ecx
428941:	74 3a                	je     0x42897d
428943:	53                   	push   %ebx
428944:	56                   	push   %esi
428945:	57                   	push   %edi
428946:	ff 75 10             	push   0x10(%ebp)
428949:	c7 45 08 01 00 00 00 	movl   $0x1,0x8(%ebp)
428950:	ff 75 0c             	push   0xc(%ebp)
428953:	e8 90 0b 00 00       	call   0x4294e8
428958:	8b f0                	mov    %eax,%esi
42895a:	83 c4 14             	add    $0x14,%esp
42895d:	3b f3                	cmp    %ebx,%esi
42895f:	74 15                	je     0x428976
428961:	56                   	push   %esi
428962:	e8 25 da fe ff       	call   0x41638c
428967:	3b c3                	cmp    %ebx,%eax
428969:	59                   	pop    %ecx
42896a:	8b 4d 14             	mov    0x14(%ebp),%ecx
42896d:	89 01                	mov    %eax,(%ecx)
42896f:	75 1c                	jne    0x42898d
428971:	39 5d 08             	cmp    %ebx,0x8(%ebp)
428974:	74 07                	je     0x42897d
428976:	57                   	push   %edi
428977:	e8 22 da fe ff       	call   0x41639e
42897c:	59                   	pop    %ecx
42897d:	83 c8 ff             	or     $0xffffffff,%eax
428980:	8b 4d fc             	mov    -0x4(%ebp),%ecx
428983:	5f                   	pop    %edi
428984:	5e                   	pop    %esi
428985:	5b                   	pop    %ebx
428986:	e8 53 f2 fe ff       	call   0x417bde
42898b:	c9                   	leave
42898c:	c3                   	ret
42898d:	56                   	push   %esi
42898e:	57                   	push   %edi
42898f:	50                   	push   %eax
428990:	e8 fb b7 ff ff       	call   0x424190
428995:	83 c4 0c             	add    $0xc,%esp
428998:	39 5d 08             	cmp    %ebx,0x8(%ebp)
42899b:	74 54                	je     0x4289f1
42899d:	57                   	push   %edi
42899e:	e8 fb d9 fe ff       	call   0x41639e
4289a3:	59                   	pop    %ecx
4289a4:	eb 4b                	jmp    0x4289f1
4289a6:	39 5d 08             	cmp    %ebx,0x8(%ebp)
4289a9:	75 d2                	jne    0x42897d
4289ab:	53                   	push   %ebx
4289ac:	6a 04                	push   $0x4
4289ae:	bf c0 cb 4a 00       	mov    $0x4acbc0,%edi
4289b3:	57                   	push   %edi
4289b4:	ff 75 10             	push   0x10(%ebp)
4289b7:	ff 75 0c             	push   0xc(%ebp)
4289ba:	e8 f9 09 00 00       	call   0x4293b8
4289bf:	83 c4 14             	add    $0x14,%esp
4289c2:	85 c0                	test   %eax,%eax
4289c4:	74 b7                	je     0x42897d
4289c6:	8b 75 14             	mov    0x14(%ebp),%esi
4289c9:	88 1e                	mov    %bl,(%esi)
4289cb:	8a 1f                	mov    (%edi),%bl
4289cd:	0f b6 c3             	movzbl %bl,%eax
4289d0:	50                   	push   %eax
4289d1:	e8 4f ab ff ff       	call   0x423525
4289d6:	85 c0                	test   %eax,%eax
4289d8:	59                   	pop    %ecx
4289d9:	74 16                	je     0x4289f1
4289db:	8a 06                	mov    (%esi),%al
4289dd:	b1 0a                	mov    $0xa,%cl
4289df:	f6 e9                	imul   %cl
4289e1:	02 c3                	add    %bl,%al
4289e3:	2c 30                	sub    $0x30,%al
4289e5:	47                   	inc    %edi
4289e6:	47                   	inc    %edi
4289e7:	81 ff c8 cb 4a 00    	cmp    $0x4acbc8,%edi
4289ed:	88 06                	mov    %al,(%esi)
4289ef:	7c da                	jl     0x4289cb
4289f1:	33 c0                	xor    %eax,%eax
4289f3:	eb 8b                	jmp    0x428980
4289f5:	55                   	push   %ebp
4289f6:	8b ec                	mov    %esp,%ebp
4289f8:	51                   	push   %ecx
4289f9:	53                   	push   %ebx
4289fa:	e8 a8 42 ff ff       	call   0x41cca7
4289ff:	8b 58 64             	mov    0x64(%eax),%ebx
428a02:	3b 1d fc 93 4a 00    	cmp    0x4a93fc,%ebx
428a08:	74 07                	je     0x428a11
428a0a:	e8 5a 7f ff ff       	call   0x420969
428a0f:	8b d8                	mov    %eax,%ebx
428a11:	83 7b 14 00          	cmpl   $0x0,0x14(%ebx)
428a15:	75 0f                	jne    0x428a26
428a17:	ff 75 0c             	push   0xc(%ebp)
428a1a:	ff 75 08             	push   0x8(%ebp)
428a1d:	e8 5e fe ff ff       	call   0x428880
428a22:	59                   	pop    %ecx
428a23:	59                   	pop    %ecx
428a24:	eb 35                	jmp    0x428a5b
428a26:	56                   	push   %esi
428a27:	8b 75 08             	mov    0x8(%ebp),%esi
428a2a:	57                   	push   %edi
428a2b:	8b 7d 0c             	mov    0xc(%ebp),%edi
428a2e:	0f b6 06             	movzbl (%esi),%eax
428a31:	50                   	push   %eax
428a32:	53                   	push   %ebx
428a33:	e8 71 ae ff ff       	call   0x4238a9
428a38:	89 45 fc             	mov    %eax,-0x4(%ebp)
428a3b:	0f b6 07             	movzbl (%edi),%eax
428a3e:	50                   	push   %eax
428a3f:	53                   	push   %ebx
428a40:	46                   	inc    %esi
428a41:	e8 63 ae ff ff       	call   0x4238a9
428a46:	83 c4 10             	add    $0x10,%esp
428a49:	8b c8                	mov    %eax,%ecx
428a4b:	8b 45 fc             	mov    -0x4(%ebp),%eax
428a4e:	47                   	inc    %edi
428a4f:	85 c0                	test   %eax,%eax
428a51:	74 04                	je     0x428a57
428a53:	3b c1                	cmp    %ecx,%eax
428a55:	74 d7                	je     0x428a2e
428a57:	5f                   	pop    %edi
428a58:	2b c1                	sub    %ecx,%eax
428a5a:	5e                   	pop    %esi
428a5b:	5b                   	pop    %ebx
428a5c:	c9                   	leave
428a5d:	c3                   	ret
428a5e:	55                   	push   %ebp
428a5f:	8b ec                	mov    %esp,%ebp
428a61:	51                   	push   %ecx
428a62:	53                   	push   %ebx
428a63:	e8 3f 42 ff ff       	call   0x41cca7
428a68:	8b 58 64             	mov    0x64(%eax),%ebx
428a6b:	3b 1d fc 93 4a 00    	cmp    0x4a93fc,%ebx
428a71:	74 07                	je     0x428a7a
428a73:	e8 f1 7e ff ff       	call   0x420969
428a78:	8b d8                	mov    %eax,%ebx
428a7a:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
428a7e:	74 58                	je     0x428ad8
428a80:	83 7b 14 00          	cmpl   $0x0,0x14(%ebx)
428a84:	75 13                	jne    0x428a99
428a86:	ff 75 10             	push   0x10(%ebp)
428a89:	ff 75 0c             	push   0xc(%ebp)
428a8c:	ff 75 08             	push   0x8(%ebp)
428a8f:	e8 9c 0b 00 00       	call   0x429630
428a94:	83 c4 0c             	add    $0xc,%esp
428a97:	eb 41                	jmp    0x428ada
428a99:	56                   	push   %esi
428a9a:	8b 75 08             	mov    0x8(%ebp),%esi
428a9d:	57                   	push   %edi
428a9e:	8b 7d 0c             	mov    0xc(%ebp),%edi
428aa1:	0f b6 06             	movzbl (%esi),%eax
428aa4:	50                   	push   %eax
428aa5:	53                   	push   %ebx
428aa6:	e8 fe ad ff ff       	call   0x4238a9
428aab:	89 45 fc             	mov    %eax,-0x4(%ebp)
428aae:	0f b6 07             	movzbl (%edi),%eax
428ab1:	50                   	push   %eax
428ab2:	53                   	push   %ebx
428ab3:	46                   	inc    %esi
428ab4:	e8 f0 ad ff ff       	call   0x4238a9
428ab9:	83 c4 10             	add    $0x10,%esp
428abc:	47                   	inc    %edi
428abd:	ff 4d 10             	decl   0x10(%ebp)
428ac0:	8b c8                	mov    %eax,%ecx
428ac2:	74 0b                	je     0x428acf
428ac4:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
428ac8:	74 05                	je     0x428acf
428aca:	39 4d fc             	cmp    %ecx,-0x4(%ebp)
428acd:	74 d2                	je     0x428aa1
428acf:	8b 45 fc             	mov    -0x4(%ebp),%eax
428ad2:	5f                   	pop    %edi
428ad3:	2b c1                	sub    %ecx,%eax
428ad5:	5e                   	pop    %esi
428ad6:	eb 02                	jmp    0x428ada
428ad8:	33 c0                	xor    %eax,%eax
428ada:	5b                   	pop    %ebx
428adb:	c9                   	leave
428adc:	c3                   	ret
428add:	55                   	push   %ebp
428ade:	8b ec                	mov    %esp,%ebp
428ae0:	83 ec 28             	sub    $0x28,%esp
428ae3:	a1 40 8b 4a 00       	mov    0x4a8b40,%eax
428ae8:	53                   	push   %ebx
428ae9:	8b 5d 0c             	mov    0xc(%ebp),%ebx
428aec:	89 45 fc             	mov    %eax,-0x4(%ebp)
428aef:	33 c0                	xor    %eax,%eax
428af1:	33 c9                	xor    %ecx,%ecx
428af3:	66 8b 4b 0a          	mov    0xa(%ebx),%cx
428af7:	56                   	push   %esi
428af8:	8b 75 08             	mov    0x8(%ebp),%esi
428afb:	89 45 e4             	mov    %eax,-0x1c(%ebp)
428afe:	89 45 f0             	mov    %eax,-0x10(%ebp)
428b01:	89 45 f4             	mov    %eax,-0xc(%ebp)
428b04:	89 45 f8             	mov    %eax,-0x8(%ebp)
428b07:	66 8b 46 0a          	mov    0xa(%esi),%ax
428b0b:	57                   	push   %edi