42984d:	3b c1                	cmp    %ecx,%eax
42984f:	76 1b                	jbe    0x42986c
429851:	8d 04 0e             	lea    (%esi,%ecx,1),%eax
429854:	6a 01                	push   $0x1
429856:	50                   	push   %eax
429857:	e8 be 2b 00 00       	call   0x42c41a
42985c:	6a 00                	push   $0x0
42985e:	8b f0                	mov    %eax,%esi
429860:	e8 12 2c 00 00       	call   0x42c477
429865:	83 c4 0c             	add    $0xc,%esp
429868:	8b c6                	mov    %esi,%eax
42986a:	eb 02                	jmp    0x42986e
42986c:	33 c0                	xor    %eax,%eax
42986e:	5e                   	pop    %esi
42986f:	5d                   	pop    %ebp
429870:	c3                   	ret
429871:	8b ff                	mov    %edi,%edi
429873:	55                   	push   %ebp
429874:	8b ec                	mov    %esp,%ebp
429876:	5d                   	pop    %ebp
429877:	e9 cf fc ff ff       	jmp    0x42954b
42987c:	a1 e0 5c 45 00       	mov    0x455ce0,%eax
429881:	85 c0                	test   %eax,%eax
429883:	75 22                	jne    0x4298a7
429885:	39 05 dc 5c 45 00    	cmp    %eax,0x455cdc
42988b:	74 18                	je     0x4298a5
42988d:	e8 16 00 00 00       	call   0x4298a8
429892:	85 c0                	test   %eax,%eax
429894:	74 09                	je     0x42989f
429896:	e8 af 01 00 00       	call   0x429a4a
42989b:	85 c0                	test   %eax,%eax
42989d:	75 06                	jne    0x4298a5
42989f:	a1 e0 5c 45 00       	mov    0x455ce0,%eax
4298a4:	c3                   	ret
4298a5:	33 c0                	xor    %eax,%eax
4298a7:	c3                   	ret
4298a8:	83 3d e0 5c 45 00 00 	cmpl   $0x0,0x455ce0
4298af:	74 03                	je     0x4298b4
4298b1:	33 c0                	xor    %eax,%eax
4298b3:	c3                   	ret
4298b4:	56                   	push   %esi
4298b5:	e8 46 a5 00 00       	call   0x433e00
4298ba:	8b f0                	mov    %eax,%esi
4298bc:	85 f6                	test   %esi,%esi
4298be:	75 0c                	jne    0x4298cc
4298c0:	50                   	push   %eax
4298c1:	e8 b1 2b 00 00       	call   0x42c477
4298c6:	59                   	pop    %ecx
4298c7:	83 c8 ff             	or     $0xffffffff,%eax
4298ca:	5e                   	pop    %esi
4298cb:	c3                   	ret
4298cc:	57                   	push   %edi
4298cd:	56                   	push   %esi
4298ce:	e8 2a 00 00 00       	call   0x4298fd
4298d3:	59                   	pop    %ecx
4298d4:	85 c0                	test   %eax,%eax
4298d6:	75 05                	jne    0x4298dd
4298d8:	83 cf ff             	or     $0xffffffff,%edi
4298db:	eb 0c                	jmp    0x4298e9
4298dd:	a3 e4 5c 45 00       	mov    %eax,0x455ce4
4298e2:	33 ff                	xor    %edi,%edi
4298e4:	a3 e0 5c 45 00       	mov    %eax,0x455ce0
4298e9:	6a 00                	push   $0x0
4298eb:	e8 87 2b 00 00       	call   0x42c477
4298f0:	56                   	push   %esi
4298f1:	e8 81 2b 00 00       	call   0x42c477
4298f6:	59                   	pop    %ecx
4298f7:	59                   	pop    %ecx
4298f8:	8b c7                	mov    %edi,%eax
4298fa:	5f                   	pop    %edi
4298fb:	5e                   	pop    %esi
4298fc:	c3                   	ret
4298fd:	8b ff                	mov    %edi,%edi
4298ff:	55                   	push   %ebp
429900:	8b ec                	mov    %esp,%ebp
429902:	83 ec 0c             	sub    $0xc,%esp
429905:	53                   	push   %ebx
429906:	8b 5d 08             	mov    0x8(%ebp),%ebx
429909:	56                   	push   %esi
42990a:	57                   	push   %edi
42990b:	33 ff                	xor    %edi,%edi
42990d:	8b f3                	mov    %ebx,%esi
42990f:	0f b7 03             	movzwl (%ebx),%eax
429912:	8b d7                	mov    %edi,%edx
429914:	89 7d fc             	mov    %edi,-0x4(%ebp)
429917:	66 85 c0             	test   %ax,%ax
42991a:	74 35                	je     0x429951
42991c:	6a 3d                	push   $0x3d
42991e:	8b c8                	mov    %eax,%ecx
429920:	5b                   	pop    %ebx
429921:	66 3b cb             	cmp    %bx,%cx
429924:	74 01                	je     0x429927
429926:	42                   	inc    %edx
429927:	8b ce                	mov    %esi,%ecx
429929:	8d 79 02             	lea    0x2(%ecx),%edi
42992c:	66 8b 01             	mov    (%ecx),%ax
42992f:	83 c1 02             	add    $0x2,%ecx
429932:	66 3b 45 fc          	cmp    -0x4(%ebp),%ax
429936:	75 f4                	jne    0x42992c
429938:	2b cf                	sub    %edi,%ecx
42993a:	d1 f9                	sar    $1,%ecx
42993c:	8d 34 4e             	lea    (%esi,%ecx,2),%esi
42993f:	83 c6 02             	add    $0x2,%esi
429942:	0f b7 06             	movzwl (%esi),%eax
429945:	8b c8                	mov    %eax,%ecx
429947:	66 85 c0             	test   %ax,%ax
42994a:	75 d5                	jne    0x429921
42994c:	8b 5d 08             	mov    0x8(%ebp),%ebx
42994f:	33 ff                	xor    %edi,%edi
429951:	8d 42 01             	lea    0x1(%edx),%eax
429954:	6a 04                	push   $0x4
429956:	50                   	push   %eax
429957:	e8 be 2a 00 00       	call   0x42c41a
42995c:	8b f0                	mov    %eax,%esi
42995e:	59                   	pop    %ecx
42995f:	59                   	pop    %ecx
429960:	85 f6                	test   %esi,%esi
429962:	75 0a                	jne    0x42996e
429964:	57                   	push   %edi
429965:	e8 0d 2b 00 00       	call   0x42c477
42996a:	33 c0                	xor    %eax,%eax
42996c:	eb 7f                	jmp    0x4299ed
42996e:	0f b7 03             	movzwl (%ebx),%eax
429971:	89 75 f8             	mov    %esi,-0x8(%ebp)
429974:	66 85 c0             	test   %ax,%ax
429977:	74 6a                	je     0x4299e3
429979:	8b d0                	mov    %eax,%edx
42997b:	8b cb                	mov    %ebx,%ecx
42997d:	8d 79 02             	lea    0x2(%ecx),%edi
429980:	66 8b 01             	mov    (%ecx),%ax
429983:	83 c1 02             	add    $0x2,%ecx
429986:	66 3b 45 fc          	cmp    -0x4(%ebp),%ax
42998a:	75 f4                	jne    0x429980
42998c:	2b cf                	sub    %edi,%ecx
42998e:	d1 f9                	sar    $1,%ecx
429990:	6a 3d                	push   $0x3d
429992:	8d 41 01             	lea    0x1(%ecx),%eax
429995:	59                   	pop    %ecx
429996:	89 45 f4             	mov    %eax,-0xc(%ebp)
429999:	66 3b d1             	cmp    %cx,%dx
42999c:	74 38                	je     0x4299d6
42999e:	6a 02                	push   $0x2
4299a0:	50                   	push   %eax
4299a1:	e8 74 2a 00 00       	call   0x42c41a
4299a6:	8b f8                	mov    %eax,%edi
4299a8:	59                   	pop    %ecx
4299a9:	59                   	pop    %ecx
4299aa:	85 ff                	test   %edi,%edi
4299ac:	74 45                	je     0x4299f3
4299ae:	53                   	push   %ebx
4299af:	ff 75 f4             	push   -0xc(%ebp)
4299b2:	57                   	push   %edi
4299b3:	e8 be ca ff ff       	call   0x426476
4299b8:	83 c4 0c             	add    $0xc,%esp
4299bb:	85 c0                	test   %eax,%eax
4299bd:	75 4f                	jne    0x429a0e
4299bf:	8b 45 f8             	mov    -0x8(%ebp),%eax
4299c2:	89 38                	mov    %edi,(%eax)
4299c4:	83 c0 04             	add    $0x4,%eax
4299c7:	89 45 f8             	mov    %eax,-0x8(%ebp)
4299ca:	33 c0                	xor    %eax,%eax
4299cc:	50                   	push   %eax
4299cd:	e8 a5 2a 00 00       	call   0x42c477
4299d2:	8b 45 f4             	mov    -0xc(%ebp),%eax
4299d5:	59                   	pop    %ecx
4299d6:	8d 1c 43             	lea    (%ebx,%eax,2),%ebx
4299d9:	0f b7 03             	movzwl (%ebx),%eax
4299dc:	8b d0                	mov    %eax,%edx
4299de:	66 85 c0             	test   %ax,%ax
4299e1:	75 98                	jne    0x42997b
4299e3:	33 c0                	xor    %eax,%eax
4299e5:	50                   	push   %eax
4299e6:	e8 8c 2a 00 00       	call   0x42c477
4299eb:	8b c6                	mov    %esi,%eax
4299ed:	59                   	pop    %ecx
4299ee:	5f                   	pop    %edi
4299ef:	5e                   	pop    %esi
4299f0:	5b                   	pop    %ebx
4299f1:	c9                   	leave
4299f2:	c3                   	ret
4299f3:	56                   	push   %esi
4299f4:	e8 22 00 00 00       	call   0x429a1b
4299f9:	33 db                	xor    %ebx,%ebx
4299fb:	53                   	push   %ebx
4299fc:	e8 76 2a 00 00       	call   0x42c477
429a01:	53                   	push   %ebx
429a02:	e8 70 2a 00 00       	call   0x42c477
429a07:	83 c4 0c             	add    $0xc,%esp
429a0a:	33 c0                	xor    %eax,%eax
429a0c:	eb e0                	jmp    0x4299ee
429a0e:	33 c0                	xor    %eax,%eax
429a10:	50                   	push   %eax
429a11:	50                   	push   %eax
429a12:	50                   	push   %eax
429a13:	50                   	push   %eax
429a14:	50                   	push   %eax
429a15:	e8 82 70 ff ff       	call   0x420a9c
429a1a:	cc                   	int3
429a1b:	8b ff                	mov    %edi,%edi
429a1d:	55                   	push   %ebp
429a1e:	8b ec                	mov    %esp,%ebp
429a20:	56                   	push   %esi
429a21:	8b 75 08             	mov    0x8(%ebp),%esi
429a24:	85 f6                	test   %esi,%esi
429a26:	74 1f                	je     0x429a47
429a28:	8b 06                	mov    (%esi),%eax
429a2a:	57                   	push   %edi
429a2b:	8b fe                	mov    %esi,%edi
429a2d:	eb 0c                	jmp    0x429a3b
429a2f:	50                   	push   %eax
429a30:	e8 42 2a 00 00       	call   0x42c477
429a35:	8d 7f 04             	lea    0x4(%edi),%edi
429a38:	8b 07                	mov    (%edi),%eax
429a3a:	59                   	pop    %ecx
429a3b:	85 c0                	test   %eax,%eax
429a3d:	75 f0                	jne    0x429a2f
429a3f:	56                   	push   %esi
429a40:	e8 32 2a 00 00       	call   0x42c477
429a45:	59                   	pop    %ecx
429a46:	5f                   	pop    %edi
429a47:	5e                   	pop    %esi
429a48:	5d                   	pop    %ebp
429a49:	c3                   	ret
429a4a:	8b ff                	mov    %edi,%edi
429a4c:	53                   	push   %ebx
429a4d:	56                   	push   %esi
429a4e:	57                   	push   %edi
429a4f:	8b 3d dc 5c 45 00    	mov    0x455cdc,%edi
429a55:	85 ff                	test   %edi,%edi
429a57:	74 67                	je     0x429ac0
429a59:	8b 07                	mov    (%edi),%eax
429a5b:	85 c0                	test   %eax,%eax
429a5d:	74 56                	je     0x429ab5
429a5f:	33 db                	xor    %ebx,%ebx
429a61:	53                   	push   %ebx
429a62:	53                   	push   %ebx
429a63:	6a ff                	push   $0xffffffff
429a65:	50                   	push   %eax
429a66:	53                   	push   %ebx
429a67:	53                   	push   %ebx
429a68:	e8 53 95 00 00       	call   0x432fc0
429a6d:	8b d8                	mov    %eax,%ebx
429a6f:	83 c4 18             	add    $0x18,%esp
429a72:	85 db                	test   %ebx,%ebx
429a74:	74 4a                	je     0x429ac0
429a76:	6a 02                	push   $0x2
429a78:	53                   	push   %ebx
429a79:	e8 9c 29 00 00       	call   0x42c41a
429a7e:	8b f0                	mov    %eax,%esi
429a80:	59                   	pop    %ecx
429a81:	59                   	pop    %ecx
429a82:	85 f6                	test   %esi,%esi
429a84:	74 41                	je     0x429ac7
429a86:	53                   	push   %ebx
429a87:	56                   	push   %esi
429a88:	6a ff                	push   $0xffffffff
429a8a:	ff 37                	push   (%edi)
429a8c:	33 db                	xor    %ebx,%ebx
429a8e:	53                   	push   %ebx
429a8f:	53                   	push   %ebx
429a90:	e8 2b 95 00 00       	call   0x432fc0
429a95:	83 c4 18             	add    $0x18,%esp
429a98:	85 c0                	test   %eax,%eax
429a9a:	74 1d                	je     0x429ab9
429a9c:	53                   	push   %ebx
429a9d:	56                   	push   %esi
429a9e:	e8 66 a7 00 00       	call   0x434209
429aa3:	53                   	push   %ebx
429aa4:	e8 ce 29 00 00       	call   0x42c477
429aa9:	83 c7 04             	add    $0x4,%edi
429aac:	83 c4 0c             	add    $0xc,%esp
429aaf:	8b 07                	mov    (%edi),%eax
429ab1:	85 c0                	test   %eax,%eax
429ab3:	75 ac                	jne    0x429a61
429ab5:	33 c0                	xor    %eax,%eax
429ab7:	eb 0a                	jmp    0x429ac3
429ab9:	56                   	push   %esi
429aba:	e8 b8 29 00 00       	call   0x42c477
429abf:	59                   	pop    %ecx
429ac0:	83 c8 ff             	or     $0xffffffff,%eax
429ac3:	5f                   	pop    %edi
429ac4:	5e                   	pop    %esi
429ac5:	5b                   	pop    %ebx
429ac6:	c3                   	ret
429ac7:	6a 00                	push   $0x0
429ac9:	eb ef                	jmp    0x429aba
429acb:	8b ff                	mov    %edi,%edi
429acd:	55                   	push   %ebp
429ace:	8b ec                	mov    %esp,%ebp
429ad0:	8b 45 08             	mov    0x8(%ebp),%eax
429ad3:	8b 00                	mov    (%eax),%eax
429ad5:	3b 05 e8 5c 45 00    	cmp    0x455ce8,%eax
429adb:	74 07                	je     0x429ae4
429add:	50                   	push   %eax
429ade:	e8 38 ff ff ff       	call   0x429a1b
429ae3:	59                   	pop    %ecx
429ae4:	5d                   	pop    %ebp
429ae5:	c3                   	ret
429ae6:	8b ff                	mov    %edi,%edi
429ae8:	55                   	push   %ebp
429ae9:	8b ec                	mov    %esp,%ebp
429aeb:	8b 45 08             	mov    0x8(%ebp),%eax
429aee:	8b 00                	mov    (%eax),%eax
429af0:	3b 05 e4 5c 45 00    	cmp    0x455ce4,%eax
429af6:	74 07                	je     0x429aff
429af8:	50                   	push   %eax
429af9:	e8 1d ff ff ff       	call   0x429a1b
429afe:	59                   	pop    %ecx
429aff:	5d                   	pop    %ebp
429b00:	c3                   	ret
429b01:	e9 76 fd ff ff       	jmp    0x42987c
429b06:	6a 00                	push   $0x0
429b08:	b8 87 e8 43 00       	mov    $0x43e887,%eax
429b0d:	e8 23 27 ff ff       	call   0x41c235
429b12:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
429b16:	68 dc 5c 45 00       	push   $0x455cdc
429b1b:	e8 ab ff ff ff       	call   0x429acb
429b20:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
429b27:	c7 04 24 e0 5c 45 00 	movl   $0x455ce0,(%esp)
429b2e:	e8 b3 ff ff ff       	call   0x429ae6
429b33:	ff 35 e8 5c 45 00    	push   0x455ce8
429b39:	e8 dd fe ff ff       	call   0x429a1b
429b3e:	ff 35 e4 5c 45 00    	push   0x455ce4
429b44:	e8 d2 fe ff ff       	call   0x429a1b
429b49:	83 c4 0c             	add    $0xc,%esp
429b4c:	e8 d0 26 ff ff       	call   0x41c221
429b51:	c3                   	ret
429b52:	cc                   	int3
429b53:	cc                   	int3
429b54:	cc                   	int3
429b55:	cc                   	int3
429b56:	cc                   	int3
429b57:	e9 4c fd ff ff       	jmp    0x4298a8
429b5c:	a1 34 61 45 00       	mov    0x456134,%eax
429b61:	85 c0                	test   %eax,%eax
429b63:	75 05                	jne    0x429b6a
429b65:	b8 ec 5c 45 00       	mov    $0x455cec,%eax
429b6a:	56                   	push   %esi
429b6b:	6a 20                	push   $0x20
429b6d:	32 d2                	xor    %dl,%dl
429b6f:	5e                   	pop    %esi
429b70:	0f b7 08             	movzwl (%eax),%ecx
429b73:	66 3b ce             	cmp    %si,%cx
429b76:	77 09                	ja     0x429b81
429b78:	66 85 c9             	test   %cx,%cx
429b7b:	74 27                	je     0x429ba4
429b7d:	84 d2                	test   %dl,%dl
429b7f:	74 0f                	je     0x429b90
429b81:	83 f9 22             	cmp    $0x22,%ecx
429b84:	75 05                	jne    0x429b8b