4286d8:	83 c6 02             	add    $0x2,%esi
4286db:	57                   	push   %edi
4286dc:	8b f9                	mov    %ecx,%edi
4286de:	0f b7 06             	movzwl (%esi),%eax
4286e1:	83 f8 2d             	cmp    $0x2d,%eax
4286e4:	75 74                	jne    0x42875a
4286e6:	83 c6 02             	add    $0x2,%esi
4286e9:	66 39 06             	cmp    %ax,(%esi)
4286ec:	75 40                	jne    0x42872e
4286ee:	0f b7 46 02          	movzwl 0x2(%esi),%eax
4286f2:	83 c6 02             	add    $0x2,%esi
4286f5:	66 85 c0             	test   %ax,%ax
4286f8:	74 34                	je     0x42872e
4286fa:	8b 55 14             	mov    0x14(%ebp),%edx
4286fd:	8b c8                	mov    %eax,%ecx
4286ff:	90                   	nop
428700:	66 83 f9 2d          	cmp    $0x2d,%cx
428704:	75 1a                	jne    0x428720
428706:	66 39 4e 02          	cmp    %cx,0x2(%esi)
42870a:	75 14                	jne    0x428720
42870c:	0f b7 46 04          	movzwl 0x4(%esi),%eax
428710:	83 f8 3e             	cmp    $0x3e,%eax
428713:	74 2c                	je     0x428741
428715:	66 85 c0             	test   %ax,%ax
428718:	75 06                	jne    0x428720
42871a:	66 83 fa 3e          	cmp    $0x3e,%dx
42871e:	74 21                	je     0x428741
428720:	0f b7 46 02          	movzwl 0x2(%esi),%eax
428724:	83 c6 02             	add    $0x2,%esi
428727:	8b c8                	mov    %eax,%ecx
428729:	66 85 c0             	test   %ax,%ax
42872c:	75 d2                	jne    0x428700
42872e:	89 77 04             	mov    %esi,0x4(%edi)
428731:	33 c0                	xor    %eax,%eax
428733:	c7 47 08 07 00 00 00 	movl   $0x7,0x8(%edi)
42873a:	5f                   	pop    %edi
42873b:	5e                   	pop    %esi
42873c:	5b                   	pop    %ebx
42873d:	5d                   	pop    %ebp
42873e:	c2 10 00             	ret    $0x10
428741:	33 c0                	xor    %eax,%eax
428743:	66 83 7e 04 3e       	cmpw   $0x3e,0x4(%esi)
428748:	5f                   	pop    %edi
428749:	0f 94 c0             	sete   %al
42874c:	8d 34 46             	lea    (%esi,%eax,2),%esi
42874f:	83 c6 04             	add    $0x4,%esi
428752:	8b c6                	mov    %esi,%eax
428754:	5e                   	pop    %esi
428755:	5b                   	pop    %ebx
428756:	5d                   	pop    %ebp
428757:	c2 10 00             	ret    $0x10
42875a:	83 f8 5b             	cmp    $0x5b,%eax
42875d:	0f 85 bf 00 00 00    	jne    0x428822
428763:	83 c6 02             	add    $0x2,%esi
428766:	66 83 3e 43          	cmpw   $0x43,(%esi)
42876a:	0f 85 9f 00 00 00    	jne    0x42880f
428770:	83 c6 02             	add    $0x2,%esi
428773:	66 83 3e 44          	cmpw   $0x44,(%esi)
428777:	0f 85 92 00 00 00    	jne    0x42880f
42877d:	83 c6 02             	add    $0x2,%esi
428780:	66 83 3e 41          	cmpw   $0x41,(%esi)
428784:	0f 85 85 00 00 00    	jne    0x42880f
42878a:	83 c6 02             	add    $0x2,%esi
42878d:	66 83 3e 54          	cmpw   $0x54,(%esi)
428791:	75 7c                	jne    0x42880f
428793:	83 c6 02             	add    $0x2,%esi
428796:	66 83 3e 41          	cmpw   $0x41,(%esi)
42879a:	75 73                	jne    0x42880f
42879c:	83 c6 02             	add    $0x2,%esi
42879f:	66 39 06             	cmp    %ax,(%esi)
4287a2:	75 6b                	jne    0x42880f
4287a4:	8b 17                	mov    (%edi),%edx
4287a6:	83 c6 02             	add    $0x2,%esi
4287a9:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4287ac:	6a 04                	push   $0x4
4287ae:	e8 ad f7 ff ff       	call   0x427f60
4287b3:	8b d8                	mov    %eax,%ebx
4287b5:	83 c4 04             	add    $0x4,%esp
4287b8:	85 db                	test   %ebx,%ebx
4287ba:	75 11                	jne    0x4287cd
4287bc:	89 77 04             	mov    %esi,0x4(%edi)
4287bf:	c7 47 08 03 00 00 00 	movl   $0x3,0x8(%edi)
4287c6:	5f                   	pop    %edi
4287c7:	5e                   	pop    %esi
4287c8:	5b                   	pop    %ebx
4287c9:	5d                   	pop    %ebp
4287ca:	c2 10 00             	ret    $0x10
4287cd:	8b 55 14             	mov    0x14(%ebp),%edx
4287d0:	8b ce                	mov    %esi,%ecx
4287d2:	89 73 08             	mov    %esi,0x8(%ebx)
4287d5:	e8 b6 fb ff ff       	call   0x428390
4287da:	8b f0                	mov    %eax,%esi
4287dc:	85 f6                	test   %esi,%esi
4287de:	75 16                	jne    0x4287f6
4287e0:	8b 43 08             	mov    0x8(%ebx),%eax
4287e3:	89 47 04             	mov    %eax,0x4(%edi)
4287e6:	33 c0                	xor    %eax,%eax
4287e8:	c7 47 08 08 00 00 00 	movl   $0x8,0x8(%edi)
4287ef:	5f                   	pop    %edi
4287f0:	5e                   	pop    %esi
4287f1:	5b                   	pop    %ebx
4287f2:	5d                   	pop    %ebp
4287f3:	c2 10 00             	ret    $0x10
4287f6:	33 c0                	xor    %eax,%eax
4287f8:	66 83 7e 02 3e       	cmpw   $0x3e,0x2(%esi)
4287fd:	5f                   	pop    %edi
4287fe:	0f 94 c0             	sete   %al
428801:	8d 34 46             	lea    (%esi,%eax,2),%esi
428804:	83 c6 02             	add    $0x2,%esi
428807:	8b c6                	mov    %esi,%eax
428809:	5e                   	pop    %esi
42880a:	5b                   	pop    %ebx
42880b:	5d                   	pop    %ebp
42880c:	c2 10 00             	ret    $0x10
42880f:	89 77 04             	mov    %esi,0x4(%edi)
428812:	33 c0                	xor    %eax,%eax
428814:	c7 47 08 08 00 00 00 	movl   $0x8,0x8(%edi)
42881b:	5f                   	pop    %edi
42881c:	5e                   	pop    %esi
42881d:	5b                   	pop    %ebx
42881e:	5d                   	pop    %ebp
42881f:	c2 10 00             	ret    $0x10
428822:	83 f8 44             	cmp    $0x44,%eax
428825:	0f 85 8f 00 00 00    	jne    0x4288ba
42882b:	66 83 7e 02 4f       	cmpw   $0x4f,0x2(%esi)
428830:	0f 85 a0 00 00 00    	jne    0x4288d6
428836:	66 83 7e 04 43       	cmpw   $0x43,0x4(%esi)
42883b:	0f 85 95 00 00 00    	jne    0x4288d6
428841:	66 83 7e 06 54       	cmpw   $0x54,0x6(%esi)
428846:	0f 85 8a 00 00 00    	jne    0x4288d6
42884c:	66 83 7e 08 59       	cmpw   $0x59,0x8(%esi)
428851:	0f 85 7f 00 00 00    	jne    0x4288d6
428857:	66 83 7e 0a 50       	cmpw   $0x50,0xa(%esi)
42885c:	75 78                	jne    0x4288d6
42885e:	0f b7 46 0c          	movzwl 0xc(%esi),%eax
428862:	8b 4d 14             	mov    0x14(%ebp),%ecx
428865:	83 f8 45             	cmp    $0x45,%eax
428868:	74 0b                	je     0x428875
42886a:	66 85 c0             	test   %ax,%ax
42886d:	75 67                	jne    0x4288d6
42886f:	66 83 f9 45          	cmp    $0x45,%cx
428873:	75 61                	jne    0x4288d6
428875:	8b 45 0c             	mov    0xc(%ebp),%eax
428878:	83 ee 04             	sub    $0x4,%esi
42887b:	83 78 0c 00          	cmpl   $0x0,0xc(%eax)
42887f:	74 13                	je     0x428894
428881:	89 77 04             	mov    %esi,0x4(%edi)
428884:	33 c0                	xor    %eax,%eax
428886:	c7 47 08 09 00 00 00 	movl   $0x9,0x8(%edi)
42888d:	5f                   	pop    %edi
42888e:	5e                   	pop    %esi
42888f:	5b                   	pop    %ebx
428890:	5d                   	pop    %ebp
428891:	c2 10 00             	ret    $0x10
428894:	51                   	push   %ecx
428895:	56                   	push   %esi
428896:	8b cf                	mov    %edi,%ecx
428898:	e8 43 fc ff ff       	call   0x4284e0
42889d:	8b f0                	mov    %eax,%esi
42889f:	85 f6                	test   %esi,%esi
4288a1:	74 3d                	je     0x4288e0
4288a3:	66 83 3e 00          	cmpw   $0x0,(%esi)
4288a7:	74 08                	je     0x4288b1
4288a9:	33 c0                	xor    %eax,%eax
4288ab:	66 89 06             	mov    %ax,(%esi)
4288ae:	83 c6 02             	add    $0x2,%esi
4288b1:	5f                   	pop    %edi
4288b2:	8b c6                	mov    %esi,%eax
4288b4:	5e                   	pop    %esi
4288b5:	5b                   	pop    %ebx
4288b6:	5d                   	pop    %ebp
4288b7:	c2 10 00             	ret    $0x10
4288ba:	66 85 c0             	test   %ax,%ax
4288bd:	75 17                	jne    0x4288d6
4288bf:	8b 45 14             	mov    0x14(%ebp),%eax
4288c2:	66 83 f8 2d          	cmp    $0x2d,%ax
4288c6:	0f 84 62 fe ff ff    	je     0x42872e
4288cc:	66 83 f8 5b          	cmp    $0x5b,%ax
4288d0:	0f 84 39 ff ff ff    	je     0x42880f
4288d6:	c7 47 08 05 00 00 00 	movl   $0x5,0x8(%edi)
4288dd:	89 77 04             	mov    %esi,0x4(%edi)
4288e0:	5f                   	pop    %edi
4288e1:	5e                   	pop    %esi
4288e2:	33 c0                	xor    %eax,%eax
4288e4:	5b                   	pop    %ebx
4288e5:	5d                   	pop    %ebp
4288e6:	c2 10 00             	ret    $0x10
4288e9:	cc                   	int3
4288ea:	cc                   	int3
4288eb:	cc                   	int3
4288ec:	cc                   	int3
4288ed:	cc                   	int3
4288ee:	cc                   	int3
4288ef:	cc                   	int3
4288f0:	55                   	push   %ebp
4288f1:	8b ec                	mov    %esp,%ebp
4288f3:	83 ec 0c             	sub    $0xc,%esp
4288f6:	53                   	push   %ebx
4288f7:	56                   	push   %esi
4288f8:	8b 75 08             	mov    0x8(%ebp),%esi
4288fb:	8b d9                	mov    %ecx,%ebx
4288fd:	8b 4d 0c             	mov    0xc(%ebp),%ecx
428900:	57                   	push   %edi
428901:	89 5d f8             	mov    %ebx,-0x8(%ebp)
428904:	0f b7 06             	movzwl (%esi),%eax
428907:	89 4d fc             	mov    %ecx,-0x4(%ebp)
42890a:	66 85 c0             	test   %ax,%ax
42890d:	0f 84 47 06 00 00    	je     0x428f5a
428913:	8b d0                	mov    %eax,%edx
428915:	c7 45 f4 80 00 00 00 	movl   $0x80,-0xc(%ebp)
42891c:	0f 1f 40 00          	nopl   0x0(%eax)
428920:	8b fe                	mov    %esi,%edi
428922:	66 83 fa 3c          	cmp    $0x3c,%dx
428926:	75 0c                	jne    0x428934
428928:	0f b7 56 02          	movzwl 0x2(%esi),%edx
42892c:	83 c6 02             	add    $0x2,%esi
42892f:	e9 ba 00 00 00       	jmp    0x4289ee
428934:	0f b7 ca             	movzwl %dx,%ecx
428937:	bb 80 00 00 00       	mov    $0x80,%ebx
42893c:	0f 1f 40 00          	nopl   0x0(%eax)
428940:	66 3b cb             	cmp    %bx,%cx
428943:	73 15                	jae    0x42895a
428945:	0f b7 c1             	movzwl %cx,%eax
428948:	f6 80 60 b9 4a 00 08 	testb  $0x8,0x4ab960(%eax)
42894f:	74 09                	je     0x42895a
428951:	0f b7 4e 02          	movzwl 0x2(%esi),%ecx
428955:	83 c6 02             	add    $0x2,%esi
428958:	eb e6                	jmp    0x428940
42895a:	8b 5d f8             	mov    -0x8(%ebp),%ebx
42895d:	66 83 f9 3c          	cmp    $0x3c,%cx
428961:	0f 84 eb 04 00 00    	je     0x428e52
428967:	66 85 c9             	test   %cx,%cx
42896a:	0f 84 e2 04 00 00    	je     0x428e52
428970:	8b 4d fc             	mov    -0x4(%ebp),%ecx
428973:	83 79 0c 00          	cmpl   $0x0,0xc(%ecx)
428977:	75 3c                	jne    0x4289b5
428979:	0f b7 07             	movzwl (%edi),%eax
42897c:	8b f7                	mov    %edi,%esi
42897e:	8b d0                	mov    %eax,%edx
428980:	66 85 c0             	test   %ax,%ax
428983:	74 1e                	je     0x4289a3
428985:	8b c8                	mov    %eax,%ecx
428987:	0f b7 d1             	movzwl %cx,%edx
42898a:	66 83 f9 3c          	cmp    $0x3c,%cx
42898e:	74 10                	je     0x4289a0
428990:	0f b7 46 02          	movzwl 0x2(%esi),%eax
428994:	83 c6 02             	add    $0x2,%esi
428997:	8b c8                	mov    %eax,%ecx
428999:	8b d0                	mov    %eax,%edx
42899b:	66 85 c0             	test   %ax,%ax
42899e:	75 e7                	jne    0x428987
4289a0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4289a3:	66 85 d2             	test   %dx,%dx
4289a6:	0f 84 91 05 00 00    	je     0x428f3d
4289ac:	0f b7 56 02          	movzwl 0x2(%esi),%edx
4289b0:	83 c6 02             	add    $0x2,%esi
4289b3:	eb 39                	jmp    0x4289ee
4289b5:	8b 13                	mov    (%ebx),%edx
4289b7:	6a 03                	push   $0x3
4289b9:	e8 a2 f5 ff ff       	call   0x427f60
4289be:	83 c4 04             	add    $0x4,%esp
4289c1:	85 c0                	test   %eax,%eax
4289c3:	0f 84 5f 05 00 00    	je     0x428f28
4289c9:	89 78 08             	mov    %edi,0x8(%eax)
4289cc:	8b 40 0c             	mov    0xc(%eax),%eax
4289cf:	57                   	push   %edi
4289d0:	89 45 fc             	mov    %eax,-0x4(%ebp)
4289d3:	e8 d8 8f 00 00       	call   0x4319b0
4289d8:	8b f0                	mov    %eax,%esi
4289da:	83 c4 04             	add    $0x4,%esp
4289dd:	0f b7 0e             	movzwl (%esi),%ecx
4289e0:	8b d1                	mov    %ecx,%edx
4289e2:	66 85 c9             	test   %cx,%cx
4289e5:	0f 84 52 05 00 00    	je     0x428f3d
4289eb:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4289ee:	bf 80 00 00 00       	mov    $0x80,%edi
4289f3:	66 3b d7             	cmp    %di,%dx
4289f6:	0f 83 90 01 00 00    	jae    0x428b8c
4289fc:	0f b7 c2             	movzwl %dx,%eax
4289ff:	8a 80 60 b9 4a 00    	mov    0x4ab960(%eax),%al
428a05:	84 c0                	test   %al,%al
428a07:	0f 88 7f 01 00 00    	js     0x428b8c
428a0d:	66 83 fa 2f          	cmp    $0x2f,%dx
428a11:	0f 85 a0 00 00 00    	jne    0x428ab7
428a17:	8b 49 04             	mov    0x4(%ecx),%ecx
428a1a:	83 c6 02             	add    $0x2,%esi
428a1d:	8b de                	mov    %esi,%ebx
428a1f:	85 c9                	test   %ecx,%ecx
428a21:	0f 84 82 04 00 00    	je     0x428ea9
428a27:	0f b7 16             	movzwl (%esi),%edx
428a2a:	66 3b d7             	cmp    %di,%dx
428a2d:	0f b7 39             	movzwl (%ecx),%edi
428a30:	73 09                	jae    0x428a3b
428a32:	f6 82 60 b9 4a 00 40 	testb  $0x40,0x4ab960(%edx)
428a39:	74 16                	je     0x428a51
428a3b:	83 c1 02             	add    $0x2,%ecx
428a3e:	83 c6 02             	add    $0x2,%esi
428a41:	66 3b d7             	cmp    %di,%dx
428a44:	0f 85 47 04 00 00    	jne    0x428e91
428a4a:	bf 80 00 00 00       	mov    $0x80,%edi
428a4f:	eb d6                	jmp    0x428a27
428a51:	66 85 ff             	test   %di,%di
428a54:	0f 85 0e 04 00 00    	jne    0x428e68
428a5a:	8b 7d fc             	mov    -0x4(%ebp),%edi
428a5d:	8b ca                	mov    %edx,%ecx
428a5f:	8b 7f 0c             	mov    0xc(%edi),%edi
428a62:	89 7d fc             	mov    %edi,-0x4(%ebp)
428a65:	bf 80 00 00 00       	mov    $0x80,%edi
428a6a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
428a70:	66 3b cf             	cmp    %di,%cx
428a73:	73 15                	jae    0x428a8a
428a75:	0f b7 c1             	movzwl %cx,%eax
428a78:	f6 80 60 b9 4a 00 08 	testb  $0x8,0x4ab960(%eax)
428a7f:	74 09                	je     0x428a8a
428a81:	0f b7 4e 02          	movzwl 0x2(%esi),%ecx
428a85:	83 c6 02             	add    $0x2,%esi
428a88:	eb e6                	jmp    0x428a70
428a8a:	66 85 c9             	test   %cx,%cx
428a8d:	75 13                	jne    0x428aa2
428a8f:	66 83 7d 14 3e       	cmpw   $0x3e,0x14(%ebp)
428a94:	0f 85 df 03 00 00    	jne    0x428e79
428a9a:	8b 5d f8             	mov    -0x8(%ebp),%ebx
428a9d:	e9 b0 03 00 00       	jmp    0x428e52
428aa2:	66 83 f9 3e          	cmp    $0x3e,%cx
428aa6:	0f 85 cd 03 00 00    	jne    0x428e79
428aac:	8b 5d f8             	mov    -0x8(%ebp),%ebx
428aaf:	83 c6 02             	add    $0x2,%esi
428ab2:	e9 9b 03 00 00       	jmp    0x428e52
428ab7:	66 83 fa 3f          	cmp    $0x3f,%dx
428abb:	0f 85 a9 00 00 00    	jne    0x428b6a
428ac1:	0f b7 4e 02          	movzwl 0x2(%esi),%ecx
428ac5:	83 c6 02             	add    $0x2,%esi
428ac8:	8b d7                	mov    %edi,%edx
428aca:	66 3b ca             	cmp    %dx,%cx
428acd:	73 22                	jae    0x428af1
428acf:	8a 81 60 b9 4a 00    	mov    0x4ab960(%ecx),%al
428ad5:	84 c0                	test   %al,%al
428ad7:	79 52                	jns    0x428b2b
428ad9:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
428ae0:	66 3b ca             	cmp    %dx,%cx
428ae3:	73 0c                	jae    0x428af1
428ae5:	0f b7 c1             	movzwl %cx,%eax
428ae8:	f6 80 60 b9 4a 00 40 	testb  $0x40,0x4ab960(%eax)
428aef:	74 09                	je     0x428afa
428af1:	0f b7 4e 02          	movzwl 0x2(%esi),%ecx
428af5:	83 c6 02             	add    $0x2,%esi
428af8:	eb e6                	jmp    0x428ae0
428afa:	66 85 c9             	test   %cx,%cx
428afd:	74 2c                	je     0x428b2b
428aff:	0f b7 c9             	movzwl %cx,%ecx